########################### # datF for Apecs5 ########################### lprint(`Reading Dat/dat ..`); Dat:=proc() global e21, e24, iee, k, ncir, p, s; local a,d,i,j,l,n,x,y; #Display data of any curve in the stack or catalog l:=proc() lprint(args):end: if nargs=0 then if cur='cur' then if sT=4 then print(`Curve is singular.`);fi; iee:=1:ill();iee:=0:l(`Present Weierstrass coeff.'s: `,yo):RETURN(); fi; d:=[cur,ncur,Ncl,[Kod],NN,[PP],qR,RR,rc,r4,r1,dill,nisog,disog,visog,reg,o\ megA,shaf,SFE,tuQ,sB,tW,cP]: ncir:=ncur: else if ian(args)=2 then RETURN();fi; d:=[et1[ncir],ncir,op(eT[ncir])]: fi; print(`[a1..a6] = `,et2[ncir]); for k to 23 do e.k:=d[k]:od; l(`catalog name and number are: `.e1,e2); if ncir=ncur then iee:=1:ill();iee:=0:fi; if type(e3,list) then l(`conductor = `,e3[1],` = `,e3[2],`^`,e3[3]); else l(`conductor = `,e3,` = `,ifactor(e3)); fi; l(`Kodaira type(s): `,op(e4),`; cP = `.e23); if e9=-1 then l(`rank`.qD,` Rk, Rk0, Rk1, RkNC or Crem`); else l(`rank = `.e10.`, determined as follows:`); if e9=0 then l(` from rank of an isogenous curve using the T, B-SD and R.H.c\ onjectures`); elif e9=1 then l(` from the rank of an isogenous curve using only the T-p conject\ ure`); elif e9=2 then l(` using the T, B-SD and R.H. conjectures`); elif e9=3 then l(`using only the T-p conjecture`); elif e9=4 then l(` from the rank of an isogenous curve using none of the stand\ ard conjectures`); elif e9=5 then l(` directly using none of the standard conjectures\ `); else if e9=6 then l(` for an isogenous curve,`);fi; l(e11,` was an upper bound for the rank`); if e11>1 then l(` and that many independent points were found.`); elif e11=1 then l(` and a point of infinite order was found.`); fi; l(` thus confirming the value of the rank.`); fi; fi; if nops(e8)>0 then if e7<2 then l(`points of infinite order noticed: `,op(e8)); elif e7=2 then l(`we only have the following independent points of infinite ord\ er: `,op(e8)); l(`--- need`,r4); elif e7=9/4 then l(`Sha has determined that the present RR+torsion generates`); l(`a subgroup of finite index > 1.`); elif e7=5/2 then l(`we have the right number of independent point(s): RR =`); print(e8); l(`but they don't form a Mordell-Weil basis since yR is not empty\ .`); l(`yR contains points rationally but not integrally depenedent o\ n RR.)`); elif e7=3 then l(); l(`possible basis (right number and linearly independent), RR =`); l(e8);l(`grammian = `,evalf(e16)); elif e7=4 then l(); l(`probable basis --- RR consists of the succesive minima:`); l(e8);l(`discriminant (probably the regulator) = `,evalf(e16)); else l(); l(`"certified" basis: `,e8);l(`regulator = `,e16); fi; fi; if type(e21,list) then e21:=abs(e21[1]);else e21:=abs(e21);fi; if e7<2 and e21>1 then l(`searched for [x,y] on the curve with x=a/b^2 for max{|a|,b^2}<=`.e21); fi; if abs(e19)=1 then l(`The sign of the functional equation is `,e19); fi; if e12>3 then l(`searched for points on principal homogeneous spaces up to`); l(` (naive) height = log `.e12); fi; isug(e13,e14);e24:=nops(e22[1]): if e24>0 then print(` twist by|gives curve`); for i to e24 do print(cat(e22[1][i],`|`,et1[e22[2][i]]));od; fi; for i to nops(e17) do x:=e17[i]: if nops(x)<4 then if ncir=ncur then Om(); else ein(ncir);Om(); if type(psn,posint) then go(psn);fi; fi; else p:=x[1]:l(cat(p,`-adic period to `,x[2],` digits is`));y:=x[3]: s:=cat(p,`^`,y[1],`*`):print(s,y[2..nops(y)]);y:=x[4]: s:=cat(`with corresponding derivative^2 = `,p,`^`,y[1],`*`); print(s,y[2..nops(y)]); fi; od; if e18>0 then print(`shaf = conjectural order of Shafarevich-Tate group = `,e18); fi; end: dat:=proc() local b,x,q; #Display catalog entry. q:=`,Kod,NN,PP,qR,RR,rc,r4,r1,dill,nisog,disog,visog,reg,omegA,shaf,\ SFE,tuQ,sB,tW,cP,misc:`: if nargs=0 then if cur='cur' then aM();RETURN();fi; print(cat('Ncl',q));print(`eT[`.ncur.`] = `.Ncl,[Kod],NN,[PP],qR,RR,rc,r4,\ r1,dill,nisog,disog,visog,reg,omegA,shaf,SFE,tuQ,sB,tW,cP,op(misc)); else b:=args: if ian(b)=2 then RETURN();fi; x:=eT[ncir]: if type(x[1],list) then q:=cat('Ncl',q): else q:=cat('Nc',q): fi; print(q);print(`eT[`.ncir.`] = `,x); if type(b,list) or type(b,integer) then print(`catalog name of curve is `,et1[ncir]); fi; fi; end: