Opened 2 years ago

Closed 2 years ago

#23565 closed enhancement (fixed)

update arb to version 2.11.1

Reported by: dimpase Owned by:
Priority: major Milestone: sage-8.1
Component: packages: standard Keywords:
Cc: fbissey, fredrik.johansson, rws Merged in:
Authors: Dima Pasechnik, Ralf Stephan Reviewers: Dima Pasechnik
Report Upstream: N/A Work issues:
Branch: c51f1a5 (Commits) Commit: c51f1a50ac40cc38efba2d57cdaf9ae1b5723558
Dependencies: #23179, #18386 Stopgaps:

Description

we are few versions behind already. ALso, it fixes the building problem on FreeBSD.

The tarball is here: https://github.com/fredrik-johansson/arb/archive/2.11.1.tar.gz

Change History (29)

comment:1 Changed 2 years ago by git

  • Commit changed from 070176fe563b0df608092b77c6b9fd7d7e49acfb to ab828b9a92667b8104e5444f38b1ab0c4a74e7ae

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

ab828b9arb doctest fixes; few more, less obvious, might be needed

comment:2 Changed 2 years ago by dimpase

  • Authors set to Dima Pasechnik
  • Status changed from new to needs_info

is arb used anywhere in files that don't have arb in their names?

comment:3 Changed 2 years ago by fbissey

Indirectly, almost certainly. I'll do some runs to check.

comment:4 Changed 2 years ago by fbissey

sage-on-gentoo after upgrading (I had an ebuild ready for some time)

!!! existing preserved libs:
>>> package: sci-mathematics/arb-2.11.1-r1
 *  - /usr/lib64/libarb.so.1
 *  - /usr/lib64/libarb.so.1.1.1
 *      used by /usr/lib64/python2.7/site-packages/sage/libs/arb/arith.so (sci-mathematics/sage-9999)
 *      used by /usr/lib64/python2.7/site-packages/sage/matrix/matrix_complex_ball_dense.so (sci-mathematics/sage-9999)
 *      used by /usr/lib64/python2.7/site-packages/sage/rings/complex_arb.so (sci-mathematics/sage-9999)
 *      used by 7 other files

So those are a bit different from your list already. I am guessing you checked stuff in libs/arb/ and I am not quite sure what the other 7 files are apart from probably from the one you already patch not on that list. A full doctest run is needed to make sure. Is there any optional packages depending on arb?

comment:5 Changed 2 years ago by jhpalmieri

On OS X, arb passes its self-tests and I got a few doctest failures:

sage -t --long --warn-long 66.3 src/sage/functions/other.py
**********************************************************************
File "src/sage/functions/other.py", line 1502, in sage.functions.other.Function_factorial.__init__
Failed example:
    factorial(RBF(4.2))
Expected:
    [32.5780960503313 +/- 6.71e-14]
Got:
    [32.5780960503313 +/- 6.72e-14]
**********************************************************************
sage -t --long --warn-long 66.3 src/sage/functions/log.py
**********************************************************************
File "src/sage/functions/log.py", line 444, in sage.functions.log.Function_polylog.__init__
Failed example:
    polylog(2, 1.0)
Expected:
    NaN
Got:
    1.64493406684823
**********************************************************************
File "src/sage/functions/log.py", line 446, in sage.functions.log.Function_polylog.__init__
Failed example:
    polylog(2.0, 1.0)
Expected:
    NaN
Got:
    1.64493406684823
sage -t --long --warn-long 66.3 src/sage/libs/pynac/pynac.pyx
**********************************************************************
File "src/sage/libs/pynac/pynac.pyx", line 1817, in sage.libs.pynac.pynac.py_atan2
Failed example:
    atan2(CBF(I), CBF(I+1))
Expected:
    [0.55357435889705 +/- 5.75e-15] + [0.40235947810852 +/- 6.01e-15]*I
Got:
    [0.55357435889705 +/- 5.58e-15] + [0.402359478108525 +/- 7.11e-16]*I

I don't know anything about polylogs, but the others look like numerical noise.

comment:6 Changed 2 years ago by jhpalmieri

See also #18386 for the polylog doctests.

comment:7 Changed 2 years ago by fbissey

I was just preparing exactly the same report from my linux box.

comment:8 follow-up: Changed 2 years ago by jhpalmieri

Or maybe #21034? The file says "Check if :trac:18386 is fixed::" followed by these doctests, but I don't know enough to say whether the new behavior fixes the doctests or not. #18386 has not yet been merged.

comment:9 in reply to: ↑ 8 Changed 2 years ago by fbissey

Replying to jhpalmieri:

Or maybe #21034? The file says "Check if :trac:18386 is fixed::" followed by these doctests, but I don't know enough to say whether the new behavior fixes the doctests or not. #18386 has not yet been merged.

Yes. Not merged, but the doctests we are worrying about haven't been touched. You can just see them at the top of the commit. The ticket is relevant though. Maxima agrees with the new value (pi^2 / 6). And actually other test in the same file give that answer:

class Function_polylog(GinacFunction):
    def __init__(self):
        r"""
        The polylog function
        `\text{Li}_s(z) = \sum_{k=1}^{\infty} z^k / k^s`.

        This definition is valid for arbitrary complex order `s` and for
        all complex arguments `z` with `|z| < 1`; it can be extended to
        `|z| \ge 1` by the process of analytic continuation. So the
        function may have a discontinuity at `z=1` which can cause a
        `NaN` value returned for floating point arguments.

        EXAMPLES::

            sage: polylog(2.7, 0)
            0
            sage: polylog(2, 1)
            1/6*pi^2

And where we are now is:

        Check if :trac:`18386` is fixed::

            sage: polylog(2.0, 1)
            1.64493406684823
            sage: polylog(2, 1.0)
            NaN
            sage: polylog(2.0, 1.0)
            NaN

I am tempted to say this upgrade is now fixing it. Although why upgrading arb fix a pynac behavior is a bit of mystery to me since pynac doesn't link to arb.

comment:10 Changed 2 years ago by fbissey

There is one more thing about this ticket and all package upgrade tickets (actually I am holding off a number of upgrades I want to go through this cycle) #23179 has now been merged and closed. It will be in the next beta but this ticket and any package upgrade ticket really should be done of top of it to save yourselves from some trouble later on.

comment:11 Changed 2 years ago by git

  • Commit changed from ab828b9a92667b8104e5444f38b1ab0c4a74e7ae to 4019be3548ec7bd02e8d946af68b854751f26853

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

8d19362Pass write_script_wrapper the absolute path to the script it's writing
be6559dUse a variable for the path to the temporary file for clarity's sake
954630fRemove this check from sage-spkg since spkg-installs will no longer be written in Python
1b96a66Make it a mere warning on Cygwin if any of the scripts in build/pkgs are executable, but a hard error on other platforms
c447855Use a heredoc instead of a quoted variable, for clarity's sake.
f53ee4dUpdated the developer docs to reflect the changes in #23179
6e322b8Set some variables in the wrapper script itself.
caf64bfFix typos in this comment
9dfaeebFix obvious typo
4019be3Merge branch 'u/embray/build/script-wrappers' of trac.sagemath.org:sage into arbupdate

comment:12 Changed 2 years ago by dimpase

  • Dependencies set to #23179
  • Status changed from needs_info to needs_work

comment:13 Changed 2 years ago by git

  • Commit changed from 4019be3548ec7bd02e8d946af68b854751f26853 to 20c5508517c97d7755905b75705328bec4468307

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

20c5508one more arb-related doctest fix

comment:14 Changed 2 years ago by git

  • Commit changed from 20c5508517c97d7755905b75705328bec4468307 to 07aad1a5e740a693a02e607ac727fd9745fbba50

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

51aeae318386: doctest dilog/polylog fixes
074034aMerge branch 'develop' into t/18386/18386-2
f854f36Merge branch 'u/rws/18386-2' of trac.sagemath.org:sage into pynacupd
58cc73bmerged more doctests from #18386, updated output
07aad1aarb-related numerical noise in pynac

comment:15 Changed 2 years ago by dimpase

  • Authors changed from Dima Pasechnik to Dima Pasechnik, Ralf Stephan
  • Cc rws added
  • Status changed from needs_work to needs_review

OK, all done, also added tests from #18386, and added Ralf to the authors here.

comment:16 follow-up: Changed 2 years ago by fbissey

Is this making #18386 a duplicate? Otherwise I think we have everything for a positive review.

comment:17 in reply to: ↑ 16 Changed 2 years ago by dimpase

Replying to fbissey:

Is this making #18386 a duplicate? Otherwise I think we have everything for a positive review.

Yes it does. Note that I have merged the branch of #18386 here (see ​f854f36) and adjusted wrong (for arb 2.11.1) test outputs in 51aeae3.

As arb update alleviates some of the issues on #18386 I thought it's more logical this way.

comment:18 follow-up: Changed 2 years ago by rws

The usual process is to make #18386 a dependency (not vice versa). Then it can be merged independently EDIT: by the maintainer.

Last edited 2 years ago by rws (previous) (diff)

comment:19 Changed 2 years ago by rws

  • Dependencies changed from #23179 to #23179, #18386

comment:20 in reply to: ↑ 18 Changed 2 years ago by dimpase

Replying to rws:

The usual process is to make #18386 a dependency (not vice versa). Then it can be merged independently EDIT: by the maintainer.

Except that in this case it would be more work for everyone (including my poor laptop that would have had to run more rounds of make ptestlong :-)) involved.

comment:21 Changed 2 years ago by fbissey

I am personally not fussy about making one of the ticket duplicate or meta-ticket. But someone marked the other ticket with positive review without making it a duplicate or anything like that. It implies then that this ticket should depend on it.

I think enough people did testing around here to put a reworked branch to positive review without putting your laptop through the stress again :)

comment:22 Changed 2 years ago by fbissey

  • Branch changed from u/dimpase/arbupdate to u/fbissey/arb-2.11.1
  • Commit changed from 07aad1a5e740a693a02e607ac727fd9745fbba50 to 6861b5b016dee39e2ef55c701ee280d1b7db5b45
  • Status changed from needs_review to positive_review

OK, all rebased and merged on top of #18386. It should all go in now.


New commits:

59d4b29Merge branch 'develop' into 18386-2
6861b5bMerge branch '18386-2' into arb-2.11.1

comment:23 Changed 2 years ago by dimpase

  • Branch changed from u/fbissey/arb-2.11.1 to u/dimpase/arbupdate
  • Commit changed from 6861b5b016dee39e2ef55c701ee280d1b7db5b45 to 22a6096e2930d987c2302afd559b5308ca233239
  • Reviewers set to Dima Pasechnik

rebased over #23776.


New commits:

22a6096Merge #23776 into branch 'u/fbissey/arb-2.11.1'

comment:24 follow-up: Changed 2 years ago by tscrim

Just FYI - #18386 is marked as a duplicate/invalid/wontfix.

comment:25 in reply to: ↑ 24 Changed 2 years ago by dimpase

Replying to tscrim:

Just FYI - #18386 is marked as a duplicate/invalid/wontfix.

Oops. We did have some slight disagreement on how to properly proceed, I don't recall details any more. It seems Ralf wanted it merged, but forgot to unmark it as duplicate. As everything merges fine, let's merge #18386.

comment:26 Changed 2 years ago by vbraun

  • Status changed from positive_review to needs_work
sage -t --long --warn-long 69.8 src/sage/libs/pynac/pynac.pyx
**********************************************************************
File "src/sage/libs/pynac/pynac.pyx", line 1817, in sage.libs.pynac.pynac.py_atan2
Failed example:
    atan2(CBF(I), CBF(I+1))
Expected:
    [0.55357435889705 +/- 5.75e-15] + [0.40235947810852 +/- 6.01e-15]*I
Got:
    [0.55357435889705 +/- 5.58e-15] + [0.402359478108525 +/- 7.11e-16]*I
**********************************************************************
1 item had failures:
   1 of  14 in sage.libs.pynac.pynac.py_atan2
    [334 tests, 1 failure, 2.85 s]

comment:27 Changed 2 years ago by git

  • Commit changed from 22a6096e2930d987c2302afd559b5308ca233239 to c51f1a50ac40cc38efba2d57cdaf9ae1b5723558

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

c51f1a5one more doctest fix

comment:28 Changed 2 years ago by dimpase

  • Status changed from needs_work to positive_review

oops, sorry, fixed.

comment:29 Changed 2 years ago by vbraun

  • Branch changed from u/dimpase/arbupdate to c51f1a50ac40cc38efba2d57cdaf9ae1b5723558
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.