SageMath: BLS12-381におけるsmall subgroup



BLS12-381における捻れ点

https://crypto.stanford.edu/pbc/notes/elliptic/torsion.html

有限体$${\mathbb F_q}$$上の楕円曲線 E上の点で,m倍すると無限遠点 Oになる点を mねじれ点(m-torsion point) と呼ぶ。

$$
E[m]:= \{P \in E(\mathbb F_q) \space |\space m * P = O \space \}
$$

で定義される。
以下ではBLS12-381のtortion-pointを算出してみる。
SageMathの`division_points()`はm倍したら、Oとなる点のリストを返す関数。
次のように呼び出すとm倍したら、Oとなる点のリストを返してくれる。

sage: E = EllipticCurve(GF(2^255-19),[0,486662,0,1,0])
sage: O = E(0)
sage: O.division_points(m)

ねじれ点

さて、`division_points()`を呼んで、ねじれ点を見つける。
BLS12-381の楕円曲線を作り、E(0)を無限遠点とする。有理点の数を調べてみる。

sage: E = EllipticCurve(GF(0x1a0111ea397fe69a4b1ba7b6434bacd764774b84f38512bf6730d2a0f6b0f6241eabfffeb15
....: 3ffffb9feffffffffaaab), [0, 4])
sage: O = E(0)
sage: E.cardinality().factor()
3 * 11^2 * 10177^2 * 859267^2 * 52437899^2 * 52435875175126190479447740508185965837690552500527637822603658699938581184513

ラグランジュの定理により、部分群が存在するとき、その部分群の位数は有限群の位数の約数である。

位数を3とする部分群の要素となる点たち:

sage: O.division_points(3)
[(0 : 1 : 0),
 (0 : 2 : 1),
 (0 : 4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559785 : 1)]

位数を11とする部分群の要素となる点たち:

