Skip to content
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

Update to pynac-0.5.2 #19312

Closed
rwst opened this issue Sep 29, 2015 · 88 comments
Closed

Update to pynac-0.5.2 #19312

rwst opened this issue Sep 29, 2015 · 88 comments

Comments

@rwst
Copy link

rwst commented Sep 29, 2015

The next big Pynac update has:

  • libgmp bigints and bigrats instead of Integer and Rational Python objects
  • assumptions/domains can influence Pynac computation
  • sync elementary assumptions on symbols/functions with Pynac (Improve assumption documentation and doctest recent improvements #19035)
  • C++11 results in better code readability
  • better decisions through more info flags and logic
  • return not implemented and undecidable for some decisions (for math. logic changes see the rewrite Expression.__nonzero__() #19040 description)
  • add inexact flag for possible expansions / FP simplifications
  • abs() expansion
  • function::info()
  • from GiNaC: Fix pow(+(...),2).expand()
  • remove some unused files and other cleanup; add missing autoconf macro;
  • some older memleaks closed

https://github.com/pynac/pynac/releases/download/pynac-0.5.2/pynac-0.5.2.tar.bz2

Depends on #19606

Component: packages: standard

Author: Ralf Stephan

Branch/Commit: bdda35e

Reviewer: Jeroen Demeyer, Travis Scrimshaw

Issue created by migration from https://trac.sagemath.org/ticket/19312

@rwst rwst added this to the sage-6.9 milestone Sep 29, 2015
@rwst
Copy link
Author

rwst commented Sep 29, 2015

Dependencies: #19298

@rwst
Copy link
Author

rwst commented Sep 29, 2015

comment:2

Mind you, it's not here yet. Git master has half a dozen small but difficult to trace bugs.

@rwst

This comment has been minimized.

@rwst
Copy link
Author

rwst commented Oct 16, 2015

Branch: u/rws/19312-1

@rwst
Copy link
Author

rwst commented Oct 16, 2015

comment:4

This works and can be reviewed independently on machines with gcc>=4.6, but please wait with setting positive for the build system changes (i.e., #19298).

There are two failing doctests: one only happens on doctesting and needs the associated environment; the other is the "pi in RIF" doctest which presented a philosophical problem to Sage developers (see #17984) and thus cannot be resolved in my lifetime.


New commits:

281541dpackage version and checksum
e56e779C++11 compile switches
474fff619312: pynac/Sage interface adaptations
5b5121519312: link assume/forget to pynac
626fb4719312: core of math logic rewrite of Expression.__nonzero__(), dedicated is_zero
9b8a09e19312: code changes in consequence of ex.__nonzero__() math logic changes
361e3d819312: doc/doctest changes in consequence of math. logic changes
8421ab919312: other doc/doctest changes because of pynac changes

@rwst

This comment has been minimized.

@rwst
Copy link
Author

rwst commented Oct 16, 2015

Commit: 8421ab9

@rwst
Copy link
Author

rwst commented Oct 16, 2015

Author: Ralf Stephan

@rwst rwst modified the milestones: sage-6.9, sage-6.10 Oct 16, 2015
@rwst

This comment has been minimized.

@rwst

This comment has been minimized.

@jdemeyer
Copy link

comment:8
sage -t src/sage/plot/arc.py
**********************************************************************
File "src/sage/plot/arc.py", line 66, in sage.plot.arc.Arc.__init__
Failed example:
    bool(A[0].angle == pi/4)
Expected:
    True
Got:
    False
**********************************************************************
File "src/sage/plot/arc.py", line 70, in sage.plot.arc.Arc.__init__
Failed example:
    bool(A[0].s2 == pi)
Expected:
    True
Got:
    False
**********************************************************************
1 item had failures:
   2 of  12 in sage.plot.arc.Arc.__init__
    [47 tests, 2 failures, 2.28 s]
sage -t src/sage/structure/parent.pyx
**********************************************************************
File "src/sage/structure/parent.pyx", line 1227, in sage.structure.parent.Parent.__contains__
Failed example:
    pi in RIF # there is no element of RIF equal to pi
Expected:
    False
Got:
    True
**********************************************************************

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 17, 2015

Changed commit from 8421ab9 to 4784254

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 17, 2015

Branch pushed to git repo; I updated commit sha1. New commits:

478425419312: fix omission, doctest

@rwst
Copy link
Author

rwst commented Oct 17, 2015

comment:11

I agree to try first a merge of #19040 to reduce the size of this patch.

@jdemeyer
Copy link

comment:12

Replying to @rwst:

I agree to try first a merge of #19040 to reduce the size of this patch.

The other way around seems more logical to me: first merge this, then #19040.

@rwst
Copy link
Author

rwst commented Oct 19, 2015

Changed branch from u/rws/19312-1 to u/rws/19312-2

@rwst
Copy link
Author

rwst commented Oct 19, 2015

comment:14

I excised the math logic changes. Please review.


New commits:

3a4844619312: package version and checksum
cc6a6c919312: C++11 compile switches
caa0aeb19312: pynac/Sage interface adaptations
a97307119312: link assume/forget to pynac
6cf8edb19312: changes in Expression.__nonzero__ due to Pynac interface change
d340d9d19312: doctest adaptations
fd68fd519312: fix code for failing doctest
eeedddc19312: kludge to allow unchanged `__nonzero__` with pynac-0.5

@rwst
Copy link
Author

rwst commented Oct 19, 2015

Changed commit from 4784254 to eeedddc

@rwst

This comment has been minimized.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Nov 28, 2015

Changed commit from af71087 to 6c27be1

@tscrim
Copy link
Collaborator

tscrim commented Nov 29, 2015

comment:63

There still is

e^{\sqrt{x}}^{x}

in functions/log.py.

Also, for the test in hyperbolic_isometry.py, if we add

sage: assume(a*d != b*c)

then would that avoid issues with #19040?

Other than that, I'm okay with the current state up to Jeroen's comments that haven't been addressed.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Nov 29, 2015

Branch pushed to git repo; I updated commit sha1. New commits:

772275619312: fix doctest

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Nov 29, 2015

Changed commit from 6c27be1 to 7722756

@rwst
Copy link
Author

rwst commented Nov 29, 2015

comment:65

Replying to @tscrim:

Also, for the test in hyperbolic_isometry.py, if we add

sage: assume(a*d != b*c)

then would that avoid issues with #19040?

I'm unable to answer this at the moment but I appreciate the idea. Thanks for your review.

@jdemeyer
Copy link

comment:66

Regarding #19606: Is pynac now linked with gmp? If so, you need to revert #19606 and you need to change the dependencies of the package.

I have no other comments (which doesn't mean that I understand every change you made, but at least I don't see any obvious problems).

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Nov 30, 2015

Branch pushed to git repo; I updated commit sha1. New commits:

f71e3d819312: add new pynac dependencies

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Nov 30, 2015

Changed commit from 7722756 to f71e3d8

@rwst
Copy link
Author

rwst commented Nov 30, 2015

comment:69

Indeed, thanks.

@tscrim
Copy link
Collaborator

tscrim commented Dec 1, 2015

comment:70

I think then we are good to go.

@vbraun
Copy link
Member

vbraun commented Dec 2, 2015

comment:71

32-bit fails with

sage -t --long src/sage/symbolic/expression.pyx
**********************************************************************
File "src/sage/symbolic/expression.pyx", line 1455, in sage.symbolic.expression.Expression.__hash__
Failed example:
    hash(SR(19.23))
Expected:
    2836855582
Got:
    -1458111714
**********************************************************************
File "src/sage/symbolic/expression.pyx", line 1457, in sage.symbolic.expression.Expression.__hash__
Failed example:
    hash(19.23)
Expected:
    2836855582
Got:
    -1458111714
**********************************************************************
1 item had failures:
   2 of  26 in sage.symbolic.expression.Expression.__hash__

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2015

Changed commit from f71e3d8 to bdda35e

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 3, 2015

Branch pushed to git repo; I updated commit sha1. New commits:

bdda35e19312: differentiate doctest result wrt 32/64 bit

@vbraun
Copy link
Member

vbraun commented Dec 3, 2015

Changed branch from u/rws/19312-2 to bdda35e

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants