Hello John,

I don't know if this is helpful, but on sage.math get the following
happens when running mwrank under valgrind with the curve from ticket
1402.

The issue goes away after I applied your initialization patch you send
me per email. The valgrind log is somewhat different from the one in
#1402, but is also involves NTL and happens in the same section of the
code. Accounting for different gccs and operating system your patch
might still have fixed #1402. Justin, could you please try

http://sage.math.washington.edu/home/mabshoff/cremona-20071124.p5.spkg

and report back if that fixes the issue for you?

Cheers,

Michael

[EMAIL PROTECTED]:/tmp/Work-mabshoff/sage-2.9/local/bin$ ./valgrind --
tool=memcheck --leak-resolution=high ./mwrank
==9637== Memcheck, a memory error detector.
==9637== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==9637== Using LibVEX rev 1791, a library for dynamic binary
translation.
==9637== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==9637== Using valgrind-3.3.0.SVN, a dynamic binary instrumentation
framework.
==9637== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==9637== For more details, rerun with: -v
==9637==
Program mwrank: uses 2-descent (via 2-isogeny if possible) to
determine the rank of an elliptic curve E over Q, and list a
set of points which generate E(Q) modulo 2E(Q).
and finally saturate to obtain generating points on the curve.
For more details see the file mwrank.doc.
For details of algorithms see the author's book.

Please acknowledge use of this program in published work,
and send problems to [EMAIL PROTECTED]

Version compiled on Dec 16 2007 at 09:53:10 by GCC 4.1.2 20061115
(prerelease) (Debian 4.1.1-21)
using base arithmetic option NTL_ALL (NTL bigints and multiprecision
floating point)
Using NTL multiprecision floating point with 15 decimal places.
Enter curve: [0,0,1,-1,0]

Curve [0,0,1,-1,0] :    Basic pair: I=48, J=-432
disc=255744
2-adic index bound = 2
By Lemma 5.1(a), 2-adic index = 1
2-adic index = 1
One (I,J) pair
Looking for quartics with I = 48, J = -432
Looking for Type 2 quartics:
Trying positive a from 1 up to 1 (square a first...)
(1,0,-6,4,1)    --trivial
Trying positive a from 1 up to 1 (...then non-square a)
Finished looking for Type 2 quartics.
Looking for Type 1 quartics:
Trying positive a from 1 up to 2 (square a first...)
(1,0,0,4,4)     --nontrivial...(x:y:z) = (1 : 1 : 0)
Point = [0:0:1]
        height = 0.0511114082399688
Rank of B=im(eps) increases to 1 (The previous point is on the egg)
Exiting search for Type 1 quartics after finding one which is globally
soluble.
Mordell rank contribution from B=im(eps) = 1
Selmer  rank contribution from B=im(eps) = 1
Sha     rank contribution from B=im(eps) = 0
Mordell rank contribution from A=ker(eps) = 0
Selmer  rank contribution from A=ker(eps) = 0
Sha     rank contribution from A=ker(eps) = 0
Rank = 1
Searching for points (bound = 8)...==9637== Conditional jump or move
depends on uninitialised value(s)
==9637==    at 0x4B9E13E: qsieve::sift0(long, long, long, int)
(sieve_search.cc:903)
==9637==    by 0x4B9E54A: qsieve::sift(long) (sieve_search.cc:829)
==9637==    by 0x4B9EB8A: qsieve::search() (sieve_search.cc:1119)
==9637==    by 0x4B91001: mw::search(NTL::RR, int, int) (mwprocs.cc:
724)
==9637==    by 0x40927C: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x4073C1: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x5C074C9: (below main) (in /lib/libc-2.3.6.so)
==9637==
==9637== Conditional jump or move depends on uninitialised value(s)
==9637==    at 0x4B9DAA5: qsieve::check_point(unsigned long, long,
long, long*, int) (sieve_search.cc:942)
==9637==    by 0x4B9E157: qsieve::sift0(long, long, long, int)
(sieve_search.cc:905)
==9637==    by 0x4B9E54A: qsieve::sift(long) (sieve_search.cc:829)
==9637==    by 0x4B9EB8A: qsieve::search() (sieve_search.cc:1119)
==9637==    by 0x4B91001: mw::search(NTL::RR, int, int) (mwprocs.cc:
724)
==9637==    by 0x40927C: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x4073C1: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x5C074C9: (below main) (in /lib/libc-2.3.6.so)
==9637==
==9637== Conditional jump or move depends on uninitialised value(s)
==9637==    at 0x4B9DACE: qsieve::check_point(unsigned long, long,
long, long*, int) (sieve_search.cc:942)
==9637==    by 0x4B9E157: qsieve::sift0(long, long, long, int)
(sieve_search.cc:905)
==9637==    by 0x4B9E54A: qsieve::sift(long) (sieve_search.cc:829)
==9637==    by 0x4B9EB8A: qsieve::search() (sieve_search.cc:1119)
==9637==    by 0x4B91001: mw::search(NTL::RR, int, int) (mwprocs.cc:
724)
==9637==    by 0x40927C: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x4073C1: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x5C074C9: (below main) (in /lib/libc-2.3.6.so)
==9637==
==9637== Conditional jump or move depends on uninitialised value(s)
==9637==    at 0x4B9DAD6: qsieve::check_point(unsigned long, long,
long, long*, int) (sieve_search.cc:951)
==9637==    by 0x4B9E157: qsieve::sift0(long, long, long, int)
(sieve_search.cc:905)
==9637==    by 0x4B9E54A: qsieve::sift(long) (sieve_search.cc:829)
==9637==    by 0x4B9EB8A: qsieve::search() (sieve_search.cc:1119)
==9637==    by 0x4B91001: mw::search(NTL::RR, int, int) (mwprocs.cc:
724)
==9637==    by 0x40927C: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x4073C1: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x5C074C9: (below main) (in /lib/libc-2.3.6.so)
==9637==
==9637== Conditional jump or move depends on uninitialised value(s)
==9637==    at 0x4B9DF1C: qsieve::check_point(unsigned long, long,
long, long*, int) (sieve_search.cc:930)
==9637==    by 0x4B9E157: qsieve::sift0(long, long, long, int)
(sieve_search.cc:905)
==9637==    by 0x4B9E54A: qsieve::sift(long) (sieve_search.cc:829)
==9637==    by 0x4B9EB8A: qsieve::search() (sieve_search.cc:1119)
==9637==    by 0x4B91001: mw::search(NTL::RR, int, int) (mwprocs.cc:
724)
==9637==    by 0x40927C: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x4073C1: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x5C074C9: (below main) (in /lib/libc-2.3.6.so)
==9637==
==9637== Conditional jump or move depends on uninitialised value(s)
==9637==    at 0x4B9DF5D: qsieve::check_point(unsigned long, long,
long, long*, int) (sieve_search.cc:930)
==9637==    by 0x4B9E157: qsieve::sift0(long, long, long, int)
(sieve_search.cc:905)
==9637==    by 0x4B9E54A: qsieve::sift(long) (sieve_search.cc:829)
==9637==    by 0x4B9EB8A: qsieve::search() (sieve_search.cc:1119)
==9637==    by 0x4B91001: mw::search(NTL::RR, int, int) (mwprocs.cc:
724)
==9637==    by 0x40927C: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x4073C1: (within /tmp/Work-mabshoff/sage-2.9/local/bin/
mwrank)
==9637==    by 0x5C074C9: (below main) (in /lib/libc-2.3.6.so)
done:
  found points of rank 1
  and regulator 0.0511114082399688
Processing points found during 2-descent...done:
  now regulator = 0.0511114082399688
Saturating (bound = 100)...done:
  points were already saturated.

Generator 1 is [0:-1:1]; height 0.0511114082399688

Regulator = 0.0511114082399688

The rank and full Mordell-Weil basis have been determined
unconditionally.
 (20.1453 seconds)

Cheers,

Michael
--~--~---------~--~----~------------~-------~--~----~
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-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to