︠4c69289f-ccda-4352-9ded-3886ac346731i︠ %html
This worksheet accompanies these slides.
︡a733f9af-41e7-4221-84c9-4c294003e8d3︡{"html": "\n
\n
\n
\n
This worksheet accompanies these slides.
"}︡ ︠6aa5af20-b3ee-4d34-9bde-00b38adf92a6i︠ %htmlHow the figure in the slide was made:
︡f598618c-9769-427b-bf81-587aa9afaeac︡{"html": "How the figure in the slide was made:
"}︡ ︠72ed4512-2828-4ac0-bc96-1244ae70b088︠ 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) ︡911618b9-4d2c-4e18-849c-e56648b7b71c︡{"stdout": "Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field"}︡{"html": "Mark Watkins's Curve
︡516d7565-a264-494d-9923-3c9ba7d0bb69︡{"html": "Mark Watkins's Curve
"}︡ ︠55629e41-725f-4c4a-82d2-7a2b5cc55bd9︠ E = EllipticCurve([0, 0, 1, -5115523309, -140826120488927]) n = 367770537186677506614005642341827170087932269492285584726218770061653546349271015805365134370326743061141306464500052886704651998399766478840791915307861741507273933802628157325092479708268760217101755385871816780548765478502284415627682847192752681899094962659937870630036760359293577021806237483971074931228416346507852381696883227650072039964481597215995993299744934117106289850389364006552497835877740257534533113775202882210048356163645919345794812074571029660897173224370337701056165735008590640297090298709121506266697266461993201825397369999550868142294312756322177410730532828064759604975369242350993568030726937049911607264109782746847951283794119298941214490794330902986582991229569401523519938742746376107190770204010513818349012786637889254711059455555173810904911927619899031855149292325338589831979737026402711049742594116000380601480839982975557506035851728035645241044229165029649347049289119188596869401159325131363345962579503132339847275422440094553824705189225653677459512863117911721838552934309124508134493366437408093924362039749911907416973504142322111757058584200725022632116164720164998641729522677460525999499077942125820428879526063735692685991018516862938796047597323986537154171248316943796373217191993996993714654629536884396057924790938647656663281596178145722116098216500930333824321806726937018190136190556573208807048355335567078793126656928657859036779350593274598717379730880724034301867739443749841809456715884193720328901461552659882628405842209756757167816662139945081864642108533595989975716259259240152834050940654479617147685922500856944449822045386092122409096978544817218847897640513477806598329177604246380812377739049184475550777341620985976570393037880282764967019552408400730754822676441481715385344001979832232652414888335865567377214360456003296961668177481944809066257442596772347829664126972931904101685281128944780074646796760942430959617022257479874089403564965038885379817866920048929814520268493677507059073765902671638087366488496702836326268574593123245107420348878101763123893347657020275591248824247800594270862052082185973393290009189867677259458080676065098703453539525576975639543700507625640729872340789406314394468400584455920683361976200121834430751233901473228497490561998078486251074993528871318797403348087370426900997556442577081254910572185107856605139877331015042842121106080690743578173268489400499056898312621953947967012358414547752897081097091795744203697684046066255663201242292760126759871266004516377432961917272040217147083563399987612420595275792033855676991823368254862159558450043808051481533297270035287382247038279293223946385070118082306958987268603396924054403103857444058848605587415400517670032631121206127732481340391088277796488544415738156553014768406246154666005139690428085145098272500791416214774673484501826722500527091164944262537169595848931680754096774712860490572746224094031187043204526107239201079603468297522895106598567437015083348797875364162797693968819804139548885751282687152237078260358705230284426203064493684250614282879918107733796207067250003823959412935677624093236047038637365577326399589008804507786011973155927731073034706536557461443806622707622411087809371872157210456836892493613836792026761820382217165481998924123604782787923229739171920575447007099501678380795077013113325989801385729993920818301654424251339564606876820121928372246213399859213282792511168043953443839793901139974194479300297566097664539199384651908436188732428818373302383046388859427937893841888014266685177616605644783704135794931830750265686335934066565240944049448213005591997128985560760260399214278635912634351586762354869354021530746189992899582554597632108309638569296964800046983072736238483149014714600896056552029642747991419063454749142059564274298254654925893866404955146903330024475746163543714996249652420171171054231726336493541586971431778944051481059633738399411418574323811770949729726843612672925000631355659834164200554441315451003433452466204707123811663623662837296862948061758759928631763661985185615801886205770721032006304144867787347058316392295671580091655872087209485913286930128858640442589125454268580397484571921012318872311624898317615607628176460097441336323549031828235965636277950827328087547939511112374216436584203379248450122647406094035171130740663723547675939885959363881135893035102018389444212746146250328348242610673524022378994978392020098814721974502062692815736689229759065822093942795318705345275598989426335235935505605311411301560321192269430861733743544402908586497305353600909431214933202522528717109214492959330016065810287623144179288466664888540622702346704213752456372574449563979215782406566937885352945871994541770838871930542220307771671498466518108722622109421676741544945695403509866953167277628280232464839215003474048896968037544660029755740065581270139083249903212572230417942249795467100700393944310325009677179182109970943346807335014446839612282508824324073679584122851208360459166315484891952299449340025896509298935939357721723543933108743241997387447018395925320167637640328407957069845439501381234605867495003402016724626400855369636521155009147176245904149069225438646928549072337653348704931901764847439772432025275648964681387210234070849306330191790380412396115446240832583481366372132300849060835262136832315311052903367503857437920508931305283143379423930601369154572530677278862066638884250221791647123563828956462530983567929499493346622977494903591722345188975062941907415400740881 d = 4255044272974739888318147243888463149102796676262869844129037001939069082536978320669489250948915984539247906005086523932696054371186522388041546915099800544500632766713011953565768977996873028383821265775526344346357123541112589188755147040471997532333827695072210398747506143870850088480631610375575105629402969923379906696883632426726640777829238424687657347645525014899047899951815906638258828268844376147020866010729124602050467189871119197597417729240821079066147681882592877855973838960678143778693770394049052970155019875224052204788541398018355615590746004686807306334375342979728237142659598012537711708303192309484750118781539765280348857873798901748823243463804440411715478920014959236515352089221657498291013202443206177483221913021678256235579893414436481218449503035888524081157406195476643835666127064380642209659344205748056981879653000401688873470706248622814904782273476309064826525609405548233605225179645823497793346631337770093238960301538846226719138651429924452362996719692807033817042217290429195445858873566571767269091258248510098997241843386892960591348792269127155872118132361370012052090648575376001600422257728323075912369868818631162455043825487235531941123620115037512323584244014680824673299882453235229917216799756372612183353210236861955788541952734145558006820535219145300448204001164810277892288105257230476250805684254277696678157719267749527423894682341440235747396742183997177247946449079490990330823304497772932137791366115383255184513570505904177076177300233520471453051372851804227351360933685976190213408007425987495648991648328355841518790233089971640826391421865446416159176533305374315501526687536310287865258225341831409297024404559487986223470061428509852910119956281813557240650373612303806124216826476191582759712062169110751021106200222502921039737582807865453212930003461175559301081459151181543779910592339627452978630170354145224288258324811018569690301921451517013795632224485059295610701352935567534896297148895118420851960225883402515530058117374260152928631522919378979184864047046497461715005662259748200507982418704000034189585130679648460399502892795419432308411176961777683169393789440445404586765622160449971094877274592261820143359041089932670055512981474178136881417476003157917937418370366564607602590842864145040169169286533733737493516731388736973556780735684454625005971249995694287683482906944701313969575867184534505315069252495619031118665012176098178260784016899909892825429476690659575409055152654378882121107387001622680468831012826136445746750138118199895452299627549452761944871112397182275542812517516928333071853473496479471177474588594469094399278566301150327219929702835948186371102871019478295556041049945697905300902151612670328014420769784258843405782906849447056638422038734349468953136934102682055490426413327292140435307812777834009325214610658460505162660636930982933352215314240689644147222987920125050724733503025375041491926808614281199118113561510206345027387417895539605603362871722363164659754529932197179572083803798469762841343018748973041067954703588990548236248494723651739045289521882710298950201026345472967707812057733059495444795253020394607206147343184720128913820279471137168459793296576793911217963424221938088255273195906782364624214705153806102237088023259111661251016558078055448107365117361120157257882079830434627788427533485656242565476771106266450533897646444735950588164991426098055565123345308087041154716116620172732104619949757331380529168978624213449372249365401328137208190879603847948651527305255792412098085899417962189727321732456666040832323196614881188508752637063922635721727888588861006697067295082662856621427895550981270983075947338227409588860804832689778730985756946228133612817693848327597742540052216739363382567028776997268926223424246381649078824848145698957882084132643790230707482558729729822722846435295235634841524505128041497093453481500336383856658648609091424412441302475261926217094416160502075408493720494216372326712489077723971624589353187301664632745253191939259669507578605710768387023661969449344902879751178806889386035847044662250758843856626244205371560027873450866832479574095908011314904455539494729790898211989993923922058120117863241965534093749668627907690962871059220070919266871471817412365375430285359965804594745527651369886073387194293961511036178306538077683719722004972020545664652037380978094038493268487752662394679129427435458023391430136004830903182108442372425264218315757261837807638185861100198403815128178367563386992036547922694358498639362771798041618046013662235878191246173024597377861825966407677879013966448260355004133249471832418523346215677130183097110890998963907589116151288296464688754418004789058613210310227152010490547650753213820137599826132566513659030867731020594559477466913485854520908208415598659344363758912591077035997911074276473287555243814780228662308363850635352393782937914498292574951022872659981964923226850485187083410037527178126285256712196330538305579411947408618370648081044119314858092966789985880558618838749736465935723939056195292855739824197002857471663879298568186432186480787651653279527172759403662173339216050188101734904266785209933959219574028078421130848836017714997715855156161485884192576525411096570236580006784778240115504215083155473114336654532035309712573054076300648084290382624057963622411854452712766764333742741748257176418629938669049475110145831487629518887622732479751575475237265720522099995921350373526902203987716 P = E.lift_x(n/d) ︡66579a89-db9e-4847-8336-f60be0f4a831︡︡ ︠a0da7d87-9436-4229-bb78-1facf386c560︠ P ︡78856459-450c-46fc-a2bd-6f0d5dd45e90︡{"stdout": "(367770537186677506614005642341827170087932269492285584726218770061653546349271015805365134370326743061141306464500052886704651998399766478840791915307861741507273933802628157325092479708268760217101755385871816780548765478502284415627682847192752681899094962659937870630036760359293577021806237483971074931228416346507852381696883227650072039964481597215995993299744934117106289850389364006552497835877740257534533113775202882210048356163645919345794812074571029660897173224370337701056165735008590640297090298709121506266697266461993201825397369999550868142294312756322177410730532828064759604975369242350993568030726937049911607264109782746847951283794119298941214490794330902986582991229569401523519938742746376107190770204010513818349012786637889254711059455555173810904911927619899031855149292325338589831979737026402711049742594116000380601480839982975557506035851728035645241044229165029649347049289119188596869401159325131363345962579503132339847275422440094553824705189225653677459512863117911721838552934309124508134493366437408093924362039749911907416973504142322111757058584200725022632116164720164998641729522677460525999499077942125820428879526063735692685991018516862938796047597323986537154171248316943796373217191993996993714654629536884396057924790938647656663281596178145722116098216500930333824321806726937018190136190556573208807048355335567078793126656928657859036779350593274598717379730880724034301867739443749841809456715884193720328901461552659882628405842209756757167816662139945081864642108533595989975716259259240152834050940654479617147685922500856944449822045386092122409096978544817218847897640513477806598329177604246380812377739049184475550777341620985976570393037880282764967019552408400730754822676441481715385344001979832232652414888335865567377214360456003296961668177481944809066257442596772347829664126972931904101685281128944780074646796760942430959617022257479874089403564965038885379817866920048929814520268493677507059073765902671638087366488496702836326268574593123245107420348878101763123893347657020275591248824247800594270862052082185973393290009189867677259458080676065098703453539525576975639543700507625640729872340789406314394468400584455920683361976200121834430751233901473228497490561998078486251074993528871318797403348087370426900997556442577081254910572185107856605139877331015042842121106080690743578173268489400499056898312621953947967012358414547752897081097091795744203697684046066255663201242292760126759871266004516377432961917272040217147083563399987612420595275792033855676991823368254862159558450043808051481533297270035287382247038279293223946385070118082306958987268603396924054403103857444058848605587415400517670032631121206127732481340391088277796488544415738156553014768406246154666005139690428085145098272500791416214774673484501826722500527091164944262537169595848931680754096774712860490572746224094031187043204526107239201079603468297522895106598567437015083348797875364162797693968819804139548885751282687152237078260358705230284426203064493684250614282879918107733796207067250003823959412935677624093236047038637365577326399589008804507786011973155927731073034706536557461443806622707622411087809371872157210456836892493613836792026761820382217165481998924123604782787923229739171920575447007099501678380795077013113325989801385729993920818301654424251339564606876820121928372246213399859213282792511168043953443839793901139974194479300297566097664539199384651908436188732428818373302383046388859427937893841888014266685177616605644783704135794931830750265686335934066565240944049448213005591997128985560760260399214278635912634351586762354869354021530746189992899582554597632108309638569296964800046983072736238483149014714600896056552029642747991419063454749142059564274298254654925893866404955146903330024475746163543714996249652420171171054231726336493541586971431778944051481059633738399411418574323811770949729726843612672925000631355659834164200554441315451003433452466204707123811663623662837296862948061758759928631763661985185615801886205770721032006304144867787347058316392295671580091655872087209485913286930128858640442589125454268580397484571921012318872311624898317615607628176460097441336323549031828235965636277950827328087547939511112374216436584203379248450122647406094035171130740663723547675939885959363881135893035102018389444212746146250328348242610673524022378994978392020098814721974502062692815736689229759065822093942795318705345275598989426335235935505605311411301560321192269430861733743544402908586497305353600909431214933202522528717109214492959330016065810287623144179288466664888540622702346704213752456372574449563979215782406566937885352945871994541770838871930542220307771671498466518108722622109421676741544945695403509866953167277628280232464839215003474048896968037544660029755740065581270139083249903212572230417942249795467100700393944310325009677179182109970943346807335014446839612282508824324073679584122851208360459166315484891952299449340025896509298935939357721723543933108743241997387447018395925320167637640328407957069845439501381234605867495003402016724626400855369636521155009147176245904149069225438646928549072337653348704931901764847439772432025275648964681387210234070849306330191790380412396115446240832583481366372132300849060835262136832315311052903367503857437920508931305283143379423930601369154572530677278862066638884250221791647123563828956462530983567929499493346622977494903591722345188975062941907415400740881/4255044272974739888318147243888463149102796676262869844129037001939069082536978320669489250948915984539247906005086523932696054371186522388041546915099800544500632766713011953565768977996873028383821265775526344346357123541112589188755147040471997532333827695072210398747506143870850088480631610375575105629402969923379906696883632426726640777829238424687657347645525014899047899951815906638258828268844376147020866010729124602050467189871119197597417729240821079066147681882592877855973838960678143778693770394049052970155019875224052204788541398018355615590746004686807306334375342979728237142659598012537711708303192309484750118781539765280348857873798901748823243463804440411715478920014959236515352089221657498291013202443206177483221913021678256235579893414436481218449503035888524081157406195476643835666127064380642209659344205748056981879653000401688873470706248622814904782273476309064826525609405548233605225179645823497793346631337770093238960301538846226719138651429924452362996719692807033817042217290429195445858873566571767269091258248510098997241843386892960591348792269127155872118132361370012052090648575376001600422257728323075912369868818631162455043825487235531941123620115037512323584244014680824673299882453235229917216799756372612183353210236861955788541952734145558006820535219145300448204001164810277892288105257230476250805684254277696678157719267749527423894682341440235747396742183997177247946449079490990330823304497772932137791366115383255184513570505904177076177300233520471453051372851804227351360933685976190213408007425987495648991648328355841518790233089971640826391421865446416159176533305374315501526687536310287865258225341831409297024404559487986223470061428509852910119956281813557240650373612303806124216826476191582759712062169110751021106200222502921039737582807865453212930003461175559301081459151181543779910592339627452978630170354145224288258324811018569690301921451517013795632224485059295610701352935567534896297148895118420851960225883402515530058117374260152928631522919378979184864047046497461715005662259748200507982418704000034189585130679648460399502892795419432308411176961777683169393789440445404586765622160449971094877274592261820143359041089932670055512981474178136881417476003157917937418370366564607602590842864145040169169286533733737493516731388736973556780735684454625005971249995694287683482906944701313969575867184534505315069252495619031118665012176098178260784016899909892825429476690659575409055152654378882121107387001622680468831012826136445746750138118199895452299627549452761944871112397182275542812517516928333071853473496479471177474588594469094399278566301150327219929702835948186371102871019478295556041049945697905300902151612670328014420769784258843405782906849447056638422038734349468953136934102682055490426413327292140435307812777834009325214610658460505162660636930982933352215314240689644147222987920125050724733503025375041491926808614281199118113561510206345027387417895539605603362871722363164659754529932197179572083803798469762841343018748973041067954703588990548236248494723651739045289521882710298950201026345472967707812057733059495444795253020394607206147343184720128913820279471137168459793296576793911217963424221938088255273195906782364624214705153806102237088023259111661251016558078055448107365117361120157257882079830434627788427533485656242565476771106266450533897646444735950588164991426098055565123345308087041154716116620172732104619949757331380529168978624213449372249365401328137208190879603847948651527305255792412098085899417962189727321732456666040832323196614881188508752637063922635721727888588861006697067295082662856621427895550981270983075947338227409588860804832689778730985756946228133612817693848327597742540052216739363382567028776997268926223424246381649078824848145698957882084132643790230707482558729729822722846435295235634841524505128041497093453481500336383856658648609091424412441302475261926217094416160502075408493720494216372326712489077723971624589353187301664632745253191939259669507578605710768387023661969449344902879751178806889386035847044662250758843856626244205371560027873450866832479574095908011314904455539494729790898211989993923922058120117863241965534093749668627907690962871059220070919266871471817412365375430285359965804594745527651369886073387194293961511036178306538077683719722004972020545664652037380978094038493268487752662394679129427435458023391430136004830903182108442372425264218315757261837807638185861100198403815128178367563386992036547922694358498639362771798041618046013662235878191246173024597377861825966407677879013966448260355004133249471832418523346215677130183097110890998963907589116151288296464688754418004789058613210310227152010490547650753213820137599826132566513659030867731020594559477466913485854520908208415598659344363758912591077035997911074276473287555243814780228662308363850635352393782937914498292574951022872659981964923226850485187083410037527178126285256712196330538305579411947408618370648081044119314858092966789985880558618838749736465935723939056195292855739824197002857471663879298568186432186480787651653279527172759403662173339216050188101734904266785209933959219574028078421130848836017714997715855156161485884192576525411096570236580006784778240115504215083155473114336654532035309712573054076300648084290382624057963622411854452712766764333742741748257176418629938669049475110145831487629518887622732479751575475237265720522099995921350373526902203987716 : 69507750532472367085346084912337228746816178387837305902145724990902740340906261453493181804983430954270352259318933339387663156553428977498257013788940854433875185077221541485329956941977852865228080385414325106576023043707183388455767666475760765964319171505416875758671870768626584933302663281333628704221173357732057389226499062837029509240952418376496174333892762603803062589285384322488953831431223003177508330860555239582742272499038198585218373288140815589621627484527559782229865952011217334954035920452990810018789369275957576167027755769537257879405184883984812137916446685315849149286115745766302906515505892173226915138635438510954569402243927233775051686506883472076083782064279980621264242730214739031345347222817679216851559544053578420629522958316973099844554944579111679475138982953553270312148750062945079246456995494583137319128756155523401806300210307752535816228313429423977772936418028455279862548216402692037127117587757768589280004272213589772980626157994273078319661417398611639976372137654340244375630487188935828825111531336866948322323123611477413685818666573527829021861361763437450857514341231100572444209295161667751658626948853805976740474596416451452057658726796766240200785376597638020531768736233288505744136858404441478618787650578097033772614341900470557542692778723420687211791142405032497776321129910520949836073729186723381178962179362827439758696096187396427689588801311566158931907156063431796294397591765921160203174904125078559339693430105188328844303833599797184752179795746119372810255876016918018401819830489591630660273884512697193925067545733267534582450019631974246555351372162615780242867158041648697427590855704627248056665372254007843398372145577373175765363847920463756133728297635758112057910126175856185235411835470142008684377433645699503393780376559818793145615518301626928761723329436008209339863055694239120401457092277138349621054634952092109321286736481803474867377549268227779584475351134911343993493364272770297984733322334676990951799552080657832676618570041383364583120166166116745183343724426675889570592690986446595990970242265541386599096766684211858651299950041036328082546391910636649969526404375416474754061315458458139965646012795883594117940695682624851163977114696072969143325472191850907163838698568773130922974212061179628694872164965401628798128664935264332812349055974120407121940523138887814043024839983000696680706040001557889676322240868002030960892723279992331745728915425607321411183362340366682176783400999618131787068796855842303047412293500544514610874847962206784879134802099687095703124995075766582699781411589883742234358664638767651172407552562961327781091388684006047334275720898105172085057995286056319393766006291596225804239742452630094267506837419692187598138957282758298173115657168011974773099627223014879164751294021666281080445015817233190948994444744518424442213335364691266278304151159472398065196037443859630276316933952342288624146806174930052151885903574627596971708968028931843673971013790485554941462692701879762617892987618335783130002836960406638024330733514220533961967001879389859595147279243206246266640175834315224688760181851613344606845336663669423967885059290526464453132121026804948563400700753960284388171234942967295267207409524951580408435243057012628113151473228307721643246050162931260734194754710112140695064853658748642315263267494229421206402289872414048076471788766914859431027325092081078063621341888230204494665344839152954827956746475248959868803688125951992195778914878321839058140246703160300605826428593691333523930353914662904456361040193422855364003104026560061840896998883773505156279140043190042981637174915411798799529821470223103525943766006355129608908148476427803311477211501935176253256738261751532579460332175454051434513150804978515018069453045662599267964506330671037452591657801519392715007830752050438795304433868695751157017374699087965029392221978913268126237431778766156569688977365122122803856585984206580438251177754052310277336590944035796482467984697747272419319772197805004492827622652216188915396079819312133966512047979487817528024953833862674058828026638076554779780843985764088332730079617781750828506464285532054451868949364376106752076558556087550457569857063710079645650198442338255810667410440559133069398374903941341039922353328522621534292525726538154121663371983140095660504409618666986595246724105858947424037939571311515894576932547010037710061207221217346162929470715147339181762380554827606734032265417830216580373918166393712434462653072346690104439789558210376833872094918428032326543248162130403742141246556470895170882433625540254526364977444458000864319419194855017759191838004197849553360788369518021247711742650832793637470227481445251250978117257446628838561481765638394505113577925269354007779628525160787777543871166861820536365336166341355026965853604070175182664966868591758136199026937672151571954750724849503533289016095167445658027871655758040360474523902252287836998788883218899658130469564205756267413204681011741698833501592309035016353417333777685868241124346988718866906349971250404042639595109617391160183719719894675920495719562484108306133858805522224319694608226493892061606008935774112529210975202370407410288127048869998501429748431136210553701493374644425322973333525110516082135495023336186729678731857163280816532022070396244956474529081424985703030201734727543508257498664848101462256420597348374166250720722809496710683488377485785130767564966353610399973674344887170567649554955036409412690622500029993934929530421467498029813339533715856418760116124721125395298269635766425651639598691626691527533426294779491484263272375002244708959326201987552862985393045789035964492396688328434780989892618267840623796833713673436465999493280197076619387460108691150923262456770051311170985770154905741599447783242779059200515502199797043178638384131404958502402988063204604717718646656284772808821812206983123469747508958807752033816696237486285066004641675187945881640497873087679717335445071094849905861768623887225099688086890975427767345883355328143553362985782222468045258348160731139496831534553454370489551663219076005351153487952513534499927474498658853928236855862372625169149695529189568449318891056687941863624172673715076550226082571989521608648933659873174280096718721938773918749544422183409609624800246765088423102362668998809822459007427297054524034890044286637512265496038851993669309549218368237894443130459784806040944439170445495884305658972055239720995455202354165784486223331685523750815028186499512092486226257874216000338091462328449784621347921273199394954235385802411515213769650212700808241905692538101763847750360508281342422002822842802751936385008839742826318125213269542740772581239138042436660812095273669289761838119561517626395509219637437490678499808728547836858318967471502961171897947868805509290278279311470678545082900063601310734157624412072149605527499442556960103346662859233160306196730397619437523016954868454533186194828123281435190615576684727517000705074853925325774238319639256908277626329483424264615374884108116306603373133045929498548972356473420692418712055266113171991201673627231331253210005582572579351726627709586859810733202627397133508849107645666641146569255408888823171461563103213706163932863577620323753286614134220599031758795263463594128855607768070654342005542580377587082287631458400135550067852988208767019597154387996978045390280954485771181249958398437829016818257731883610784060056291018564875620522668784012392010520034854036651934698488672269836641294949095154573709942290686610739263559669752244896231760732786264150749587867898289940946397508824396827150433987864137717889413661009106873000761782754546059043323030849555338899081715590539449404631134729457578698852732483286407467300630405001905200995401758357091766725822278860658671246099367572015400713354177678857584281301297881065376863666336067412755068819251037222309384757400952931933209838672800224695756998843499464612217100399574171341338082383707485744905354113099619097787422322830556829548081792439012630322275204904499208309802796914330228346915476674874534906864040477139694992367218230062522482019551541290583043160067178278665250512843536545830339/8777202634664656418469613948469354291704622175910658071356199118316010734605696462497329486590903726043612843363724455454661009401031810060216360047370291360842926875313821329603712963845729236886972414838352558622929233016128780065259918292155318914197166486507187314938175006100395275290517180882837068087197147646346123434829073054722011670096999945131371395341875867852323298714154216709417333618835639489915542575784112183324185210279876856737632402160455382326916487212420887503424696490429115386152192981615096697672884536766192190242787744290770449249176030685750707848192363623902143556784814121338184954557748596391619524781253269290863423981388715760864281546685485317611923844265340835105037308434515072422039377874879738535777257040200046733567274143386638869124925732846043181181042668456596921149689489036826908433736314341335658517443246166402713000862828322836759767108796623935508156328808266666345608474282019681784371068067363010878598580992668890908358513721126301573515429221049621756421901146694496238209906189396136235327951684182417061059905545612671168864760392758377800704068580036149907403811285526123795408876294904785652305687269390629945071951458326179047921021218125616806178024551933654755126107057870989727003921352623922047261130158529076749284281839552832921655818948259130987887774376668968210757543631372443840709171838617538852326191265445481179928168414549835432622766018199977785167117646047158979569839155773759370081795416246763421604163952582119857217168591696337545118365130458469807678244790679388784568824595414244793698614910915971043332549900998713480510552403417732270735387440400289544953193110803015963607541285194474205659862097000288287309223750539868640332242623674266246839828075683613234794329176217806675216896998776554066911110118703289674062104924990923851848249859485758376159185073645104257572113893405102333032067862408286530363586211116175461205566863107222246310353370225243288642837863373157409527892049268179085435795491555607164612281755295531360146285293931756890602376372747520223351523978830694909145307996786367173682850105157476170221398818141588332003822061949845447330241768628661632167926518931166895828402692295370473200432976976521027564267366706419416078775344644015657605869845469221708512039404751321527540483164844750559820005357522324564625919799312762846141239505638142805432434041620827607108681456337372064904162925087107195985476940201220096508516525793456683720644474308542167471376411406420950999992434649427565595481112373752522060780537299127460995370236543350475830663668153515783435248879286781444277217430649333492472252767640687139514367958733133530254974130358637825998205620338695637360494445575092216585733797292156547441516319546491449631594694631673296889070194306923882549189557741900207052269461287084143339662779738629803186205944833395752418645472401173073383668252526303243296451258549162708356581313760319661281312501910828516235707177664442300404346425098369954512611641079637189234650394812219521775315786145551344169963748531837807627881547339338805742024582224221802542846918437552915690479148339069352178496942650502138704550183354334967771275982856182884883604410345145372474030907962659993307507554028043011230308484260679520355502927328530940632927846584804038007829186241914414858823330039932885024174487550833852362637860238435663513469841404700545557305995183188971052001809861809007650654007262863952970587829673435829178281603698015864532626482859017530106747090266426865042715308420913873597971035153009941906231894746966445141233552962540473763951033070728159677130147626621784768991900336149228381985534257885004149373969911926885797776709997059102752017305358009976344035114024395981487093000314939732250555435897488949287653093321853266571842379830126547153729549036920425736586921429978915546918778516093722156867636325518866722336217535666498331003477638132634627991249213435182091176302670677577565734722399127122126839754873137906979140042897825180773327186107782358301598484429181972437533763096667540336799469916045994912894610236181757835890140456407282093820921331881397198031201806216839610657284536504047281023579371131665734922904783866053235055015484394231764871237521785209393140289972362822884698146735033869769807549548779661871984545890937366100764862752077541471879902725244171355503186858987340568653897720381139435047791688776039301231950529094089817104487021365774884635280722457315018869830090037657039654965257397585689745860848806080722324690454727167134796584337791682015999233300868673456979466278251826600136599720017818848698779758688691918894128748031630893532250123779838884996425955415992574754652695471474767343587245726406182329176580668679631580223267360877256596461563334787944637542846456003351881471892257601671651341308712166270108181805782122982299137666312282824306647583624989073037156649292242893852013070783701226599766146202154238306157049028348480462864932642097446906773742238570133289242826002282946536785782631009525916059738969291259705871715683772568965664699184773740777712280482775715935455756751395498817549793477456695998417768684467983269041614690206698498909725866487702121622536802483618917350587087891384930912518521265889031386250990003952152261722048547638232646168126613432038070424105065485796202996320485568682118016321862991167478455321768014738438128754185596772619279406462443827534130056963704405044935348653225114174790780149887687584785402522884028658283633163787720911708992540575864705914353934417022645514220709046357627647564357425618692995340374864339748045031028032966569698636510582668467236125447745062341617030025111490371401286165137059118074743270736440501258472891346127872462667232679068748804116025413959488157931312477561100145945712612949914862104815594794999249841964321517684673200434567618964243800455864894829894043777275010741006099373491983843077511497917420505703059952495862468361739338812515699756953620334640658192876793829236073434573741656623088407453108097245564725213198272826916289602134142739564249419567762878290463270408574922022076602439982512896910184602997529065846894510496699101826636306655857341162487765985162833363062389559946058083666923986012243148445786523825708285335809402307726828299187452636342562264850250738647008337004073648588663717624964591712796156176051811303587008695802238443000659360262822274201157058989171140605363757262715039711836435267201104911185310881209587787085902214067011120249206920930390092002013926528617002840598652739858626032863148313350990570099636466948315037251279483584298262932251406595483378246785807535611749633763058037897359717040868961405818284099617948849433049436575391579300119851928529756422622723306396869676275970029554443585678951027916894843975060149675530799724137558236286542362269953910096002601935118460926676401647670047620142445433931766004114804178116427565700418306645902126388362468825507459689300060886321266370562693571126749666200854272660692183292992040934302422995705006352074594711460294611939259261990678024511944216638670729114815642321952002090729369791294839378460346154543144485335133251656077032220236396898394049498414051866917754549414591999079474261211591565618751362796416003292400024736984929388629675723337894829694678315572922020740117800916410586433480654470193683502380154010623569116062721330283590512559073440611814680505380164173037776902864905674592267882660788637277151746170675972785796521763743850811174924692847537634127068551433245821239015967841828418808462387269982701615334310642615270000597356296924059014371085566415963366508145631521668442026871730773601632225364810675619141557082650914857422106840779056690605019373338452926911636721603272354085502450891772104100900200203340986151393083430098829384078587811871853218736995410768637701928342702341028551096278610195164544381986282542501180011145924731329800182726709312542976363803939534678835835091124774694956557780540118230307538308952774648215896693134720253916124375172749362746149820510983790565063947896610874257640717747888548524543428355124635426818380492010394012815017012410033244913371895812784414682215359988271517692568379869831496525990733952996020705390426883252871127913736 : 1)"}︡ ︠c47ad3cc-dcc6-40cd-a4fc-9049e51c0d42︠ len(str(P)) ︡0f432a8c-25b6-4258-8c2b-9374cd077ab5︡{"stdout": "27267"}︡ ︠42d356b3-8a74-4a74-af59-ecdd1e2668a7i︠ %htmlFile: /home/wstein/sage/sage-4.8.alpha5/local/lib/python2.6/site-packages/sage/schemes/elliptic_curves/ell_rational_field.py
\nType: <type ‘instancemethod’>
\nDefinition: E.rank(use_database=False, verbose=False, only_use_mwrank=True, algorithm=’mwrank_lib’, proof=None)
\nDocstring:
\n\n\n\n\nReturn the rank of this elliptic curve, assuming no conjectures.
\nIf we fail to provably compute the rank, raises a RuntimeError\nexception.
\nINPUT:
\n\n
\n- use_database (bool) - (default: False), if\nTrue, try to look up the regulator in the Cremona database.
\n- verbose - (default: None), if specified changes\nthe verbosity of mwrank computations. algorithm -
\n- - 'mwrank_shell' - call mwrank shell command
\n- - 'mwrank_lib' - call mwrank c library
\n- only_use_mwrank - (default: True) if False try\nusing analytic rank methods first.
\n- proof - bool or None (default: None, see\nproof.elliptic_curve or sage.structure.proof). Note that results\nobtained from databases are considered proof = True
\nOUTPUT:
\n\n
\n- rank (int) - the rank of the elliptic curve.
\nIMPLEMENTATION: Uses L-functions, mwrank, and databases.
\nEXAMPLES:
\n\n\nsage: EllipticCurve('11a').rank()\n0\nsage: EllipticCurve('37a').rank()\n1\nsage: EllipticCurve('389a').rank()\n2\nsage: EllipticCurve('5077a').rank()\n3\nsage: EllipticCurve([1, -1, 0, -79, 289]).rank() # This will use the default proof behavior of True\n4\nsage: EllipticCurve([0, 0, 1, -79, 342]).rank(proof=False)\n5\nsage: EllipticCurve([0, 0, 1, -79, 342]).simon_two_descent()[0]\n5\nExamples with denominators in defining equations:
\n\n\nsage: E = EllipticCurve([0, 0, 0, 0, -675/4])\nsage: E.rank()\n0\nsage: E = EllipticCurve([0, 0, 1/2, 0, -1/5])\nsage: E.rank()\n1\nsage: E.minimal_model().rank()\n1\nA large example where mwrank doesn’t determine the result with certainty:
\n\n\nsage: EllipticCurve([1,0,0,0,37455]).rank(proof=False)\n0\nsage: EllipticCurve([1,0,0,0,37455]).rank(proof=True)\nTraceback (most recent call last):\n...\nRuntimeError: Rank not provably correct.\n
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):
︡c3683bb1-d076-4906-a706-735deefa632e︡{"html": "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):
"}︡ ︠8b4de7d4-89ab-48bb-9978-69461ca506b5︠ E = EllipticCurve([2012,0]) print E print E.rank() print E.gens() ︡0909e8dc-973c-45b1-abf0-c851933d6ed5︡{"stdout": "Elliptic Curve defined by y^2 = x^3 + 2012*x over Rational Field\n1\n[(2311250/580665409 : 39597102455400/13992294360673 : 1)]"}︡ ︠4ebb54ce-cbbb-4a2a-8ca2-4dffd46e1561i︠ %htmlA family
︡5ee74e3b-4ab1-422a-a3dd-62351cb3d3f1︡{"html": "A family
"}︡ ︠59b2e432-ed4b-4c22-9be1-25be0c6c91fd︠ def F(a): return EllipticCurve([0,(a-1),1,-a,0]) for a in [0..20]: print a, F(a).rank() ︡c08d7ddb-ec3c-46d5-8883-e6b6a6f5c145︡{"stdout": "0 0\n1 1\n2 2\n3 2\n4 3\n5 2\n6 2\n7 3\n8 3\n9 3\n10 2\n11 3\n12 3\n13 3\n14 3\n15 2\n16 4\n17 3\n18 2\n19 3\n20 3"}︡ ︠74e8e632-8260-48fd-8203-5710efe002aei︠ %htmlExercise: Find the first $a$ such that $F(a)$ has rank $5$.
︡b2884790-1953-4608-afa7-adef0c38d702︡{"html": "Exercise: Find the first $a$ such that $F(a)$ has rank $5$.
"}︡ ︠871c13c2-77ca-4ac3-8af8-509565acf984i︠ %htmlElkies Curve of Rank (at least) 28
︡6f0e14e9-57e3-42f0-ba98-6714e29b7ec5︡{"html": "Elkies Curve of Rank (at least) 28
"}︡ ︠43cd2d96-a784-461f-84a7-364c370bc5d3︠ E = EllipticCurve([1,-1,1,-20067762415575526585033208209338542750930230312178956502, 34481611795030556467032985690390720374855944359319180361266008296291939448732243429]) ︡6a736141-99fa-4cc0-84fb-873841099e93︡︡ ︠25972692-5952-4c25-90a7-c94f6d3bb687i︠ %htmlThat the first few good $a_p=p+1-\#E(F_p)$ are negative is evidence that $E$ has high rank:
︡26deb0dc-cbed-4fef-8577-80429cdd2d64︡{"html": "That the first few good $a_p=p+1-\\#E(F_p)$ are negative is evidence that $E$ has high rank:
"}︡ ︠4fa19172-7d51-4ad2-beb9-9d39f10052b0︠ D = E.discriminant(); [p for p in primes(1000) if D%p==0] ︡1e586ad4-a35a-4c57-9817-bb27302a05bd︡{"stdout": "[2, 3, 5, 7, 11, 13, 17, 19]"}︡ ︠09da9a87-e14c-469f-996f-e3940159c58c︠ for p in primes(20,200): print E.ap(p), ︡6476c16e-217f-47f4-870e-d265ab9eccb6︡{"stdout": "-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"}︡ ︠54281a8c-371f-4316-a2c2-d0a68c1429d9i︠ %htmlExercise: What is the smallest good prime $p$ such that $a_p>0$?
︡fb1dfd1a-7a1a-4504-8370-b270dcfacb1b︡{"html": "Exercise: What is the smallest good prime $p$ such that $a_p>0$?
"}︡ ︠1f0730d9-7a38-49a3-bfad-17127bbc6bcf︠ 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])] ︡057e914c-5a73-41da-8b3c-d6e04953b42c︡︡ ︠0254680e-3172-4ece-8167-377aaf0b933b︠ P[0] + P[1] ︡07d27f01-11db-4618-bbc4-1bf7621b8672︡{"stdout": "(3108017602820373171270912268547263377137814553518653/1146511727644798490358769 : 1802558090655926570845589254141496753576572784929653778538438661217456501493/1227630733053376047702643420235410103 : 1)"}︡ ︠97f0f27c-c37c-45bb-bfee-768d888726de︠ time E.regulator_of_points(P[:7]) ︡0d6e3b6b-3c78-4422-b62d-5be694d127c3︡{"stdout": "3.04313979267944e11\nTime: CPU 2.64 s, Wall: 2.77 s"}︡ ︠69c22f29-da39-41f0-9938-4f516331ac73︠ time E.regulator_of_points(P[:15]) ︡04cd03d5-ed0b-468b-bd3b-eb77a79cafe9︡{"stdout": "1.97964758730350e23\nTime: CPU 12.00 s, Wall: 12.00 s"}︡ ︠43ab6138-d1c1-4634-8fb9-ad992ab94013i︠ %htmlThe following takes about 60 seconds (on my laptop), and shows that the 28 points are independent:
︡15ef9886-a68d-412d-8b9d-eda4943c07c3︡{"html": "The following takes about 60 seconds (on my laptop), and shows that the 28 points are independent:
"}︡ ︠94cdbd1d-5219-411d-a106-45f985f60599︠ time E.regulator_of_points(P) ︡eb49e96b-c401-4b9f-b9be-ea2fdf5b025d︡︡ ︠74f15e6c-5985-4e22-84f3-7b57dd060dc0︠ points([(x,y) for x,y,_ in P]) + plot(E, color='grey', xmax=2e28, ymin=-50) ︡3e5c1c4d-7649-4a31-9c44-3407ca2fcf45︡{"html": "It takes a while to compute the string representation of $p$.
︡80abace7-e85a-4581-a0d4-ff857c6a4da2︡{"html": "It takes a while to compute the string representation of $p$.
"}︡ ︠81666538-8a2f-49f1-a414-b887d46a6915︠ time s_bigp = str(2^43112609 - 1) len(s_bigp) ︡0cb0bda3-bf88-4453-8086-04da55ed1c47︡{"stdout": "Time: CPU 11.71 s, Wall: 11.72 s\n12978189"}︡ ︠8dbdd076-9e49-4cd5-b88b-59dfe40bbebb︠ @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:] ︡55fb2601-5dab-4db7-a490-65e1172728c5︡︡ ︠d105e6c3-0eb0-4e90-bd55-b21ab1c600bc︠ E = EllipticCurve([0,0,1,-1,0]); E ︡da8b833b-d0d8-47c5-9792-7adfe1502496︡{"stdout": "Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field"}︡ ︠ad27fbce-b922-43ae-b3d1-ba2c4094245f︠ E23 = E.change_ring(GF(23)); E23 ︡7c579150-b288-4ec5-871a-3d28d1084ccd︡{"stdout": "Elliptic Curve defined by y^2 + y = x^3 + 22*x over Finite Field of size 23"}︡ ︠0b128bf0-9213-4b91-aa13-9dc4fde6a4d4︠ E23.plot(pointsize=50, figsize=4, gridlines=True) ︡2d36136c-7687-4e3a-9550-ac63e62974f2︡{"html": "Exercise: Make an interact that has a slider letting you select a prime, which plots the graph of $E$ modulo that prime.
︡e0248b2b-abfb-4e8c-9154-54074815452d︡{"html": "Exercise: Make an interact that has a slider letting you select a prime, which plots the graph of $E$ modulo that prime.
"}︡ ︠d0253fce-d05a-41ab-84f4-8481641971e6i︠ %htmlIf you solve for the order of the Shafarevich-Tate group in the conjecture:
︡7effae41-a578-4165-944a-141d288164d1︡{"html": "If you solve for the order of the Shafarevich-Tate group in the conjecture:
"}︡ ︠ba9227d5-8c6d-479c-b3bc-3805b7840055︠ E.sha().an() ︡81c6e741-90c1-4ebe-87fb-1fd1bb8d165e︡{"stdout": "1.00000000000000"}︡ ︠657de4cb-bf0b-41b1-a472-df7a51d8c0dd︠ S = E.sha(); S ︡7f3ce95d-480d-4570-9be9-344de9f15f1a︡{"stdout": "Tate-Shafarevich group for the Elliptic Curve defined by y^2 + y = x^3 + x^2 - 2*x over Rational Field"}︡ ︠6a86afaf-071d-4645-b3c5-c4bcd02529f8i︠ %htmlThe following proves that $p=5$ does not divide the order of this group:
︡205470ae-df55-4b7e-b058-3f808f9d3f7a︡{"html": "The following proves that $p=5$ does not divide the order of this group:
"}︡ ︠501230d9-f1eb-4694-92cd-aed3a69619e3︠ S.p_primary_bound(5) ︡8e33deec-6e77-43b3-a5b0-dd576a69f4c0︡{"stdout": "0"}︡ ︠7c278688-3ff9-4462-af5a-25b2494229d9i︠ %htmlOpen Problem: Prove that the Shafarevich-Tate group of the specific curve $E$ given above is finite.
︡ed1b0335-a52b-41ea-a4e0-0f27a5df8c5b︡{"html": "Open Problem: Prove that the Shafarevich-Tate group of the specific curve $E$ given above is finite.
"}︡ ︠2a34a131-0990-4194-9511-8d4c5b4a1397i︠ %htmlOpen Problem: Prove that $L(E,s)$ vanishes to order $4$ at $s=1$ for the specific curve $E$ above. (Or for any curve at all!)
︡0bfecffc-fb29-43a5-af89-1be52fa7b2f1︡{"html": "
Open Problem: Prove that $L(E,s)$ vanishes to order $4$ at $s=1$ for the specific curve $E$ above. (Or for any curve at all!)
\n"}︡