Pari/GP Reference Documentation |
Contents - Index - Meta commands |

elladd ellak ellan ellap ellbil ellchangecurve ellchangepoint ellconvertname elleisnum elleta ellgenerators ellglobalred ellheight ellheightmatrix ellidentify ellinit ellisoncurve ellj elllocalred elllseries ellminimalmodel ellorder ellordinate ellpointtoz ellpow ellrootno ellsearch ellsigma ellsub elltaniyama elltors ellwp ellzeta ellztopoint | |

elladd(E,z1,z2) | |

sum of the points z1 and z2 on the elliptic curve corresponding to E. The library syntax is | |

ellak(E,n) | |

computes the coefficient a_n of the
L-function of the elliptic curve E, i.e.in principle coefficients of a
newform of weight 2 assuming Taniyama-Weil conjecture (which is now
known to hold in full generality thanks to the work of Breuil,
Conrad, Diamond, Taylor and Wiles). E must be an
The library syntax is | |

ellan(E,n) | |

computes the vector of the first n a_k
corresponding to the elliptic curve E. All comments in The library syntax is | |

ellap(E,p,{flag = 0}) | |

computes the a_p corresponding to the
elliptic curve E and the prime number p. These are defined by the
equation #E( If No checking is done that p is indeed prime. E must be an The library syntax is flag = 0, and
(apell2(E,p)flag = 1). | |

ellbil(E,z1,z2) | |

if z1 and z2 are points on the elliptic
curve E, assumed to be integral given by a minimal model, this function
computes the value of the canonical bilinear form on z1, z2:
( h(E,z1 The library syntax is | |

ellchangecurve(E,v) | |

changes the data for the elliptic curve E
by changing the coordinates using the vector The library syntax is | |

ellchangepoint(x,v) | |

changes the coordinates of the point or
vector of points x using the vector The library syntax is | |

ellconvertname(name) | |

converts an elliptic curve name, as found in the
The library syntax is | |

elleisnum(E,k,{flag = 0}) | |

E being an elliptic curve as
output by (2i Pi/omega_2)^k
(1 + 2/zeta(1-k) sum_{n where q = e(omega_1/omega_2). When The library syntax is | |

elleta(om) | |

returns the two-component row vector
[eta_1,eta_2] of quasi-periods associated to The library syntax is | |

ellgenerators(E) | |

returns a The library syntax is | |

ellglobalred(E) | |

calculates the arithmetic conductor, the global
minimal model of E and the global Tamagawa number c.
E must be an The library syntax is | |

ellheight(E,z,{flag = 2}) | |

global Néron-Tate height of
the point z on the elliptic curve E (defined over The library syntax is flag = 0) and
(ghell2(E,z,prec)flag = 1). | |

ellheightmatrix(E,x) | |

x being a vector of points, this
function outputs the Gram matrix of x with respect to the Néron-Tate
height, in other words, the (i,j) component of the matrix is equal to
The library syntax is | |

ellidentify(E) | |

look up the elliptic curve E (over The library syntax is | |

ellinit(E,{flag = 0}) | |

initialize an The result of a_1,a_2,a_3,a_4,a_6,b_2,b_4,b_6,b_8,c_4,c_6,Delta,j. All are accessible via member functions. In particular, the discriminant is
The other six components are only present if
Then omega_1 =
Finally,
For all other base fields or rings, the last six components are arbitrarily set equal to zero. See also the description of member functions related to elliptic curves at the beginning of this section. The library syntax is flag = 0) and
(smallinitell(E,prec)flag = 1). | |

ellisoncurve(E,z) | |

gives 1 (i.e.true) if the point z is on the elliptic curve E, 0 otherwise. If E or z have imprecise coefficients, an attempt is made to take this into account, i.e.an imprecise equality is checked, not a precise one. It is allowed for z to be a vector of points in which case a vector (of the same type) is returned. The library syntax is
long but does not accept vector of points. | |

ellj(x) | |

elliptic j-invariant. x must be a complex number with positive imaginary part, or convertible into a power series or a p-adic number with positive valuation. The library syntax is | |

elllocalred(E,p) | |

calculates the Kodaira type of the
local fiber of the elliptic curve E at the prime p.
E must be an 1 means good reduction (type I_0), 2, 3 and 4 mean types II, III and IV respectively, 4+nu with nu > 0 means type I_nu; finally the opposite values -1, -2, etc.refer to the starred types I_0^*, II^*, etc. The third component v is itself a vector [u,r,s,t] giving the coordinate changes done during the local reduction. Normally, this has no use if u is 1, that is, if the given equation was already minimal. Finally, the last component c is the local Tamagawa number c_p. The library syntax is | |

elllseries(E,s,{A = 1}) | |

E being an Note that if the conductor of the curve is large, say greater than 10^{12}, this function will take an unreasonable amount of time since it uses an O(N^{1/2}) algorithm. The library syntax is | |

ellminimalmodel(E,{&v}) | |

return the standard minimal
integral model of the rational elliptic curve E. If present, sets v to the
corresponding change of variables, which is a vector [u,r,s,t] with
rational components. The return value is identical to that of
The resulting model has integral coefficients, is everywhere minimal, a_1 is 0 or 1, a_2 is 0, 1 or -1 and a_3 is 0 or 1. Such a model is unique, and the vector v is unique if we specify that u is positive, which we do.
The library syntax is | |

ellorder(E,z) | |

gives the order of the point z on the elliptic
curve E if it is a torsion point, zero otherwise. In the present version
The library syntax is | |

ellordinate(E,x) | |

gives a 0, 1 or 2-component vector containing the y-coordinates of the points of the curve E having x as x-coordinate. The library syntax is | |

ellpointtoz(E,z) | |

if E is an elliptic curve with coefficients
in If E has coefficients in The library syntax is | |

ellpow(E,z,n) | |

computes n times the point z for the
group law on the elliptic curve E. Here, n can be in The library syntax is | |

ellrootno(E,{p = 1}) | |

E being an The library syntax is | |

ellsigma(E,z,{flag = 0}) | |

value of the Weierstrass sigma
function of the lattice associated to E as given by If If | |

ellsearch(N) | |

if N is an integer, it is taken as a conductor
else if N is a string, it can be a curve name ("11a1"), a isogeny class
("11a") or a conductor "11". This function finds all curves in the
If N is a full curve name, the output format is [N, [a_1,a_2,a_3,a_4,a_6],
G] where [a_1,a_2,a_3,a_4,a_6] are the coefficients of the Weierstrass
equation of the curve and G is a If N is not a full-curve name, the output is the list (as a vector) of all matching curves in the above format. The library syntax is | |

ellsub(E,z1,z2) | |

difference of the points z1 and z2 on the elliptic curve corresponding to E. The library syntax is | |

elltaniyama(E) | |

computes the modular parametrization of the
elliptic curve E, where E is an The library syntax is | |

elltors(E,{flag = 0}) | |

if E is an elliptic curve
[t,v1,v2], where
t is the order of the torsion group,
v1
gives the structure of the torsion group as a product of cyclic groups
(sorted by decreasing order), and
v2 gives generators for these cyclic
groups. E must be an ell as output by
ellinit.
Here, the torsion subgroup is isomorphic to If If The library syntax is | |

ellwp(E,{z = x},{flag = 0}) | |

Computes the value at z of the Weierstrass wp function attached to the
elliptic curve E as given by If z is omitted or is a simple variable, computes the Optional The library syntax is | |

ellzeta(E,z) | |

value of the Weierstrass zeta function of the
lattice associated to E as given by The library syntax is | |

ellztopoint(E,z) | |

E being an The library syntax is | |