- Sponsor
-
Notifications
You must be signed in to change notification settings - Fork 565
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to pynac-0.7.22 #24838
Comments
Branch: u/rws/upgrade_to_pynac_0_7_17 |
Commit: |
Author: Ralf Stephan |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:5
Just a question: is this supposed to fix #24522 too? |
This comment has been minimized.
This comment has been minimized.
comment:6
Yes, that PR is merged. I'll probably add a hotfix for #24883 here as patch, too. |
comment:8
The issue is no longer there. Please review. |
comment:9
This used to return a purely imaginary number, now there is a small real part:
|
comment:10
This is an artifact of conversion to CC:
We use arb with precision+15 and convert back to parent, all to make up for missing or limited (in the calculus sense, not the algebraic, note recent discussion) member functions of parent (RR in this case). Before this pynac version we had specific logic to zero the real part but this was error-prone. IMHO CC conversion of complex balls should be fixed. |
comment:11
See also flintlib/arb#198 |
comment:12
You may also want to know why I'm using arb and not mpfr:
|
comment:13
What do you prefer, patching arb or the arb interface? |
comment:14
See flintlib/arb#210 |
comment:15
Replying to @rwst:
Despite what you think, you are not using mpfr, but PARI: def arccosh(self):
"""
Return the hyperbolic arccosine of ``self``.
EXAMPLES::
sage: (1+CC(I)).arccosh()
1.06127506190504 + 0.904556894302381*I
"""
return self._parent(self.__pari__().acosh()) If you want to compare with something, it should be mpc (in Sage: |
comment:16
Interestingly,
|
comment:17
Replying to @rwst:
This is now merged. Do we want that patch in this ticket? If not, anything else? |
comment:63
Thanks for the review! |
comment:64
On 32-bit:
|
comment:65
Replying to @vbraun:
Pynac is not involved in the numerics ( |
comment:67
Replying to @rwst:
We will never know. I failed to install 32bit versions of CentOS and ArchLinux in a VM, and I will not try again. There will be a ticket for this doctest failure, and the test marked "known bug (see ...". |
comment:70
This isn't really about this specific ticket (thanks for putting in the work for the upgrade), but is there a reason everybody seems to make seperate "pkg version / chksum" and "doctest fixes" patches? Shouldn't each commit be one unit of changes for which the doctests still pass? |
comment:71
Replying to @timokau:
The only reason I see for this is to make statistics based on number of commits meaningful. By splitting commits into parts (if there is such a natural split, maybe here it's less needed) I make the job of reviewing easier. |
comment:72
Replying to @rwst:
A much more practical reason is the use of |
Changed branch from u/rws/24838 to |
comment:74
Replying to @sagetrac-git:
For the future it would greatly simplify packaging if you would add some documentation when adding a patch. A link to the github issue/pr and maybe a sentence about what it does would be sufficient. (The commit is actually 7afd3bfaf) |
Changed commit from |
comment:75
Replying to @timokau:
+1 Patches without any documentation or links should be rejected. |
In the new version:
fast and working versons of quo_rem and rational decomposition (Symbolic quo //, rem %, and quo_rem() #25644, Fast symbolic rational decomposition #25645)
fix power inconsistency
internal fix of another power inconsistency (inconsistent powers of symbolic sums #25639)
(x<sup>a)</sup>b --> x^(ab)
IF x real, a odd integer, ab integeradd
ex::treesize()
as complexity metric (Fast symbolic complexity metric #25643)information for packagers
implement commutative matching; fix GiNaC's matching deficiencies (Doctests: Symbolic expression matching bug #25168)
substitute patternless if no wildcards present
remove some compiler warnings
update AX_CXX_COMPILE_STDCXX.m4
fix
exp(c*f(x))
simplificationfix
cases(...).subs(...)
function::info
formin/max_symbolic
(Symbolic min/max #21945)performance and readability improvements
correct
sinh/cosh/tanh
return type (Systematic doctest for function return type #24299)atan2
fixespotential memleaks fixed
fixes in Giac interface
subs
can now substitute numeric terms (Doctest fix: f.subs(I==...) does not work #23964)fix memleak in in-place PyObject numerics (leaking in the symbolic ring #24745)
fix endless computation (Endless symbolic computation #24883)
Python interface / Py3 fixes and improvements (thx Erik Bray, py3: fix bugs in pynac with handling Python 3 ints #24561, py3: unhandled exception in pynac #24752, Pynac should check for errors when calling PyObject_RichCompareBool() #24522)
fix internal
asin
/acos
of complex ballsdraw factors out of
add^rational
(Powers of symbolic sums inconsistence #24768, Doctest: Certain products cause pynac to deadloop #25251, Doctest: Complex arithmetic/exponentiation hang (or very slow) #25252)exp(f(x))
,exp(c*f(x))
, f inv. hyperbolic simplifications (Doctest exp(c*f(x)) simplification, f inverse hyperbolic #24841)always extend trig/hyperbolic functions to complex domain (Numerical evaluation should return a complex number if applicable #24428)
extensive code readability improvements
https://github.com/pynac/pynac/releases/download/pynac-0.7.22/pynac-0.7.22.tar.bz2
Depends on #24927
CC: @kiwifb @timokau
Component: symbolics
Author: Ralf Stephan
Branch:
e324b64
Reviewer: Frédéric Chapoton
Issue created by migration from https://trac.sagemath.org/ticket/24838
The text was updated successfully, but these errors were encountered: