Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168742
Image: ubuntu2004

 

olving Cubic Equations (JMM 2012 Short Course)
William Stein

 

 

 

Solving Cubic Equations (JMM 2012 Short Course)

William Stein

This worksheet accompanies these slides.

Pythagorean triples

@interact def f(n=5, m=(1..10)): print "n*m =", n*m
circle((0,0), 1)
G = circle((0,0), 1, thickness=3, color='red') G += arrow((0,0), (1,1)) G.show(figsize=3)
@interact def f(t=(1/4,(1/16,1/8,..,1))): t0 = t x,y,t=var('x,y,t') show([x==(1-t^2)/(1+t^2), y==2*t/(1+t^2)]) t = t0 (x,y) = ((1-t^2)/(1+t^2), 2*t/(1+t^2)) a = 1/3 G = circle((0,0), 1, color='blue', thickness=3) G += arrow((-1-a,-t*a), (x+a,y+t*a), head=2, color='red') G += point((0,t), pointsize=150, color='black', zorder=100) G += point((-1,0), pointsize=150, color='black', zorder=100) G += point((x,y), pointsize=190, color='lightgreen', zorder=100) G += text("$(0, %s)$"%t, (-.3, t+.2), fontsize=16, color='black', zorder=200) G += text(r"$(%s,\,%s)$"%(x,y), (x+.35, y+.25), fontsize=16, color='black', zorder=200) G.show(aspect_ratio=1, ymin=-1.1, ymax=1.6, xmax=2, xmin=-1.3, fontsize=0, figsize=6)

Cubic equations

var('x,y') implicit_plot(x^3 + y^3 == 1, (x,-2,2), (y,-2,2), aspect_ratio=1, figsize=5, gridlines=True)
var('x,y') implicit_plot(y^2 + y == x^3 - x, (x,-2,3), (y,-4.5,4), aspect_ratio=1/2, figsize=5, gridlines=True)
@interact def _(equation='x^3 + y^3 == 1', xmin=-2, xmax=2, ymin=-2, ymax=2, aspect_ratio=1, gridlines=True): x,y = var('x,y') eqn = sage_eval(equation, {'x':x, 'y':y}) print eqn G = implicit_plot(eqn, (x,xmin,xmax), (y,ymin,ymax), aspect_ratio=aspect_ratio, gridlines=gridlines) G.show(figsize=4)

The Group Law

How the figure in the slide was made:

E = EllipticCurve([0,0,1,-1,0]); print E G = E.plot(plot_points=600, thickness=2) G += arrow((-2,1), (3,-4), head=2, color='red', width=2) G += points([(-1,0), (0,-1), (2,-3)], color='black', pointsize=70, zorder=50) G += text("$(2,-3)$", (1.3,-3.1), fontsize=18, color='black') G += text("$(-1,0)$", (-.9,1), fontsize=18, color='black') G += text("$(0,-1)$", (-.7,-1.85), fontsize=18, color='black') G.show(gridlines=True, frame=True, aspect_ratio=1/2, xmax=3.1, xmin=-2, figsize=5)
Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field
E = EllipticCurve([0,0,1,-1,0]) P = E([-1,0]); Q = E([0,-1]); R = E([2,-3]) print P + Q + R print -(P+Q) print 7*P
(0 : 1 : 0) (2 : -3 : 1) (1849037896/6941055969 : -260151768440137/578280195945297 : 1)
for n in range(20): print n, n*P
0 (0 : 1 : 0) 1 (-1 : 0 : 1) 2 (6 : -15 : 1) 3 (-20/49 : 92/343 : 1) 4 (1357/841 : -53277/24389 : 1) 5 (8385/98596 : -2882165/30959144 : 1) 6 (12551561/13608721 : -41922509264/50202571769 : 1) 7 (1849037896/6941055969 : -260151768440137/578280195945297 : 1) 8 (4881674119706/5677664356225 : -4590618167456560854/13528653463047586625 : 1) 9 (2786836257692691/16063784753682169 : -1600059682932627475385835/2035972062206737347698803 : 1) 10 (79799551268268089761/62586636021357187216 : 259255210055384395482322830865/495133617181351428873673516736 : 1) 11 (-280251129922563291422645/1262082793174195430038441 : -1671718055004040020388958925246733656/1417854835344178787714550500916300011 : 1) 12 (54202648602164057575419038802/15402543997324146892198790401 : 11180857173039409581678017020158489404151347/1911563313687376346904659714182809942964351 : 1) 13 (-3239336802390544740129153150480400/3838799532815709794201672388387649 : -285917067454929824428162917486061191698423443842800/237844520166539043234240287233775865292113468549857 : 1) 14 (1425604881483182848970780090473397497201/23330922815816934561924264996456917601 : 53763298717486696585326456293171217861891170325799545495601/112693242618274179956651080434126947419217320185504463599 : 1) 15 (-596929565407758846078157850477988229836340351/546893617922188211588396787764926990139280196 : -3800666403642643655110847227674635963140645047852185808295494396579/12789521106940379462098473081947860361167209079884962192477681132744 : 1) 16 (1356533706384096591887827693333962338847777347485221/107308058945765220809811860660656614527354467284025 : -50365032156988774031285236364459740599413770141788811753437703742498250429144/1111599924813736177345961430101881701789905659558155903791530971080388326125 : 1) 17 (-2389750519110914018630990937660635435269956452770356625916/3918189285267774942185373848295786510876516357699200563921 : 72506774634879990058864460676102201347803797314373860608230342920925408980180650086565/245260787837861391472501375653359272276686314880005174634693349103891414816202264399719 : 1) 18 (47551938020942325784141569050513811957803129798534598981096547726/21770266696109124442011881780789388590757450470263397446865245441 : -10963761475350359352350135938786611053693621632143449652108314746806805823225845339315809790757370/3212148568454852684416519247163095914377220293175188508631449136050695947224872065337330973679489 : 1) 19 (-43276783438948886312588030404441444313405755534366254416432880924019065/1226476751621347613136607845307325808024424281710556312508295933674222609 : 46290237314152136323274175493871871826043118088013860810193408872986522212544410216426713039282098858026903/1358278982333439054487165600676935516731525381527405379218446437438274050336340443456698925833982858204377977 : 1)

Mark Watkins's Curve

E = EllipticCurve([0, 0, 1, -5115523309, -140826120488927]) n = 367770537186677506614005642341827170087932269492285584726218770061653546349271015805365134370326743061141306464500052886704651998399766478840791915307861741507273933802628157325092479708268760217101755385871816780548765478502284415627682847192752681899094962659937870630036760359293577021806237483971074931228416346507852381696883227650072039964481597215995993299744934117106289850389364006552497835877740257534533113775202882210048356163645919345794812074571029660897173224370337701056165735008590640297090298709121506266697266461993201825397369999550868142294312756322177410730532828064759604975369242350993568030726937049911607264109782746847951283794119298941214490794330902986582991229569401523519938742746376107190770204010513818349012786637889254711059455555173810904911927619899031855149292325338589831979737026402711049742594116000380601480839982975557506035851728035645241044229165029649347049289119188596869401159325131363345962579503132339847275422440094553824705189225653677459512863117911721838552934309124508134493366437408093924362039749911907416973504142322111757058584200725022632116164720164998641729522677460525999499077942125820428879526063735692685991018516862938796047597323986537154171248316943796373217191993996993714654629536884396057924790938647656663281596178145722116098216500930333824321806726937018190136190556573208807048355335567078793126656928657859036779350593274598717379730880724034301867739443749841809456715884193720328901461552659882628405842209756757167816662139945081864642108533595989975716259259240152834050940654479617147685922500856944449822045386092122409096978544817218847897640513477806598329177604246380812377739049184475550777341620985976570393037880282764967019552408400730754822676441481715385344001979832232652414888335865567377214360456003296961668177481944809066257442596772347829664126972931904101685281128944780074646796760942430959617022257479874089403564965038885379817866920048929814520268493677507059073765902671638087366488496702836326268574593123245107420348878101763123893347657020275591248824247800594270862052082185973393290009189867677259458080676065098703453539525576975639543700507625640729872340789406314394468400584455920683361976200121834430751233901473228497490561998078486251074993528871318797403348087370426900997556442577081254910572185107856605139877331015042842121106080690743578173268489400499056898312621953947967012358414547752897081097091795744203697684046066255663201242292760126759871266004516377432961917272040217147083563399987612420595275792033855676991823368254862159558450043808051481533297270035287382247038279293223946385070118082306958987268603396924054403103857444058848605587415400517670032631121206127732481340391088277796488544415738156553014768406246154666005139690428085145098272500791416214774673484501826722500527091164944262537169595848931680754096774712860490572746224094031187043204526107239201079603468297522895106598567437015083348797875364162797693968819804139548885751282687152237078260358705230284426203064493684250614282879918107733796207067250003823959412935677624093236047038637365577326399589008804507786011973155927731073034706536557461443806622707622411087809371872157210456836892493613836792026761820382217165481998924123604782787923229739171920575447007099501678380795077013113325989801385729993920818301654424251339564606876820121928372246213399859213282792511168043953443839793901139974194479300297566097664539199384651908436188732428818373302383046388859427937893841888014266685177616605644783704135794931830750265686335934066565240944049448213005591997128985560760260399214278635912634351586762354869354021530746189992899582554597632108309638569296964800046983072736238483149014714600896056552029642747991419063454749142059564274298254654925893866404955146903330024475746163543714996249652420171171054231726336493541586971431778944051481059633738399411418574323811770949729726843612672925000631355659834164200554441315451003433452466204707123811663623662837296862948061758759928631763661985185615801886205770721032006304144867787347058316392295671580091655872087209485913286930128858640442589125454268580397484571921012318872311624898317615607628176460097441336323549031828235965636277950827328087547939511112374216436584203379248450122647406094035171130740663723547675939885959363881135893035102018389444212746146250328348242610673524022378994978392020098814721974502062692815736689229759065822093942795318705345275598989426335235935505605311411301560321192269430861733743544402908586497305353600909431214933202522528717109214492959330016065810287623144179288466664888540622702346704213752456372574449563979215782406566937885352945871994541770838871930542220307771671498466518108722622109421676741544945695403509866953167277628280232464839215003474048896968037544660029755740065581270139083249903212572230417942249795467100700393944310325009677179182109970943346807335014446839612282508824324073679584122851208360459166315484891952299449340025896509298935939357721723543933108743241997387447018395925320167637640328407957069845439501381234605867495003402016724626400855369636521155009147176245904149069225438646928549072337653348704931901764847439772432025275648964681387210234070849306330191790380412396115446240832583481366372132300849060835262136832315311052903367503857437920508931305283143379423930601369154572530677278862066638884250221791647123563828956462530983567929499493346622977494903591722345188975062941907415400740881 d = 4255044272974739888318147243888463149102796676262869844129037001939069082536978320669489250948915984539247906005086523932696054371186522388041546915099800544500632766713011953565768977996873028383821265775526344346357123541112589188755147040471997532333827695072210398747506143870850088480631610375575105629402969923379906696883632426726640777829238424687657347645525014899047899951815906638258828268844376147020866010729124602050467189871119197597417729240821079066147681882592877855973838960678143778693770394049052970155019875224052204788541398018355615590746004686807306334375342979728237142659598012537711708303192309484750118781539765280348857873798901748823243463804440411715478920014959236515352089221657498291013202443206177483221913021678256235579893414436481218449503035888524081157406195476643835666127064380642209659344205748056981879653000401688873470706248622814904782273476309064826525609405548233605225179645823497793346631337770093238960301538846226719138651429924452362996719692807033817042217290429195445858873566571767269091258248510098997241843386892960591348792269127155872118132361370012052090648575376001600422257728323075912369868818631162455043825487235531941123620115037512323584244014680824673299882453235229917216799756372612183353210236861955788541952734145558006820535219145300448204001164810277892288105257230476250805684254277696678157719267749527423894682341440235747396742183997177247946449079490990330823304497772932137791366115383255184513570505904177076177300233520471453051372851804227351360933685976190213408007425987495648991648328355841518790233089971640826391421865446416159176533305374315501526687536310287865258225341831409297024404559487986223470061428509852910119956281813557240650373612303806124216826476191582759712062169110751021106200222502921039737582807865453212930003461175559301081459151181543779910592339627452978630170354145224288258324811018569690301921451517013795632224485059295610701352935567534896297148895118420851960225883402515530058117374260152928631522919378979184864047046497461715005662259748200507982418704000034189585130679648460399502892795419432308411176961777683169393789440445404586765622160449971094877274592261820143359041089932670055512981474178136881417476003157917937418370366564607602590842864145040169169286533733737493516731388736973556780735684454625005971249995694287683482906944701313969575867184534505315069252495619031118665012176098178260784016899909892825429476690659575409055152654378882121107387001622680468831012826136445746750138118199895452299627549452761944871112397182275542812517516928333071853473496479471177474588594469094399278566301150327219929702835948186371102871019478295556041049945697905300902151612670328014420769784258843405782906849447056638422038734349468953136934102682055490426413327292140435307812777834009325214610658460505162660636930982933352215314240689644147222987920125050724733503025375041491926808614281199118113561510206345027387417895539605603362871722363164659754529932197179572083803798469762841343018748973041067954703588990548236248494723651739045289521882710298950201026345472967707812057733059495444795253020394607206147343184720128913820279471137168459793296576793911217963424221938088255273195906782364624214705153806102237088023259111661251016558078055448107365117361120157257882079830434627788427533485656242565476771106266450533897646444735950588164991426098055565123345308087041154716116620172732104619949757331380529168978624213449372249365401328137208190879603847948651527305255792412098085899417962189727321732456666040832323196614881188508752637063922635721727888588861006697067295082662856621427895550981270983075947338227409588860804832689778730985756946228133612817693848327597742540052216739363382567028776997268926223424246381649078824848145698957882084132643790230707482558729729822722846435295235634841524505128041497093453481500336383856658648609091424412441302475261926217094416160502075408493720494216372326712489077723971624589353187301664632745253191939259669507578605710768387023661969449344902879751178806889386035847044662250758843856626244205371560027873450866832479574095908011314904455539494729790898211989993923922058120117863241965534093749668627907690962871059220070919266871471817412365375430285359965804594745527651369886073387194293961511036178306538077683719722004972020545664652037380978094038493268487752662394679129427435458023391430136004830903182108442372425264218315757261837807638185861100198403815128178367563386992036547922694358498639362771798041618046013662235878191246173024597377861825966407677879013966448260355004133249471832418523346215677130183097110890998963907589116151288296464688754418004789058613210310227152010490547650753213820137599826132566513659030867731020594559477466913485854520908208415598659344363758912591077035997911074276473287555243814780228662308363850635352393782937914498292574951022872659981964923226850485187083410037527178126285256712196330538305579411947408618370648081044119314858092966789985880558618838749736465935723939056195292855739824197002857471663879298568186432186480787651653279527172759403662173339216050188101734904266785209933959219574028078421130848836017714997715855156161485884192576525411096570236580006784778240115504215083155473114336654532035309712573054076300648084290382624057963622411854452712766764333742741748257176418629938669049475110145831487629518887622732479751575475237265720522099995921350373526902203987716 P = E.lift_x(n/d)
P
(367770537186677506614005642341827170087932269492285584726218770061653546349271015805365134370326743061141306464500052886704651998399766478840791915307861741507273933802628157325092479708268760217101755385871816780548765478502284415627682847192752681899094962659937870630036760359293577021806237483971074931228416346507852381696883227650072039964481597215995993299744934117106289850389364006552497835877740257534533113775202882210048356163645919345794812074571029660897173224370337701056165735008590640297090298709121506266697266461993201825397369999550868142294312756322177410730532828064759604975369242350993568030726937049911607264109782746847951283794119298941214490794330902986582991229569401523519938742746376107190770204010513818349012786637889254711059455555173810904911927619899031855149292325338589831979737026402711049742594116000380601480839982975557506035851728035645241044229165029649347049289119188596869401159325131363345962579503132339847275422440094553824705189225653677459512863117911721838552934309124508134493366437408093924362039749911907416973504142322111757058584200725022632116164720164998641729522677460525999499077942125820428879526063735692685991018516862938796047597323986537154171248316943796373217191993996993714654629536884396057924790938647656663281596178145722116098216500930333824321806726937018190136190556573208807048355335567078793126656928657859036779350593274598717379730880724034301867739443749841809456715884193720328901461552659882628405842209756757167816662139945081864642108533595989975716259259240152834050940654479617147685922500856944449822045386092122409096978544817218847897640513477806598329177604246380812377739049184475550777341620985976570393037880282764967019552408400730754822676441481715385344001979832232652414888335865567377214360456003296961668177481944809066257442596772347829664126972931904101685281128944780074646796760942430959617022257479874089403564965038885379817866920048929814520268493677507059073765902671638087366488496702836326268574593123245107420348878101763123893347657020275591248824247800594270862052082185973393290009189867677259458080676065098703453539525576975639543700507625640729872340789406314394468400584455920683361976200121834430751233901473228497490561998078486251074993528871318797403348087370426900997556442577081254910572185107856605139877331015042842121106080690743578173268489400499056898312621953947967012358414547752897081097091795744203697684046066255663201242292760126759871266004516377432961917272040217147083563399987612420595275792033855676991823368254862159558450043808051481533297270035287382247038279293223946385070118082306958987268603396924054403103857444058848605587415400517670032631121206127732481340391088277796488544415738156553014768406246154666005139690428085145098272500791416214774673484501826722500527091164944262537169595848931680754096774712860490572746224094031187043204526107239201079603468297522895106598567437015083348797875364162797693968819804139548885751282687152237078260358705230284426203064493684250614282879918107733796207067250003823959412935677624093236047038637365577326399589008804507786011973155927731073034706536557461443806622707622411087809371872157210456836892493613836792026761820382217165481998924123604782787923229739171920575447007099501678380795077013113325989801385729993920818301654424251339564606876820121928372246213399859213282792511168043953443839793901139974194479300297566097664539199384651908436188732428818373302383046388859427937893841888014266685177616605644783704135794931830750265686335934066565240944049448213005591997128985560760260399214278635912634351586762354869354021530746189992899582554597632108309638569296964800046983072736238483149014714600896056552029642747991419063454749142059564274298254654925893866404955146903330024475746163543714996249652420171171054231726336493541586971431778944051481059633738399411418574323811770949729726843612672925000631355659834164200554441315451003433452466204707123811663623662837296862948061758759928631763661985185615801886205770721032006304144867787347058316392295671580091655872087209485913286930128858640442589125454268580397484571921012318872311624898317615607628176460097441336323549031828235965636277950827328087547939511112374216436584203379248450122647406094035171130740663723547675939885959363881135893035102018389444212746146250328348242610673524022378994978392020098814721974502062692815736689229759065822093942795318705345275598989426335235935505605311411301560321192269430861733743544402908586497305353600909431214933202522528717109214492959330016065810287623144179288466664888540622702346704213752456372574449563979215782406566937885352945871994541770838871930542220307771671498466518108722622109421676741544945695403509866953167277628280232464839215003474048896968037544660029755740065581270139083249903212572230417942249795467100700393944310325009677179182109970943346807335014446839612282508824324073679584122851208360459166315484891952299449340025896509298935939357721723543933108743241997387447018395925320167637640328407957069845439501381234605867495003402016724626400855369636521155009147176245904149069225438646928549072337653348704931901764847439772432025275648964681387210234070849306330191790380412396115446240832583481366372132300849060835262136832315311052903367503857437920508931305283143379423930601369154572530677278862066638884250221791647123563828956462530983567929499493346622977494903591722345188975062941907415400740881/4255044272974739888318147243888463149102796676262869844129037001939069082536978320669489250948915984539247906005086523932696054371186522388041546915099800544500632766713011953565768977996873028383821265775526344346357123541112589188755147040471997532333827695072210398747506143870850088480631610375575105629402969923379906696883632426726640777829238424687657347645525014899047899951815906638258828268844376147020866010729124602050467189871119197597417729240821079066147681882592877855973838960678143778693770394049052970155019875224052204788541398018355615590746004686807306334375342979728237142659598012537711708303192309484750118781539765280348857873798901748823243463804440411715478920014959236515352089221657498291013202443206177483221913021678256235579893414436481218449503035888524081157406195476643835666127064380642209659344205748056981879653000401688873470706248622814904782273476309064826525609405548233605225179645823497793346631337770093238960301538846226719138651429924452362996719692807033817042217290429195445858873566571767269091258248510098997241843386892960591348792269127155872118132361370012052090648575376001600422257728323075912369868818631162455043825487235531941123620115037512323584244014680824673299882453235229917216799756372612183353210236861955788541952734145558006820535219145300448204001164810277892288105257230476250805684254277696678157719267749527423894682341440235747396742183997177247946449079490990330823304497772932137791366115383255184513570505904177076177300233520471453051372851804227351360933685976190213408007425987495648991648328355841518790233089971640826391421865446416159176533305374315501526687536310287865258225341831409297024404559487986223470061428509852910119956281813557240650373612303806124216826476191582759712062169110751021106200222502921039737582807865453212930003461175559301081459151181543779910592339627452978630170354145224288258324811018569690301921451517013795632224485059295610701352935567534896297148895118420851960225883402515530058117374260152928631522919378979184864047046497461715005662259748200507982418704000034189585130679648460399502892795419432308411176961777683169393789440445404586765622160449971094877274592261820143359041089932670055512981474178136881417476003157917937418370366564607602590842864145040169169286533733737493516731388736973556780735684454625005971249995694287683482906944701313969575867184534505315069252495619031118665012176098178260784016899909892825429476690659575409055152654378882121107387001622680468831012826136445746750138118199895452299627549452761944871112397182275542812517516928333071853473496479471177474588594469094399278566301150327219929702835948186371102871019478295556041049945697905300902151612670328014420769784258843405782906849447056638422038734349468953136934102682055490426413327292140435307812777834009325214610658460505162660636930982933352215314240689644147222987920125050724733503025375041491926808614281199118113561510206345027387417895539605603362871722363164659754529932197179572083803798469762841343018748973041067954703588990548236248494723651739045289521882710298950201026345472967707812057733059495444795253020394607206147343184720128913820279471137168459793296576793911217963424221938088255273195906782364624214705153806102237088023259111661251016558078055448107365117361120157257882079830434627788427533485656242565476771106266450533897646444735950588164991426098055565123345308087041154716116620172732104619949757331380529168978624213449372249365401328137208190879603847948651527305255792412098085899417962189727321732456666040832323196614881188508752637063922635721727888588861006697067295082662856621427895550981270983075947338227409588860804832689778730985756946228133612817693848327597742540052216739363382567028776997268926223424246381649078824848145698957882084132643790230707482558729729822722846435295235634841524505128041497093453481500336383856658648609091424412441302475261926217094416160502075408493720494216372326712489077723971624589353187301664632745253191939259669507578605710768387023661969449344902879751178806889386035847044662250758843856626244205371560027873450866832479574095908011314904455539494729790898211989993923922058120117863241965534093749668627907690962871059220070919266871471817412365375430285359965804594745527651369886073387194293961511036178306538077683719722004972020545664652037380978094038493268487752662394679129427435458023391430136004830903182108442372425264218315757261837807638185861100198403815128178367563386992036547922694358498639362771798041618046013662235878191246173024597377861825966407677879013966448260355004133249471832418523346215677130183097110890998963907589116151288296464688754418004789058613210310227152010490547650753213820137599826132566513659030867731020594559477466913485854520908208415598659344363758912591077035997911074276473287555243814780228662308363850635352393782937914498292574951022872659981964923226850485187083410037527178126285256712196330538305579411947408618370648081044119314858092966789985880558618838749736465935723939056195292855739824197002857471663879298568186432186480787651653279527172759403662173339216050188101734904266785209933959219574028078421130848836017714997715855156161485884192576525411096570236580006784778240115504215083155473114336654532035309712573054076300648084290382624057963622411854452712766764333742741748257176418629938669049475110145831487629518887622732479751575475237265720522099995921350373526902203987716 : 69507750532472367085346084912337228746816178387837305902145724990902740340906261453493181804983430954270352259318933339387663156553428977498257013788940854433875185077221541485329956941977852865228080385414325106576023043707183388455767666475760765964319171505416875758671870768626584933302663281333628704221173357732057389226499062837029509240952418376496174333892762603803062589285384322488953831431223003177508330860555239582742272499038198585218373288140815589621627484527559782229865952011217334954035920452990810018789369275957576167027755769537257879405184883984812137916446685315849149286115745766302906515505892173226915138635438510954569402243927233775051686506883472076083782064279980621264242730214739031345347222817679216851559544053578420629522958316973099844554944579111679475138982953553270312148750062945079246456995494583137319128756155523401806300210307752535816228313429423977772936418028455279862548216402692037127117587757768589280004272213589772980626157994273078319661417398611639976372137654340244375630487188935828825111531336866948322323123611477413685818666573527829021861361763437450857514341231100572444209295161667751658626948853805976740474596416451452057658726796766240200785376597638020531768736233288505744136858404441478618787650578097033772614341900470557542692778723420687211791142405032497776321129910520949836073729186723381178962179362827439758696096187396427689588801311566158931907156063431796294397591765921160203174904125078559339693430105188328844303833599797184752179795746119372810255876016918018401819830489591630660273884512697193925067545733267534582450019631974246555351372162615780242867158041648697427590855704627248056665372254007843398372145577373175765363847920463756133728297635758112057910126175856185235411835470142008684377433645699503393780376559818793145615518301626928761723329436008209339863055694239120401457092277138349621054634952092109321286736481803474867377549268227779584475351134911343993493364272770297984733322334676990951799552080657832676618570041383364583120166166116745183343724426675889570592690986446595990970242265541386599096766684211858651299950041036328082546391910636649969526404375416474754061315458458139965646012795883594117940695682624851163977114696072969143325472191850907163838698568773130922974212061179628694872164965401628798128664935264332812349055974120407121940523138887814043024839983000696680706040001557889676322240868002030960892723279992331745728915425607321411183362340366682176783400999618131787068796855842303047412293500544514610874847962206784879134802099687095703124995075766582699781411589883742234358664638767651172407552562961327781091388684006047334275720898105172085057995286056319393766006291596225804239742452630094267506837419692187598138957282758298173115657168011974773099627223014879164751294021666281080445015817233190948994444744518424442213335364691266278304151159472398065196037443859630276316933952342288624146806174930052151885903574627596971708968028931843673971013790485554941462692701879762617892987618335783130002836960406638024330733514220533961967001879389859595147279243206246266640175834315224688760181851613344606845336663669423967885059290526464453132121026804948563400700753960284388171234942967295267207409524951580408435243057012628113151473228307721643246050162931260734194754710112140695064853658748642315263267494229421206402289872414048076471788766914859431027325092081078063621341888230204494665344839152954827956746475248959868803688125951992195778914878321839058140246703160300605826428593691333523930353914662904456361040193422855364003104026560061840896998883773505156279140043190042981637174915411798799529821470223103525943766006355129608908148476427803311477211501935176253256738261751532579460332175454051434513150804978515018069453045662599267964506330671037452591657801519392715007830752050438795304433868695751157017374699087965029392221978913268126237431778766156569688977365122122803856585984206580438251177754052310277336590944035796482467984697747272419319772197805004492827622652216188915396079819312133966512047979487817528024953833862674058828026638076554779780843985764088332730079617781750828506464285532054451868949364376106752076558556087550457569857063710079645650198442338255810667410440559133069398374903941341039922353328522621534292525726538154121663371983140095660504409618666986595246724105858947424037939571311515894576932547010037710061207221217346162929470715147339181762380554827606734032265417830216580373918166393712434462653072346690104439789558210376833872094918428032326543248162130403742141246556470895170882433625540254526364977444458000864319419194855017759191838004197849553360788369518021247711742650832793637470227481445251250978117257446628838561481765638394505113577925269354007779628525160787777543871166861820536365336166341355026965853604070175182664966868591758136199026937672151571954750724849503533289016095167445658027871655758040360474523902252287836998788883218899658130469564205756267413204681011741698833501592309035016353417333777685868241124346988718866906349971250404042639595109617391160183719719894675920495719562484108306133858805522224319694608226493892061606008935774112529210975202370407410288127048869998501429748431136210553701493374644425322973333525110516082135495023336186729678731857163280816532022070396244956474529081424985703030201734727543508257498664848101462256420597348374166250720722809496710683488377485785130767564966353610399973674344887170567649554955036409412690622500029993934929530421467498029813339533715856418760116124721125395298269635766425651639598691626691527533426294779491484263272375002244708959326201987552862985393045789035964492396688328434780989892618267840623796833713673436465999493280197076619387460108691150923262456770051311170985770154905741599447783242779059200515502199797043178638384131404958502402988063204604717718646656284772808821812206983123469747508958807752033816696237486285066004641675187945881640497873087679717335445071094849905861768623887225099688086890975427767345883355328143553362985782222468045258348160731139496831534553454370489551663219076005351153487952513534499927474498658853928236855862372625169149695529189568449318891056687941863624172673715076550226082571989521608648933659873174280096718721938773918749544422183409609624800246765088423102362668998809822459007427297054524034890044286637512265496038851993669309549218368237894443130459784806040944439170445495884305658972055239720995455202354165784486223331685523750815028186499512092486226257874216000338091462328449784621347921273199394954235385802411515213769650212700808241905692538101763847750360508281342422002822842802751936385008839742826318125213269542740772581239138042436660812095273669289761838119561517626395509219637437490678499808728547836858318967471502961171897947868805509290278279311470678545082900063601310734157624412072149605527499442556960103346662859233160306196730397619437523016954868454533186194828123281435190615576684727517000705074853925325774238319639256908277626329483424264615374884108116306603373133045929498548972356473420692418712055266113171991201673627231331253210005582572579351726627709586859810733202627397133508849107645666641146569255408888823171461563103213706163932863577620323753286614134220599031758795263463594128855607768070654342005542580377587082287631458400135550067852988208767019597154387996978045390280954485771181249958398437829016818257731883610784060056291018564875620522668784012392010520034854036651934698488672269836641294949095154573709942290686610739263559669752244896231760732786264150749587867898289940946397508824396827150433987864137717889413661009106873000761782754546059043323030849555338899081715590539449404631134729457578698852732483286407467300630405001905200995401758357091766725822278860658671246099367572015400713354177678857584281301297881065376863666336067412755068819251037222309384757400952931933209838672800224695756998843499464612217100399574171341338082383707485744905354113099619097787422322830556829548081792439012630322275204904499208309802796914330228346915476674874534906864040477139694992367218230062522482019551541290583043160067178278665250512843536545830339/8777202634664656418469613948469354291704622175910658071356199118316010734605696462497329486590903726043612843363724455454661009401031810060216360047370291360842926875313821329603712963845729236886972414838352558622929233016128780065259918292155318914197166486507187314938175006100395275290517180882837068087197147646346123434829073054722011670096999945131371395341875867852323298714154216709417333618835639489915542575784112183324185210279876856737632402160455382326916487212420887503424696490429115386152192981615096697672884536766192190242787744290770449249176030685750707848192363623902143556784814121338184954557748596391619524781253269290863423981388715760864281546685485317611923844265340835105037308434515072422039377874879738535777257040200046733567274143386638869124925732846043181181042668456596921149689489036826908433736314341335658517443246166402713000862828322836759767108796623935508156328808266666345608474282019681784371068067363010878598580992668890908358513721126301573515429221049621756421901146694496238209906189396136235327951684182417061059905545612671168864760392758377800704068580036149907403811285526123795408876294904785652305687269390629945071951458326179047921021218125616806178024551933654755126107057870989727003921352623922047261130158529076749284281839552832921655818948259130987887774376668968210757543631372443840709171838617538852326191265445481179928168414549835432622766018199977785167117646047158979569839155773759370081795416246763421604163952582119857217168591696337545118365130458469807678244790679388784568824595414244793698614910915971043332549900998713480510552403417732270735387440400289544953193110803015963607541285194474205659862097000288287309223750539868640332242623674266246839828075683613234794329176217806675216896998776554066911110118703289674062104924990923851848249859485758376159185073645104257572113893405102333032067862408286530363586211116175461205566863107222246310353370225243288642837863373157409527892049268179085435795491555607164612281755295531360146285293931756890602376372747520223351523978830694909145307996786367173682850105157476170221398818141588332003822061949845447330241768628661632167926518931166895828402692295370473200432976976521027564267366706419416078775344644015657605869845469221708512039404751321527540483164844750559820005357522324564625919799312762846141239505638142805432434041620827607108681456337372064904162925087107195985476940201220096508516525793456683720644474308542167471376411406420950999992434649427565595481112373752522060780537299127460995370236543350475830663668153515783435248879286781444277217430649333492472252767640687139514367958733133530254974130358637825998205620338695637360494445575092216585733797292156547441516319546491449631594694631673296889070194306923882549189557741900207052269461287084143339662779738629803186205944833395752418645472401173073383668252526303243296451258549162708356581313760319661281312501910828516235707177664442300404346425098369954512611641079637189234650394812219521775315786145551344169963748531837807627881547339338805742024582224221802542846918437552915690479148339069352178496942650502138704550183354334967771275982856182884883604410345145372474030907962659993307507554028043011230308484260679520355502927328530940632927846584804038007829186241914414858823330039932885024174487550833852362637860238435663513469841404700545557305995183188971052001809861809007650654007262863952970587829673435829178281603698015864532626482859017530106747090266426865042715308420913873597971035153009941906231894746966445141233552962540473763951033070728159677130147626621784768991900336149228381985534257885004149373969911926885797776709997059102752017305358009976344035114024395981487093000314939732250555435897488949287653093321853266571842379830126547153729549036920425736586921429978915546918778516093722156867636325518866722336217535666498331003477638132634627991249213435182091176302670677577565734722399127122126839754873137906979140042897825180773327186107782358301598484429181972437533763096667540336799469916045994912894610236181757835890140456407282093820921331881397198031201806216839610657284536504047281023579371131665734922904783866053235055015484394231764871237521785209393140289972362822884698146735033869769807549548779661871984545890937366100764862752077541471879902725244171355503186858987340568653897720381139435047791688776039301231950529094089817104487021365774884635280722457315018869830090037657039654965257397585689745860848806080722324690454727167134796584337791682015999233300868673456979466278251826600136599720017818848698779758688691918894128748031630893532250123779838884996425955415992574754652695471474767343587245726406182329176580668679631580223267360877256596461563334787944637542846456003351881471892257601671651341308712166270108181805782122982299137666312282824306647583624989073037156649292242893852013070783701226599766146202154238306157049028348480462864932642097446906773742238570133289242826002282946536785782631009525916059738969291259705871715683772568965664699184773740777712280482775715935455756751395498817549793477456695998417768684467983269041614690206698498909725866487702121622536802483618917350587087891384930912518521265889031386250990003952152261722048547638232646168126613432038070424105065485796202996320485568682118016321862991167478455321768014738438128754185596772619279406462443827534130056963704405044935348653225114174790780149887687584785402522884028658283633163787720911708992540575864705914353934417022645514220709046357627647564357425618692995340374864339748045031028032966569698636510582668467236125447745062341617030025111490371401286165137059118074743270736440501258472891346127872462667232679068748804116025413959488157931312477561100145945712612949914862104815594794999249841964321517684673200434567618964243800455864894829894043777275010741006099373491983843077511497917420505703059952495862468361739338812515699756953620334640658192876793829236073434573741656623088407453108097245564725213198272826916289602134142739564249419567762878290463270408574922022076602439982512896910184602997529065846894510496699101826636306655857341162487765985162833363062389559946058083666923986012243148445786523825708285335809402307726828299187452636342562264850250738647008337004073648588663717624964591712796156176051811303587008695802238443000659360262822274201157058989171140605363757262715039711836435267201104911185310881209587787085902214067011120249206920930390092002013926528617002840598652739858626032863148313350990570099636466948315037251279483584298262932251406595483378246785807535611749633763058037897359717040868961405818284099617948849433049436575391579300119851928529756422622723306396869676275970029554443585678951027916894843975060149675530799724137558236286542362269953910096002601935118460926676401647670047620142445433931766004114804178116427565700418306645902126388362468825507459689300060886321266370562693571126749666200854272660692183292992040934302422995705006352074594711460294611939259261990678024511944216638670729114815642321952002090729369791294839378460346154543144485335133251656077032220236396898394049498414051866917754549414591999079474261211591565618751362796416003292400024736984929388629675723337894829694678315572922020740117800916410586433480654470193683502380154010623569116062721330283590512559073440611814680505380164173037776902864905674592267882660788637277151746170675972785796521763743850811174924692847537634127068551433245821239015967841828418808462387269982701615334310642615270000597356296924059014371085566415963366508145631521668442026871730773601632225364810675619141557082650914857422106840779056690605019373338452926911636721603272354085502450891772104100900200203340986151393083430098829384078587811871853218736995410768637701928342702341028551096278610195164544381986282542501180011145924731329800182726709312542976363803939534678835835091124774694956557780540118230307538308952774648215896693134720253916124375172749362746149820510983790565063947896610874257640717747888548524543428355124635426818380492010394012815017012410033244913371895812784414682215359988271517692568379869831496525990733952996020705390426883252871127913736 : 1)
len(str(P))
27267

The Rank

E = EllipticCurve([0,0,1,-1,0]) E.rank()
1
E.rank?

File: /home/wstein/sage/sage-4.8.alpha5/local/lib/python2.6/site-packages/sage/schemes/elliptic_curves/ell_rational_field.py

Type: <type ‘instancemethod’>

Definition: E.rank(use_database=False, verbose=False, only_use_mwrank=True, algorithm=’mwrank_lib’, proof=None)

Docstring:

Return the rank of this elliptic curve, assuming no conjectures.

If we fail to provably compute the rank, raises a RuntimeError exception.

INPUT:

  • use_database (bool) - (default: False), if True, try to look up the regulator in the Cremona database.
  • verbose - (default: None), if specified changes the verbosity of mwrank computations. algorithm -
  • - 'mwrank_shell' - call mwrank shell command
  • - 'mwrank_lib' - call mwrank c library
  • only_use_mwrank - (default: True) if False try using analytic rank methods first.
  • proof - bool or None (default: None, see proof.elliptic_curve or sage.structure.proof). Note that results obtained from databases are considered proof = True

OUTPUT:

  • rank (int) - the rank of the elliptic curve.

IMPLEMENTATION: Uses L-functions, mwrank, and databases.

EXAMPLES:

sage: EllipticCurve('11a').rank()
0
sage: EllipticCurve('37a').rank()
1
sage: EllipticCurve('389a').rank()
2
sage: EllipticCurve('5077a').rank()
3
sage: EllipticCurve([1, -1, 0, -79, 289]).rank()   # This will use the default proof behavior of True
4
sage: EllipticCurve([0, 0, 1, -79, 342]).rank(proof=False)
5
sage: EllipticCurve([0, 0, 1, -79, 342]).simon_two_descent()[0]
5

Examples with denominators in defining equations:

sage: E = EllipticCurve([0, 0, 0, 0, -675/4])
sage: E.rank()
0
sage: E = EllipticCurve([0, 0, 1/2, 0, -1/5])
sage: E.rank()
1
sage: E.minimal_model().rank()
1

A large example where mwrank doesn’t determine the result with certainty:

sage: EllipticCurve([1,0,0,0,37455]).rank(proof=False)
0
sage: EllipticCurve([1,0,0,0,37455]).rank(proof=True)
Traceback (most recent call last):
...
RuntimeError: Rank not provably correct.

Try a random curve (if you try a different one it could take a long time -- press "escape" with the cursor in the box to interrupt):

E = EllipticCurve([2012,0]) print E print E.rank() print E.gens()
Elliptic Curve defined by y^2 = x^3 + 2012*x over Rational Field 1 [(2311250/580665409 : 39597102455400/13992294360673 : 1)]

A family

def F(a): return EllipticCurve([0,(a-1),1,-a,0]) for a in [0..20]: print a, F(a).rank()
0 0 1 1 2 2 3 2 4 3 5 2 6 2 7 3 8 3 9 3 10 2 11 3 12 3 13 3 14 3 15 2 16 4 17 3 18 2 19 3 20 3

Exercise: Find the first aa such that F(a)F(a) has rank 55.  

Elkies Curve of Rank (at least) 28

E = EllipticCurve([1,-1,1,-20067762415575526585033208209338542750930230312178956502, 34481611795030556467032985690390720374855944359319180361266008296291939448732243429])

That the first few good ap=p+1#E(Fp)a_p=p+1-\#E(F_p) are negative is evidence that EE has high rank:

D = E.discriminant(); [p for p in primes(1000) if D%p==0]
[2, 3, 5, 7, 11, 13, 17, 19]
for p in primes(20,200): print E.ap(p),
-9 -10 -8 -11 -10 -12 -12 -9 -12 -15 -16 -16 -15 -13 -18 -16 -13 -6 -20 -12 -20 -19 -11 -16 -10 -22 -17 -9 -24 -12 -23 -22 -7 -10 -7 -22 -22 -25

Exercise: What is the smallest good prime pp such that ap>0a_p>0?

P = [E([-2124150091254381073292137463, 259854492051899599030515511070780628911531]), E([2334509866034701756884754537, 18872004195494469180868316552803627931531]), E([-1671736054062369063879038663, 251709377261144287808506947241319126049131]), E([2139130260139156666492982137, 36639509171439729202421459692941297527531]), E([1534706764467120723885477337, 85429585346017694289021032862781072799531]), E([-2731079487875677033341575063, 262521815484332191641284072623902143387531]), E([2775726266844571649705458537, 12845755474014060248869487699082640369931]), E([1494385729327188957541833817, 88486605527733405986116494514049233411451]), E([1868438228620887358509065257, 59237403214437708712725140393059358589131]), E([2008945108825743774866542537, 47690677880125552882151750781541424711531]), E([2348360540918025169651632937, 17492930006200557857340332476448804363531]), E([-1472084007090481174470008663, 246643450653503714199947441549759798469131]), E([2924128607708061213363288937, 28350264431488878501488356474767375899531]), E([5374993891066061893293934537, 286188908427263386451175031916479893731531]), E([1709690768233354523334008557, 71898834974686089466159700529215980921631]), E([2450954011353593144072595187, 4445228173532634357049262550610714736531]), E([2969254709273559167464674937, 32766893075366270801333682543160469687531]), E([2711914934941692601332882937, 2068436612778381698650413981506590613531]), E([20078586077996854528778328937, 2779608541137806604656051725624624030091531]), E([2158082450240734774317810697, 34994373401964026809969662241800901254731]), E([2004645458247059022403224937, 48049329780704645522439866999888475467531]), E([2975749450947996264947091337, 33398989826075322320208934410104857869131]), E([-2102490467686285150147347863, 259576391459875789571677393171687203227531]), E([311583179915063034902194537, 168104385229980603540109472915660153473931]), E([2773931008341865231443771817, 12632162834649921002414116273769275813451]), E([2156581188143768409363461387, 35125092964022908897004150516375178087331]), E([3866330499872412508815659137, 121197755655944226293036926715025847322531]), E([2230868289773576023778678737, 28558760030597485663387020600768640028531])]
P[0] + P[1]
(3108017602820373171270912268547263377137814553518653/1146511727644798490358769 : 1802558090655926570845589254141496753576572784929653778538438661217456501493/1227630733053376047702643420235410103 : 1)
time E.regulator_of_points(P[:7])
3.04313979267944e11 Time: CPU 2.64 s, Wall: 2.77 s
time E.regulator_of_points(P[:15])
1.97964758730350e23 Time: CPU 12.00 s, Wall: 12.00 s

The following takes about 60 seconds (on my laptop), and shows that the 28 points are independent:

time E.regulator_of_points(P)
points([(x,y) for x,y,_ in P]) + plot(E, color='grey', xmax=2e28, ymin=-50)

Primes

prime_range(50)
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]
primes(50)
<generator object primes at 0x5c53d20>
Primes()
Set of all prime numbers: 2, 3, 5, 7, ...
for p in primes(50): print p,
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47
@interact def _(n=(20,30,..,2000)): prime_pi.plot(0, n).show(figsize=[12,3],gridlines=True)
time p = 2^43112609 - 1
Time: CPU 0.00 s, Wall: 0.01 s

It takes a while to compute the string representation of pp.

time s_bigp = str(2^43112609 - 1) len(s_bigp)
Time: CPU 11.71 s, Wall: 11.72 s 12978189
@interact def _(digits = (5,20,..,10000)): print "Showing %.5f percent of the digits"%(100*2.0*digits/len(s_bigp)) print "p = " + s_bigp[:digits] + ' ... ' + s_bigp[-digits:]
E = EllipticCurve([0,0,1,-1,0]); E
Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field
E23 = E.change_ring(GF(23)); E23
Elliptic Curve defined by y^2 + y = x^3 + 22*x over Finite Field of size 23
E23.plot(pointsize=50, figsize=4, gridlines=True)

Exercise: Make an interact that has a slider letting you select a prime, which plots the graph of EE modulo that prime.

The L-Series

E = EllipticCurve([0,0,1,-1,0]) L = E.lseries(); L
Complex L-series of the Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field
show(line([(x,L(x)) for x in [1.5,1.6, .., 8]]), figsize=[8,3], xmin=0, ymin=0)
@interact def _(E = ['y^2 + y = x^3 - x^2', 'y^2 + y = x^3 - x', 'a rank 4 curve', 'elkies rank>=28 curve', '2012'], B = (30..1000)): if E == 'y^2 + y = x^3 - x^2': E = EllipticCurve([0,-1,1,0,0]) r = E.rank() elif E == 'y^2 + y = x^3 - x': E = EllipticCurve([0,0,1,-1,0]) r = E.rank() elif E == 'a rank 4 curve': E = EllipticCurve([1, -1, 0, -79, 289]) r = 4 elif E == 'elkies rank>=28 curve': E = EllipticCurve([1,-1,1, -20067762415575526585033208209338542750930230312178956502, 34481611795030556467032985690390720374855944359319180361266008296291939448732243429]) r = ">=28" elif E == '2012': E = EllipticCurve([0,2012]) r = "?" L_approx = 1 print '%4s%6s%5s%9s%20s'%('p', 'A(p)', 'p/Ap', ' prod p/Ap', 'Rank = %s'%r) v = [] t = '' for p in primes(B): if E.discriminant()%p: Ap = p+1-E.ap(p) L_approx *= float(p/Ap) t += '%4s%4s%8.3f%8.3f\n'%(p, Ap, float(p/Ap), L_approx) v.append((p, L_approx)) (line(v) + points(v,color='black')).show(figsize=[8,2]) print t

Natural (analytic) continuation

var('x') f = 1/(1-x) plot(f, -6, 2, figsize=[4,2], ymax=5, ymin=-5)
f.taylor(x,0,5)
x^5 + x^4 + x^3 + x^2 + x + 1

The Birch and Swinnerton-Dyer Conjecture:

A Rank 1 Curve

E = EllipticCurve([0,0,1,-1,0]) L = E.lseries() Lser = L.taylor_series(); Lser
0.305999773834052*z + 0.186547797268162*z^2 - 0.136791463097188*z^3 + 0.0161066468496401*z^4 + 0.0185955175398802*z^5 + O(z^6)
c = Lser[1]; c
0.305999773834052
Omega_E = E.period_lattice().omega(); Omega_E
5.98691729246392
Reg_E = E.regulator(); Reg_E
0.0511114082399688
# this *uses* the formula; but we do know in this case that Sha_E=1. Sha_E = E.sha().an(); Sha_E
1
prod_cp = E.tamagawa_product_bsd(); prod_cp
1
T = E.torsion_order()^2; T
1
Omega_E * Reg_E * Sha_E * prod_cp / T^2
0.305999773834052

A Rank 2 Curve

E = EllipticCurve([0,1,1,-2,0]) L = E.lseries() Lser = L.taylor_series(); Lser
-2.69129566562797e-23 + (1.52514901968783e-23)*z + 0.759316500288427*z^2 - 0.430302337583362*z^3 - 0.193509313829981*z^4 + 0.459971558373642*z^5 + O(z^6)
E.rank()
2

If you solve for the order of the Shafarevich-Tate group in the conjecture:

E.sha().an()
1.00000000000000
S = E.sha(); S
Tate-Shafarevich group for the Elliptic Curve defined by y^2 + y = x^3 + x^2 - 2*x over Rational Field

The following proves that p=5p=5 does not divide the order of this group:

S.p_primary_bound(5)
0

Open Problem: Prove that the Shafarevich-Tate group of the specific curve EE given above is finite.

A Rank 4 Curve

E = EllipticCurve([0,15,1,-16,0]); E
Elliptic Curve defined by y^2 + y = x^3 + 15*x^2 - 16*x over Rational Field
E.rank()
4
E.gens()
[(-15 : 15 : 1), (-14 : 20 : 1), (-51/4 : 187/8 : 1), (22 : 132 : 1)]
L = E.lseries() Lser = L.taylor_series(); Lser
4.32638791417839e-24 + (-1.96674959799307e-23)*z + (2.05660099586894e-22)*z^2 + (-7.97704812013524e-22)*z^3 + 10.8463853245874*z^4 - 49.3070071384507*z^5 + O(z^6)

Open Problem:  Prove that L(E,s)L(E,s) vanishes to order 44 at s=1s=1 for the specific curve EE above.   (Or for any curve at all!)