#6616: [with patch; needs review] refactor heegner points code out of
ell_rational_field and support computing higher heegner points
-----------------------------+----------------------------------------------
Reporter: robertwb | Owner: was
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-4.3.1
Component: number theory | Keywords:
Work_issues: | Author:
Upstream: N/A | Reviewer: John Cremona
Merged: |
-----------------------------+----------------------------------------------
Changes (by cremona):
* status: needs_review => needs_work
* reviewer: => John Cremona
Comment:
Review: I am immensely impressed by the huge amount of work which has
gone into this ten thousand-line patch! It goes far beyond the
refactoring of the title.
I read through the patch itself, and liked what I saw. (There are a few
minor typos in the docstrings, which I did not note as I went through --
sorry). Some docstrings which did not format properly: numerical_approx,
rational_kolyvagin_divisor, KolyvaginPoint.
There are a lot if interesting mathematical and algorithmic issues which
are highlighted very well in comments and TODO blocks, which is good.
Testing all files in the elliptic_curves directory I found these problems.
{{{
sage -t "devel/sage-
tests/sage/schemes/elliptic_curves/lseries_ell.py"
sage -t "devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py"
sage -t "devel/sage-
tests/sage/schemes/elliptic_curves/period_lattice.py"
sage -t "devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py"
}}}
In heegner.py it's mainly a mixture of numerical noise and hash
differences (this is on a 32-bit machine), but not all. Details:
{{{
sage -t "devel/sage-tests/sage/schemes/elliptic_curves/heegner.py"
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 2582:
sage: hash(y)
Expected:
-5236815264926108755
Got:
733770669
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 2886:
sage: hash(EllipticCurve('389a').heegner_point(-7,5))
Expected:
???
Got:
733770669
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3010:
sage: P.numerical_approx()
Expected:
(-3.41893279409096e-16 - 2.00036208715867e-16*I : 3.42282625853674e-16
+ 2.00035300823576e-16*I : 1.00000000000000)
Got:
(-3.41901661684534e-16 - 2.00073402416951e-16*I : 3.42011575310552e-16
+ 2.00035300823576e-16*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3032:
sage: P = E.heegner_point(-19); y = P._trace_numerical_conductor_1();
y
Expected:
(-9.52657106432722e-17 - 1.11102282864639e-16*I : -1.00000000000000 +
2.21773554381910e-16*I : 1.00000000000000)
Got:
(-9.53960112385537e-17 - 1.11192361105451e-16*I : -1.00000000000000 +
2.21827764490534e-16*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3039:
sage: P = E.heegner_point(-68); P._trace_numerical_conductor_1()
Expected:
(9.20680004622768e28 - 1.55670186905154e28*I : -2.76369626392776e43 +
7.09357788995373e42*I : 1.00000000000000)
Got:
(9.22516515637394e28 - 1.48330779290131e28*I : -2.77483419563894e43 +
6.76511130239484e42*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3106:
sage: P.numerical_approx()
Expected:
(-3.41893279409096e-16 - 2.00036208715867e-16*I : 3.42282625853674e-16
+ 2.00035300823576e-16*I : 1.00000000000000)
Got:
(-3.41901661684534e-16 - 2.00073402416951e-16*I : 3.42011575310552e-16
+ 2.00035300823576e-16*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3110:
sage: P.numerical_approx(100)[0]
Expected:
8.4419827889841225189186778139e-31 +
6.0876476174448148263632780203e-31*I
Got:
8.4419827889841225189186778139e-31 +
6.0876476185623182015101748774e-31*I
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3114:
sage: P.numerical_approx()
Expected:
(-6.68094502209485e-16 + 1.41421356237310*I : 1.00000000000000 -
1.41421356237309*I : 1.00000000000000)
Got:
(-6.68276051475152e-16 + 1.41421356237310*I : 1.00000000000000 -
1.41421356237309*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3123:
sage: P.numerical_approx()
Expected:
(4.08580183114324e28 + 1.50348132882460e28*I : -7.84283601876376e42 -
4.58366020722762e42*I : 1.00000000000000)
Got:
(0 : 1.00000000000000 : 0)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3558:
sage: P._trace_numerical_conductor_1()
Expected:
(1.00000000000000 + 4.49510220712490e-16*I : 1.77646525961750e-16 -
4.49510220712490e-16*I : 1.00000000000000)
Got:
(1.00000000000000 + 4.49618640929739e-16*I : 1.77809156287623e-16 -
4.49672851038363e-16*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3939:
sage: P.numerical_approx()
Expected:
(-3.41893279409096e-16 - 2.00036208715867e-16*I : 3.42282625853674e-16
+ 2.00035300823576e-16*I : 1.00000000000000)
Got:
(-3.41901661684534e-16 - 2.00073402416951e-16*I : 3.42011575310552e-16
+ 2.00035300823576e-16*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3943:
sage: P.numerical_approx(100)[0]
Expected:
8.4419827889841225189186778139e-31 +
6.0876476174448148263632780203e-31*I
Got:
8.4419827889841225189186778139e-31 +
6.0876476185623182015101748774e-31*I
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 3989:
sage: P.point_exact()
Expected:
Traceback (most recent call last):
...
RuntimeError: insufficient precision to find exact point
Got:
(0 : 1 : 0)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 4082:
sage: P.numerical_approx()
Expected:
(6.00000000000000 + 8.04701070793563e-16*I : -15.0000000000000 -
2.96897922913431e-15*I : 1.00000000000000)
Got:
(6.00000000000000 + 8.05181817160869e-16*I : -15.0000000000000 -
2.96897922913431e-15*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 605:
sage: hash(G)
Expected:
-6198252699510613726
Got:
1905285410
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 607:
sage: hash((G.field(), G.base_field()))
Expected:
-6198252699510613726
Got:
1905285410
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 6189:
sage: P.numerical_approx()
Expected:
(6.00000000000000 + 8.04701070793563e-16*I : -15.0000000000000 -
2.96897922913431e-15*I : 1.00000000000000)
Got:
(6.00000000000000 + 8.05181817160869e-16*I : -15.0000000000000 -
2.96897922913431e-15*I : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 1253:
sage: conj = G.complex_conjugation(); hash(conj)
Expected:
1347197483068745902
Got:
480045230
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 1447:
sage: hash(s)
Expected:
??
Got:
-1994029223
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 274:
sage: hash(K5)
Expected:
-3713088127102618519
Got:
1817441385
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 276:
sage: hash((-7,5))
Expected:
-3713088127102618519
Got:
1817441385
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/heegner.py", line 1688:
sage: hash(H)
Expected:
6187687223143458874
Got:
-458201030
**********************************************************************
15 items had failures:
}}}
Incidentally that test takes 90s which is rather long (I have not tested
it with "-long" yet!)
Some of this might be caused by the fact that I have a new version of
lcalc (from reviewing another ticket) although this is a fresh clone?
{{{
sage -t "devel/sage-tests/sage/schemes/elliptic_curves/lseries_ell.py"
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/lseries_ell.py", line 258:
sage: E.lseries().zeros_in_interval(6, 10, 0.1) # long
Exception raised:
Traceback (most recent call last):
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1231, in
run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/home/john/sage-4.3/local/bin/sagedoctest.py", line 38, in
run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1172, in
run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_10[3]>", line 1, in <module>
E.lseries().zeros_in_interval(Integer(6), Integer(10),
RealNumber('0.1')) # long###line 258:
sage: E.lseries().zeros_in_interval(6, 10, 0.1) # long
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/lseries_ell.py", line 262, in
zeros_in_interval
return lcalc.zeros_in_interval(x, y, stepsize, L=self.__E)
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/lfunctions/lcalc.py", line 162, in zeros_in_interval
return [tuple([RR(z) for z in t.split()]) for t in X.split('\n')]
File "parent.pyx", line 538, in
sage.structure.parent.Parent.__call__ (sage/structure/parent.c:4956)
File "coerce_maps.pyx", line 82, in
sage.structure.coerce_maps.DefaultConvertMap_unique._call_
(sage/structure/coerce_maps.c:3142)
File "coerce_maps.pyx", line 77, in
sage.structure.coerce_maps.DefaultConvertMap_unique._call_
(sage/structure/coerce_maps.c:3040)
File "real_mpfr.pyx", line 384, in
sage.rings.real_mpfr.RealField._element_constructor_
(sage/rings/real_mpfr.c:5053)
File "real_mpfr.pyx", line 1009, in
sage.rings.real_mpfr.RealNumber._set (sage/rings/real_mpfr.c:8794)
TypeError: Unable to convert x (='You') to real number.
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/lseries_ell.py", line 311:
sage: print "ignore this"; E.lseries().twist_values(1, -12, -4) #
slightly random output depending on architecture
Exception raised:
Traceback (most recent call last):
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1231, in
run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/home/john/sage-4.3/local/bin/sagedoctest.py", line 38, in
run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1172, in
run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_12[3]>", line 1, in <module>
print "ignore this"; E.lseries().twist_values(Integer(1),
-Integer(12), -Integer(4)) # slightly random output depending on
architecture###line 311:
sage: print "ignore this"; E.lseries().twist_values(1, -12, -4) #
slightly random output depending on architecture
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/lseries_ell.py", line 321, in
twist_values
return lcalc.twist_values(s - RationalField()('1/2'), dmin, dmax,
L=self.__E)
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/lfunctions/lcalc.py", line 296, in twist_values
d,x,y = a.split()
ValueError: too many values to unpack
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/lseries_ell.py", line 343:
sage: E.lseries().twist_zeros(3, -4, -3) # long
Exception raised:
Traceback (most recent call last):
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1231, in
run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/home/john/sage-4.3/local/bin/sagedoctest.py", line 38, in
run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1172, in
run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_13[3]>", line 1, in <module>
E.lseries().twist_zeros(Integer(3), -Integer(4), -Integer(3))
# long###line 343:
sage: E.lseries().twist_zeros(3, -4, -3) # long
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/lseries_ell.py", line 347, in
twist_zeros
return lcalc.twist_zeros(n, dmin, dmax, L=self.__E)
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/lfunctions/lcalc.py", line 342, in twist_zeros
d, x = a.split()
ValueError: too many values to unpack
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/lseries_ell.py", line 226:
sage: E.lseries().zeros(2)
Exception raised:
Traceback (most recent call last):
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1231, in
run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/home/john/sage-4.3/local/bin/sagedoctest.py", line 38, in
run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1172, in
run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_9[3]>", line 1, in <module>
E.lseries().zeros(Integer(2))###line 226:
sage: E.lseries().zeros(2)
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/lseries_ell.py", line 236, in zeros
return lcalc.zeros(n, L=self.__E)
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/lfunctions/lcalc.py", line 126, in zeros
return [RR(z) for z in X.split()]
File "parent.pyx", line 538, in
sage.structure.parent.Parent.__call__ (sage/structure/parent.c:4956)
File "coerce_maps.pyx", line 82, in
sage.structure.coerce_maps.DefaultConvertMap_unique._call_
(sage/structure/coerce_maps.c:3142)
File "coerce_maps.pyx", line 77, in
sage.structure.coerce_maps.DefaultConvertMap_unique._call_
(sage/structure/coerce_maps.c:3040)
File "real_mpfr.pyx", line 384, in
sage.rings.real_mpfr.RealField._element_constructor_
(sage/rings/real_mpfr.c:5053)
File "real_mpfr.pyx", line 1009, in
sage.rings.real_mpfr.RealNumber._set (sage/rings/real_mpfr.c:8794)
TypeError: Unable to convert x (='You') to real number.
**********************************************************************
4 items had failures:
}}}
The perennial noise issues in period_lattice.py:
{{{
sage -t "devel/sage-tests/sage/schemes/elliptic_curves/period_lattice.py"
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/period_lattice.py", line 1111:
sage: L.elliptic_exponential(z)
Expected:
(1.06844510091205e-15 : 2.00000000000000 : 1.00000000000000)
Got:
(1.06663809729124e-15 : 2.00000000000000 : 1.00000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/period_lattice.py", line 1119:
sage: L.elliptic_exponential(z)
Expected:
(-1.0773137765183430387827930528831385613292568270511670949401e-60 :
2.0000000000000000000000000000000000000000000000000000000000 :
1.0000000000000000000000000000000000000000000000000000000000)
Got:
(-1.0773140994173990301711557437150639986876632707626675784012e-60 :
2.0000000000000000000000000000000000000000000000000000000000 :
1.0000000000000000000000000000000000000000000000000000000000)
}}}
Lastly, in ell_rational_field.py, we have some more of the same plus a
very weird issue with "rubenstein":
{{{
sage -t "devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py"
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py", line 1334:
sage: E.analytic_rank(algorithm='rubinstein')
Exception raised:
Traceback (most recent call last):
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1231, in
run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/home/john/sage-4.3/local/bin/sagedoctest.py", line 38, in
run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1172, in
run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_28[4]>", line 1, in <module>
E.analytic_rank(algorithm='rubinstein')###line 1334:
sage: E.analytic_rank(algorithm='rubinstein')
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/ell_rational_field.py", line 1363,
in analytic_rank
raise RuntimeError, "unable to compute analytic rank using
rubinstein algorithm ('%s')"%msg
RuntimeError: unable to compute analytic rank using rubinstein
algorithm ('unable to convert x (=eed to uncomment the line: PARI_DEFINE =
-DINCLUDE_PARI
in the Makefile and do: 'make clean', then 'make' if you wish to use
elliptic curve L-functions. Requires that you already have pari
installed
on your machine.) to an integer')
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py", line 1340:
sage: E.analytic_rank(algorithm='all')
Exception raised:
Traceback (most recent call last):
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1231, in
run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/home/john/sage-4.3/local/bin/sagedoctest.py", line 38, in
run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1172, in
run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_28[6]>", line 1, in <module>
E.analytic_rank(algorithm='all')###line 1340:
sage: E.analytic_rank(algorithm='all')
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/ell_rational_field.py", line 1372,
in analytic_rank
self.analytic_rank('rubinstein'), self.analytic_rank('sympow')]))
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/ell_rational_field.py", line 1363,
in analytic_rank
raise RuntimeError, "unable to compute analytic rank using
rubinstein algorithm ('%s')"%msg
RuntimeError: unable to compute analytic rank using rubinstein
algorithm ('unable to convert x (=eed to uncomment the line: PARI_DEFINE =
-DINCLUDE_PARI
in the Makefile and do: 'make clean', then 'make' if you wish to use
elliptic curve L-functions. Requires that you already have pari
installed
on your machine.) to an integer')
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py", line 1347:
sage:
EllipticCurve([1234567,89101112]).analytic_rank(algorithm='rubinstein')
Expected:
Traceback (most recent call last):
...
RuntimeError: unable to compute analytic rank using rubinstein
algorithm ('unable to convert x (= 6.19283e+19 and is too large) to an
integer')
Got:
Traceback (most recent call last):
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1231, in
run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/home/john/sage-4.3/local/bin/sagedoctest.py", line 38, in
run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename,
compileflags)
File "/home/john/sage-4.3/local/bin/ncadoctest.py", line 1172, in
run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_28[7]>", line 1, in <module>
EllipticCurve([Integer(1234567),Integer(89101112)]).analytic_rank(algorithm='rubinstein')###line
1347:
sage:
EllipticCurve([1234567,89101112]).analytic_rank(algorithm='rubinstein')
File "/home/john/sage-4.3/local/lib/python/site-
packages/sage/schemes/elliptic_curves/ell_rational_field.py", line 1363,
in analytic_rank
raise RuntimeError, "unable to compute analytic rank using
rubinstein algorithm ('%s')"%msg
RuntimeError: unable to compute analytic rank using rubinstein
algorithm ('unable to convert x (=eed to uncomment the line: PARI_DEFINE =
-DINCLUDE_PARI
in the Makefile and do: 'make clean', then 'make' if you wish to use
elliptic curve L-functions. Requires that you already have pari
installed
on your machine.) to an integer')
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py", line 2901:
sage: E.elliptic_exponential(z)
Expected:
(-7.4445166218537606141680653627e-30 : 2.0000000000000000000000000000
: 1.0000000000000000000000000000)
Got:
(-7.4445166228333392396252290308e-30 : 2.0000000000000000000000000000
: 1.0000000000000000000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py", line 2904:
sage: E.elliptic_exponential(z)
Expected:
(-1.0773137765183430387827930528831385613292568270511670949401e-60 :
2.0000000000000000000000000000000000000000000000000000000000 :
1.0000000000000000000000000000000000000000000000000000000000)
Got:
(-1.0773140994173990301711557437150639986876632707626675784012e-60 :
2.0000000000000000000000000000000000000000000000000000000000 :
1.0000000000000000000000000000000000000000000000000000000000)
**********************************************************************
File "/home/john/sage-4.3/devel/sage-
tests/sage/schemes/elliptic_curves/ell_rational_field.py", line 2916:
sage: E.elliptic_exponential(P.elliptic_logarithm())
Expected:
(-1.0000000000000000000000000000 +
4.3761255281366123414673626379e-31*I : 1.0000000000000000000000000000 -
1.4587084969798853407242847702e-31*I : 1.0000000000000000000000000000)
Got:
(-1.0000000000000000000000000000 +
4.3761255295105644085291631657e-31*I : 1.0000000000000000000000000000 -
1.4587084969798853407242847702e-31*I : 1.0000000000000000000000000000)
**********************************************************************
2 items had failures:
3 of 9 in __main__.example_28
3 of 22 in __main__.example_61
***Test Failed*** 6 failures.
For whitespace errors, see the file
/home/john/.sage//tmp/.doctest_ell_rational_field.py
[69.0 s]
}}}
So the conclusion is, regretfully, "needs work", though the work that
needs doing is trivial compared with what has been done already (which is
probably worth a PhD thesis for someone!).
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6616#comment:16>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.