Prof. J. E. Cremona on Wed, 18 Jan 2006 16:43:02 +0100

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

 Two suggestions:

```(1) As Bill has reported, although ellsearch() allows one to take from
the database all elliptic curves with a given conductor, it is
inefficient to do this in a loop, say from N=N1 to N=N2, since each call
to ellsearch() causes the entire relevant database file to be read in.

I suggest adding a function of the form

forell(E,N1,N2, seq ) which would execute seq for all elliptic curves E
in the database with N1 <= cond(E) <= N2;  which would only read each
file once.

That's my first wish-list suggestion (of 2006).

(2) The elliptic curve databes holds each curve's id as a string, for
example "20160cy2".  It would be convenient to be able to simply split
this into 3 components, for example [20160,"cy",2].  With Bill's help I
have written a gp function to do this:

{
code2seq(code)=local(v,N=0,num=0,i=1,i1,class);
v=Vecsmall(code);
while(v[i]<58,N=10*N+v[i]-48;i++);
i1=i;
while(v[i]>57,i++);
class=Strchr(vector(i-i1,j,v[i1+j-1]));
while(i<=length(v),num=10*num+v[i]-48;i++);
[N,class,num]
}

But this direct manipulation of the vector of ASCII codes is rather
awkward.   Surely there would be other places in which some string
manipulation would be helpful?  Can we add this to the wish-list please?

Happy New Year to all,

John

--
Prof. J. E. Cremona             |
University of Nottingham        | Tel.:  +44-115-9514920
School of Mathematical Sciences | Fax:   +44-115-9514951
University Park                 | Email: John.Cremona@nottingham.ac.uk
Nottingham NG7 2RD, UK          |

This message has been checked for viruses but the contents of an attachment
may still contain software viruses, which could damage your computer system:
you are advised to perform your own checks. Email communications with the
University of Nottingham may be monitored as permitted by UK legislation.

```