sage: O.division_points(11)
[(0 : 1 : 0),
 (6963810901242914501296791317468687704362012588555541933123759187588889612276948934757591021590876452626889675801 : 450183371774468501117745075101600224463590854136802934424170599121456489686626344016959585454111419105009962888370 : 1),
 (6963810901242914501296791317468687704362012588555541933123759187588889612276948934757591021590876452626889675801 : 3552226183447198892300044750634303932093291965802204950907887537002575160804211520425728043674904244932884309671417 : 1),
 (36062352831239990719958464914731943671638831985698650995844836482914258665789452956921940214859209278384156547482 : 1193751889467020566002914104608893871119428384982355693049481849265752795930854568761413204546340237594420886230382 : 1),
 (36062352831239990719958464914731943671638831985698650995844836482914258665789452956921940214859209278384156547482 : 2808657665754646827414875721127010285437454434956652192282576286858278854559983295681274424582675426443473386329405 : 1),
 (72195507132558825291648769545053200062346457247247170817437867739377083276362122038991084413037739323695167199462 : 997487335140523276306733735206127412079421231941546943967270204148979534579634013206150819829528136518997612852806 : 1),
 (72195507132558825291648769545053200062346457247247170817437867739377083276362122038991084413037739323695167199462 : 3004922220081144117111056090529776744477461587997460941364787931975052115911203851236536809299487527518896659706981 : 1),
 (77105121155160259072156672481962532281449841094578198580842797839685257097226640790672636949977750045317409483941 : 997487335140523276306733735206127412079421231941546943967270204148979534579634013206150819829528136518997612852806 : 1),
 (77105121155160259072156672481962532281449841094578198580842797839685257097226640790672636949977750045317409483941 : 3004922220081144117111056090529776744477461587997460941364787931975052115911203851236536809299487527518896659706981 : 1),
 (77732260077094903383994148328487139262246853977992826620168876049675603664317727728423782413157698711573420513557 : 1193751889467020566002914104608893871119428384982355693049481849265752795930854568761413204546340237594420886230382 : 1),
 (77732260077094903383994148328487139262246853977992826620168876049675603664317727728423782413157698711573420513557 : 2808657665754646827414875721127010285437454434956652192282576286858278854559983295681274424582675426443473386329405 : 1),
 (126149614020009605063420801400165371913901504756215408235127425228461918825776524224714062091576412288685507746834 : 291845846514936889445050839051646264868886613034034253052277234669880148805032315582685486860398374197129048535559 : 1),
 (126149614020009605063420801400165371913901504756215408235127425228461918825776524224714062091576412288685507746834 : 3710563708706730503972738986684257891687996206904973632279780901454151501685805548860002142268617289840765224024228 : 1),
 (279748171579288134335417817053821272269795847898592161706917263001730346508271985806008760469186069566551728866896 : 1527588061491800579034685556695426561409665601603563504183596386505170357791725349131968954417318780948829347488846 : 1),
 (279748171579288134335417817053821272269795847898592161706917263001730346508271985806008760469186069566551728866896 : 2474821493729866814383104269040477595147217218335444381148461749618861292699112515310718674711696883089064925070941 : 1),
 (338797546186399575564424451166557655925100148395654881317801967352429832893929653000022066822915911317146829904623 : 284754544757039300614748613477576645628368276307717376584644474403045065516810208838605657698162860948340916806097 : 1),
 (338797546186399575564424451166557655925100148395654881317801967352429832893929653000022066822915911317146829904623 : 3717655010464628092803041212258327510928514543631290508747413661720986584974027655604081971430852803089553355753690 : 1),
 (409212704096205200580166066326226868774376334581317637723695923838947734464529402880827981940151374993393595055033 : 1351023314846862158744059833911077910606741922989712762144382632073115921600913460286800680721713937234414218576909 : 1),
 (409212704096205200580166066326226868774376334581317637723695923838947734464529402880827981940151374993393595055033 : 2651386240374805234673729991824826245950140896949295123187675504050915728889924404155886948407301726803480053982878 : 1),
 (456833178864375236624458284619388345103544430083546967463938502486368434475841266930142902246137559471854953505676 : 924716672428771405812563858488898887009591277673329077439639066301743933992774959997353601578216971910280647277733 : 1),
 (456833178864375236624458284619388345103544430083546967463938502486368434475841266930142902246137559471854953505676 : 3077692882792895987605225967247005269547291542265678807892419069822287716498062904445334027550798692127613625282054 : 1),
 (565580074136799723979560811233171866688998818285942115042196744160793914024700832248898459781922310329909059071278 : 1527588061491800579034685556695426561409665601603563504183596386505170357791725349131968954417318780948829347488846 : 1),
 (565580074136799723979560811233171866688998818285942115042196744160793914024700832248898459781922310329909059071278 : 2474821493729866814383104269040477595147217218335444381148461749618861292699112515310718674711696883089064925070941 : 1),
 (610318270661287489440404914876207974387850539725758272348956809373096992798405274974295503674578202674568945506668 : 987719302924219331468941975409393556003528833470256081029666181656841138640687011957826631075821848174315017135721 : 1),
 (610318270661287489440404914876207974387850539725758272348956809373096992798405274974295503674578202674568945506668 : 3014690252297448061948847850326510600553353986468751804302391954467190511850150852484860998053193815863579255424066 : 1),
 (664715378682985472511523053754328186255549130808788418061769285752975580579162484808039208434162429816964032000741 : 803023993376423486828959463337474748224691616861766270354917342190795009549238112322605026613280777463199171556664 : 1),
 (664715378682985472511523053754328186255549130808788418061769285752975580579162484808039208434162429816964032000741 : 3199385561845243906588830362398429408332191203077241614977140793933236640941599752120082602515734886574695101003123 : 1),
 (776605797572724232388168914163307742580270998727752240962044697602593569943015912362618304329291569832479940363840 : 1351023314846862158744059833911077910606741922989712762144382632073115921600913460286800680721713937234414218576909 : 1),
 (776605797572724232388168914163307742580270998727752240962044697602593569943015912362618304329291569832479940363840 : 2651386240374805234673729991824826245950140896949295123187675504050915728889924404155886948407301726803480053982878 : 1),
 (811811321936768134445792459399640666717268777171048764324191390309117617313406271839591553226528230213265338287306 : 191318602529900146883191074640310040715714215627215372887184957357555337451011839871099586365083520004355786478710 : 1),
 (811811321936768134445792459399640666717268777171048764324191390309117617313406271839591553226528230213265338287306 : 3811090952691767246534598751095594115841168604311792512444873178766476313039826024571588042763932144033538486081077 : 1),
 (917662658857501666910248980676910480377185191717373793666981934054878742808186453118585726160189590065560075995323 : 450183371774468501117745075101600224463590854136802934424170599121456489686626344016959585454111419105009962888370 : 1),
 (917662658857501666910248980676910480377185191717373793666981934054878742808186453118585726160189590065560075995323 : 3552226183447198892300044750634303932093291965802204950907887537002575160804211520425728043674904244932884309671417 : 1),
 (948782276029753948839868936681203872337199842108359997138465676856574280424253724337230371521637688705141251734313 : 1676176410704313785562478877449811491298619082481287712950617051901146331175711110442688743044994488952212071851160 : 1),
 (948782276029753948839868936681203872337199842108359997138465676856574280424253724337230371521637688705141251734313 : 2326233144517353607855310948286092665258263737457720172381441084222885319315126753999998886084021175085682200708627 : 1),
 (1010832175042706400962683174607821043660697911157149758623686277326434077940080325781675288320021303775541957438292 : 644394479309305077123003308264671517061331360878780088181972299629940278726570696759107451607114398582946900217000 : 1),
 (1010832175042706400962683174607821043660697911157149758623686277326434077940080325781675288320021303775541957438292 : 3358015075912362316294786517471232639495551459060227797150085836494091371764267167683580177521901265454947372342787 : 1),
 (1065626630110749736413017505701820810054673560966058672983792052312677341540833508084491223832463067626301085941656 : 1488390455113772125418448659231214261772312778990977393872657491192851145400647885457873065942350664657693153779498 : 1),
 (1065626630110749736413017505701820810054673560966058672983792052312677341540833508084491223832463067626301085941656 : 2514019100107895267999341166504689894784570040948030491459400644931180505090189978984814563186664999380201118780289 : 1),
 (1083714736142100356942089389462625247321699930007052826998023245386288180767972533116375354679367251278561019384606 : 431653904276377032401102663762173685723917167125734322574255668100024427799350558490224562706417371993055098799891 : 1),
 (1083714736142100356942089389462625247321699930007052826998023245386288180767972533116375354679367251278561019384606 : 3570755650945290361016687161973730470832965652813273562757802468024007222691487305952463066422598292044839173759896 : 1),
 (1235386058476723153539785141957279318643009767140232930216809400423099962121473980445811566850148633518359941083135 : 284754544757039300614748613477576645628368276307717376584644474403045065516810208838605657698162860948340916806097 : 1),
 (1235386058476723153539785141957279318643009767140232930216809400423099962121473980445811566850148633518359941083135 : 3717655010464628092803041212258327510928514543631290508747413661720986584974027655604081971430852803089553355753690 : 1),
 (1261069992772185946786129550541705723032985670113402340471691273004159178810544562478851218168226988025191920513595 : 263717933183042481211907471272957902390808639416329260656514385772218419238902503396669143705143038367400411614672 : 1),
 (1261069992772185946786129550541705723032985670113402340471691273004159178810544562478851218168226988025191920513595 : 3738691622038624912205882354462946254166074180522678624675543750351813231251935361046018485423872625670493860945115 : 1),
 (1356341754582696348407935112952764228103698371713837606993828303916404701592035765455364523326623764751142599336893 : 191318602529900146883191074640310040715714215627215372887184957357555337451011839871099586365083520004355786478710 : 1),
 (1356341754582696348407935112952764228103698371713837606993828303916404701592035765455364523326623764751142599336893 : 3811090952691767246534598751095594115841168604311792512444873178766476313039826024571588042763932144033538486081077 : 1),
 (1433123930871123328045364145585150401273255115143046809756746924253564054173011879554064878069403415570549396927418 : 52773180847648252448388861801339437609448060884885116284278877770908110343239439189583654131265826133427769548059 : 1),
 (1433123930871123328045364145585150401273255115143046809756746924253564054173011879554064878069403415570549396927418 : 3949636374374019140969400963934564718947434759054122769047779258353123540147598425253103974997749837904466503011728 : 1),
 (1457601563460427019351952134909768671800141178582117782021880823612434730466285787186976384693965307994750400710281 : 803023993376423486828959463337474748224691616861766270354917342190795009549238112322605026613280777463199171556664 : 1),
 (1457601563460427019351952134909768671800141178582117782021880823612434730466285787186976384693965307994750400710281 : 3199385561845243906588830362398429408332191203077241614977140793933236640941599752120082602515734886574695101003123 : 1),
 (1462147219632039932065353119257988463372869980966730720350212875212651449663043295710468754542809038026246696852010 : 924716672428771405812563858488898887009591277673329077439639066301743933992774959997353601578216971910280647277733 : 1),
 (1462147219632039932065353119257988463372869980966730720350212875212651449663043295710468754542809038026246696852010 : 3077692882792895987605225967247005269547291542265678807892419069822287716498062904445334027550798692127613625282054 : 1),
 (1753221685754009820803515084893358349354240079190804260518615612853179160443662034426918566000126857071710530117817 : 1415083150422375384659154255342874663099946470802904620810714799878292362309845203158311500499907266535004326534161 : 1),
 (1753221685754009820803515084893358349354240079190804260518615612853179160443662034426918566000126857071710530117817 : 2587326404799292008758635570393029493456936349136103264521343336245739288180992661284376128629108397502889946025626 : 1),
 (1766399426776153243393463910187878636984996131291728322042108060043741355617556886562339617308178659611146957302999 : 291845846514936889445050839051646264868886613034034253052277234669880148805032315582685486860398374197129048535559 : 1),
 (1766399426776153243393463910187878636984996131291728322042108060043741355617556886562339617308178659611146957302999 : 3710563708706730503972738986684257891687996206904973632279780901454151501685805548860002142268617289840765224024228 : 1),
 (1779368158980795541169609336357825275723377563182448585310127531515454961629656233387372043619189747722367564825394 : 1361032848920756422517604046183094371931399651818300504191559027686165387603753150518850719832556529323314120938428 : 1),
 (1779368158980795541169609336357825275723377563182448585310127531515454961629656233387372043619189747722367564825394 : 2641376706300910970900185779552809784625483168120707381140499108437866262887084713923836909296459134714580151621359 : 1),
 (1834256478702202910564062253383499261735915671054121514014038441898509331585395827147731552575863669073486334935588 : 191318602529900146883191074640310040715714215627215372887184957357555337451011839871099586365083520004355786478710 : 1),
 (1834256478702202910564062253383499261735915671054121514014038441898509331585395827147731552575863669073486334935588 : 3811090952691767246534598751095594115841168604311792512444873178766476313039826024571588042763932144033538486081077 : 1),
 (1880092613078254901554314637071807298501192510548101685248408026758621339445389592447672036000887926226179839848765 : 803023993376423486828959463337474748224691616861766270354917342190795009549238112322605026613280777463199171556664 : 1),
 (1880092613078254901554314637071807298501192510548101685248408026758621339445389592447672036000887926226179839848765 : 3199385561845243906588830362398429408332191203077241614977140793933236640941599752120082602515734886574695101003123 : 1),
 (2083429156725252224727978421858527348080468408888730197517906758425011766351953301802075972340069066539792622202101 : 924716672428771405812563858488898887009591277673329077439639066301743933992774959997353601578216971910280647277733 : 1),
 (2083429156725252224727978421858527348080468408888730197517906758425011766351953301802075972340069066539792622202101 : 3077692882792895987605225967247005269547291542265678807892419069822287716498062904445334027550798692127613625282054 : 1),
 (2109860514425504544960905114147860147657985183891064155054822650851828376047504453655633949729260592138061807509954 : 291845846514936889445050839051646264868886613034034253052277234669880148805032315582685486860398374197129048535559 : 1),
 (2109860514425504544960905114147860147657985183891064155054822650851828376047504453655633949729260592138061807509954 : 3710563708706730503972738986684257891687996206904973632279780901454151501685805548860002142268617289840765224024228 : 1),
 (2118361356951950135551719976601819069095600453833455472700041039775430550169206491723653751328616385147973723324994 : 1377757625818480898103653260152018543594094399915738264671462736353608305196833427728050995697281992933276608340380 : 1),
 (2118361356951950135551719976601819069095600453833455472700041039775430550169206491723653751328616385147973723324994 : 2624651929403186495314136565583885612962788420023269620660595399770423345294004436714636633431733671104617664219407 : 1),
 (2120188930238645926589694777425356635063015282293150224051126866901019924636253479494948074871212617032960969122754 : 1377757625818480898103653260152018543594094399915738264671462736353608305196833427728050995697281992933276608340380 : 1),
 (2120188930238645926589694777425356635063015282293150224051126866901019924636253479494948074871212617032960969122754 : 2624651929403186495314136565583885612962788420023269620660595399770423345294004436714636633431733671104617664219407 : 1),
 (2428225950558544664313580232612067181988772904403120073797446768348501855475434230996853995455951119202387501572029 : 284754544757039300614748613477576645628368276307717376584644474403045065516810208838605657698162860948340916806097 : 1),
 (2428225950558544664313580232612067181988772904403120073797446768348501855475434230996853995455951119202387501572029 : 3717655010464628092803041212258327510928514543631290508747413661720986584974027655604081971430852803089553355753690 : 1),
 (2581714098618757409955895942122440901236457646341235568319882284516690918429607264314847281755778810849406493211576 : 1415083150422375384659154255342874663099946470802904620810714799878292362309845203158311500499907266535004326534161 : 1),
 (2581714098618757409955895942122440901236457646341235568319882284516690918429607264314847281755778810849406493211576 : 2587326404799292008758635570393029493456936349136103264521343336245739288180992661284376128629108397502889946025626 : 1),
 (2659681176629534217191953200175159777206548831288917823450856491480102158501512466428944679518828420794299823995794 : 1361032848920756422517604046183094371931399651818300504191559027686165387603753150518850719832556529323314120938428 : 1),
 (2659681176629534217191953200175159777206548831288917823450856491480102158501512466428944679518828420794299823995794 : 2641376706300910970900185779552809784625483168120707381140499108437866262887084713923836909296459134714580151621359 : 1),
 (2659704998765282888492460437059744826114362554885962378621219545254841664052798171669016775538829078150375770595084 : 52773180847648252448388861801339437609448060884885116284278877770908110343239439189583654131265826133427769548059 : 1),
 (2659704998765282888492460437059744826114362554885962378621219545254841664052798171669016775538829078150375770595084 : 3949636374374019140969400963934564718947434759054122769047779258353123540147598425253103974997749837904466503011728 : 1),
 (2816591053552737960449454845246369545202235486629938006646317514682490346083292549199241342859572719212020737140914 : 1351023314846862158744059833911077910606741922989712762144382632073115921600913460286800680721713937234414218576909 : 1),
 (2816591053552737960449454845246369545202235486629938006646317514682490346083292549199241342859572719212020737140914 : 2651386240374805234673729991824826245950140896949295123187675504050915728889924404155886948407301726803480053982878 : 1),
 (2979670670310764568875432584853779235952086868415185959349978692557041658123457012371196582200206075137700696818072 : 431653904276377032401102663762173685723917167125734322574255668100024427799350558490224562706417371993055098799891 : 1),
 (2979670670310764568875432584853779235952086868415185959349978692557041658123457012371196582200206075137700696818072 : 3570755650945290361016687161973730470832965652813273562757802468024007222691487305952463066422598292044839173759896 : 1),
 (3037982539926529548244641917782708870015277247801755570257557380453458387116449055292147608089346848033666914744339 : 644394479309305077123003308264671517061331360878780088181972299629940278726570696759107451607114398582946900217000 : 1),
 (3037982539926529548244641917782708870015277247801755570257557380453458387116449055292147608089346848033666914744339 : 3358015075912362316294786517471232639495551459060227797150085836494091371764267167683580177521901265454947372342787 : 1),
 (3077783085462922812006244053741524988475335615633078549731952442881564018070374462389344311947235197519707306888663 : 450183371774468501117745075101600224463590854136802934424170599121456489686626344016959585454111419105009962888370 : 1),
 (3077783085462922812006244053741524988475335615633078549731952442881564018070374462389344311947235197519707306888663 : 3552226183447198892300044750634303932093291965802204950907887537002575160804211520425728043674904244932884309671417 : 1),
 (3157081309505579535102811197448911017598088153754473608582944128961507389957865046387780408877907284141433484621613 : 1527588061491800579034685556695426561409665601603563504183596386505170357791725349131968954417318780948829347488846 : 1),
 (3157081309505579535102811197448911017598088153754473608582944128961507389957865046387780408877907284141433484621613 : 2474821493729866814383104269040477595147217218335444381148461749618861292699112515310718674711696883089064925070941 : 1),
 (3167706411559502925065006050583359522786529974273949788007148752021783974821760256446382536892476746468908919085338 : 1676176410704313785562478877449811491298619082481287712950617051901146331175711110442688743044994488952212071851160 : 1),
 (3167706411559502925065006050583359522786529974273949788007148752021783974821760256446382536892476746468908919085338 : 2326233144517353607855310948286092665258263737457720172381441084222885319315126753999998886084021175085682200708627 : 1),
 (3200899179371757012159357675581608146514841849207148793685444114301754437948912013454185344910256244519197373675566 : 1488390455113772125418448659231214261772312778990977393872657491192851145400647885457873065942350664657693153779498 : 1),
 (3200899179371757012159357675581608146514841849207148793685444114301754437948912013454185344910256244519197373675566 : 2514019100107895267999341166504689894784570040948030491459400644931180505090189978984814563186664999380201118780289 : 1),
 (3253033608071528083035230876039060131863417245602626450272171491216781211333398580351097532742936901381794441219000 : 263717933183042481211907471272957902390808639416329260656514385772218419238902503396669143705143038367400411614672 : 1),
 (3253033608071528083035230876039060131863417245602626450272171491216781211333398580351097532742936901381794441219000 : 3738691622038624912205882354462946254166074180522678624675543750351813231251935361046018485423872625670493860945115 : 1),
 (3490715509599620757014219224891042458217362724161986979920253508027122910837732586055426507346867438668802183386979 : 263717933183042481211907471272957902390808639416329260656514385772218419238902503396669143705143038367400411614672 : 1),
 (3490715509599620757014219224891042458217362724161986979920253508027122910837732586055426507346867438668802183386979 : 3738691622038624912205882354462946254166074180522678624675543750351813231251935361046018485423872625670493860945115 : 1),
 (3565769774833005028474017114938823260183839245406649361903132249252506180850507029069058535120013159559121156298386 : 1361032848920756422517604046183094371931399651818300504191559027686165387603753150518850719832556529323314120938428 : 1),
 (3565769774833005028474017114938823260183839245406649361903132249252506180850507029069058535120013159559121156298386 : 2641376706300910970900185779552809784625483168120707381140499108437866262887084713923836909296459134714580151621359 : 1),
 (3600341927549616142719772023007631890952039225098380136389515898100426677135006676546966537577086443178245718627703 : 987719302924219331468941975409393556003528833470256081029666181656841138640687011957826631075821848174315017135721 : 1),
 (3600341927549616142719772023007631890952039225098380136389515898100426677135006676546966537577086443178245718627703 : 3014690252297448061948847850326510600553353986468751804302391954467190511850150852484860998053193815863579255424066 : 1),
 (3669883326070567556076168624456009062523067914345975941825618374878193222108406430143609410502125660154671521790181 : 1415083150422375384659154255342874663099946470802904620810714799878292362309845203158311500499907266535004326534161 : 1),
 (3669883326070567556076168624456009062523067914345975941825618374878193222108406430143609410502125660154671521790181 : 2587326404799292008758635570393029493456936349136103264521343336245739288180992661284376128629108397502889946025626 : 1),
 (3738293300960828038263204470188379356544250229704808303994880105633631521491930207346698689515312015930290085502352 : 1488390455113772125418448659231214261772312778990977393872657491192851145400647885457873065942350664657693153779498 : 1),
 (3738293300960828038263204470188379356544250229704808303994880105633631521491930207346698689515312015930290085502352 : 2514019100107895267999341166504689894784570040948030491459400644931180505090189978984814563186664999380201118780289 : 1),
 (3766268823252738724694164897444632608955149903751410073912948365571612826176215757666773432058202325894853852671826 : 1377757625818480898103653260152018543594094399915738264671462736353608305196833427728050995697281992933276608340380 : 1),
 (3766268823252738724694164897444632608955149903751410073912948365571612826176215757666773432058202325894853852671826 : 2624651929403186495314136565583885612962788420023269620660595399770423345294004436714636633431733671104617664219407 : 1),
 (3794158912232431154675402713587968447773875875053877361925643564774539631048263777364113217006366682222973880985203 : 987719302924219331468941975409393556003528833470256081029666181656841138640687011957826631075821848174315017135721 : 1),
 (3794158912232431154675402713587968447773875875053877361925643564774539631048263777364113217006366682222973880985203 : 3014690252297448061948847850326510600553353986468751804302391954467190511850150852484860998053193815863579255424066 : 1),
 (3853108926933948309053984383708888424213086521597182515933777470544969310117249101613023907766000174668881695876384 : 997487335140523276306733735206127412079421231941546943967270204148979534579634013206150819829528136518997612852806 : 1),
 (3853108926933948309053984383708888424213086521597182515933777470544969310117249101613023907766000174668881695876384 : 3004922220081144117111056090529776744477461587997460941364787931975052115911203851236536809299487527518896659706981 : 1),
 (3888330422854077912930704664207244917990035823495705985518501843369705045735661748101762349843916892901738374299923 : 1676176410704313785562478877449811491298619082481287712950617051901146331175711110442688743044994488952212071851160 : 1),
 (3888330422854077912930704664207244917990035823495705985518501843369705045735661748101762349843916892901738374299923 : 2326233144517353607855310948286092665258263737457720172381441084222885319315126753999998886084021175085682200708627 : 1),
 (3888614942313332499313837212492685073622997133975316407716044423591441788160730683757341906500998756047936695498748 : 1193751889467020566002914104608893871119428384982355693049481849265752795930854568761413204546340237594420886230382 : 1),
 (3888614942313332499313837212492685073622997133975316407716044423591441788160730683757341906500998756047936695498748 : 2808657665754646827414875721127010285437454434956652192282576286858278854559983295681274424582675426443473386329405 : 1),
 (3911990180806928570297755068826913085726147969849006582286149802739657582755865677662293604649798834354863377597072 : 52773180847648252448388861801339437609448060884885116284278877770908110343239439189583654131265826133427769548059 : 1),
 (3911990180806928570297755068826913085726147969849006582286149802739657582755865677662293604649798834354863377597072 : 3949636374374019140969400963934564718947434759054122769047779258353123540147598425253103974997749837904466503011728 : 1),
 (3941433703990469861018057677155403829839978841455776984316114334304733462090246183397803321378458001659526828916896 : 431653904276377032401102663762173685723917167125734322574255668100024427799350558490224562706417371993055098799891 : 1),
 (3941433703990469861018057677155403829839978841455776984316114334304733462090246183397803321378458001659526828916896 : 3570755650945290361016687161973730470832965652813273562757802468024007222691487305952463066422598292044839173759896 : 1),
 (3956004395474098837628254559081278399437790480919110441782872614468170835925146347811552361848663176266579672936943 : 644394479309305077123003308264671517061331360878780088181972299629940278726570696759107451607114398582946900217000 : 1),
 (3956004395474098837628254559081278399437790480919110441782872614468170835925146347811552361848663176266579672936943 : 3358015075912362316294786517471232639495551459060227797150085836494091371764267167683580177521901265454947372342787 : 1)]

ここで得られた点たちから点を取り出して位数を調べてみる。

order 3 

sage: P3_1 = E([0, 2])
sage: P3_1.order()
3

3倍したらOになる点P3_1について、位数を調べると3になる。

sage: P3_2 = E([0, 4002409555221667393417789825735904156556882819939007885332058136124031650490837864442
....: 687629129015664037894272559785])
sage: P3_2.order()
3

3倍したらOになる点P3_2について、位数を調べると3になる。

order 11


11倍してOになる点たちの中から任意に選んで位数を調べてみる。

O.division_points(11)

適当に点を選んで位数を調べてみる。

sage: P11_1 = E([395600439547409883762825455908127839943779048091911044178287261446817083592514634781155236
....: 1848663176266579672936943, 33580150759123623162947865174712326394955514590602277971500858364940913
....: 71764267167683580177521901265454947372342787])
sage: P11_1.order()
11
sage: P11_2 = E([395600439547409883762825455908127839943779048091911044178287261446817083592514634781155236
....: 1848663176266579672936943, 33580150759123623162947865174712326394955514590602277971500858364940913
....: 71764267167683580177521901265454947372342787])
sage: P11_2.order()
11

選んだ点の位数が11であることが確認できました。

この記事が気に入ったらサポートをしてみませんか?