コード例 #1
0
def quart_4096(x):
	_1 = x
	_10       = fp_sqr(_1)
	_11       = fp_mul(_1,_10)
	_101      = fp_mul(_10,_11)
	_111      = fp_mul(_10,_101)
	_1001     = fp_mul(_10,_111)
	_1011     = fp_mul(_10,_1001)
	_1101     = fp_mul(_10,_1011)
	_1111     = fp_mul(_10,_1101)
	_10001    = fp_mul(_10,_1111)
	_10011    = fp_mul(_10,_10001)
	_10101    = fp_mul(_10,_10011)
	_10111    = fp_mul(_10,_10101)
	_11001    = fp_mul(_10,_10111)
	_11011    = fp_mul(_10,_11001)
	_11101    = fp_mul(_10,_11011)
	_11111    = fp_mul(_10,_11101)
	_111010   = fp_mul(_11011,_11111)
	_111111   = fp_mul(_101,_111010)
	_1110100  = fp_sqr(_111010)
	_1111111  = fp_mul(_1011,_1110100)
	_11101000 = fp_sqr(_1110100)
	_11111111 = fp_mul(_10111,_11101000)
	i38       = fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_11101000,128),_11001),1),64),_11011),2)
	i55       = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1,i38),1),128),_111111),1),128),_10101)
	i72       = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i55,32),_10111),1),16),_1101),1),64)
	i86       = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111,i72),1),8),_11),1),256),_10001)
	i108      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i86,64),_10111),1),256),_1101),1),64)
	i123      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011,i108),1),256),_1001),1),16),_11)
	i148      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i123,2048),_11111111),1),128),_1011),1),32)
	i163      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101,i148),1),64),_1011),1),64),_11101)
	i182      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i163,32),_101),1),128),_11001),1),32)
	i195      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101,i182),1),64),_10011),1),16),_1011)
	i216      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i195,128),_11101),1),32),_11101),1),128)
	i229      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101,i216),1),4),_11),1),256),_11111)
	i248      = fp_exp(fp_exp(fp_mul(fp_exp(fp_mul(fp_exp(i229,128),_11011),2),_1),1),512)
	i259      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101,i248),1),16),_1001),1),16),_111)
	i278      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i259,128),_11101),1),16),_1111),1),64)
	i290      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111,i278),1),64),_11111),1),8),_11)
	i313      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i290,256),_10011),1),128),_10111),1),64)
	i327      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111,i313),1),64),_10011),1),32),_10011)
	i345      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i327,128),_11011),1),8),_101),1),64)
	i359      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011,i345),1),16),_111),1),128),_1111)
	i374      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i359,16),_101),1),8),_1),1),64)
	i392      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1,i374),1),1024),_11111111),1),32),_1001)
	i411      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i392,8),_11),1),64),_11),1),256)
	i425      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001,i411),1),8),_1),1),256),_1111111)
	i450      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i425,1024),_1111111),1),64),_10001),1),128)
	i465      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111,i450),1),16),_101),1),256),_111111)
	i487      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i465,256),_11001),1),64),_10011),1),64)
	i498      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001,i487),1),64),_10101),1),4),_11)
	i522      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i498,2048),_1111111),1),8),_11),1),256)
	i536      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111,i522),1),64),_11001),1),32),_10001)
	i557      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i536,256),_11111),1),32),_1011),1),64)
	i573      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101,i557),1),64),_1001),1),128),_111)
	i596      = fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i573,128),_11001),1),8192),_10001),2)
	return       fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1,i596),1),1024),_111111),1),19473520333640844691127176862977149658590968948136526555247820243011272528285939061837707013418630693601041476568594986448123729387077643515811960411020482474294659386532350316053903539988147515390538730103863099146708934871245522941906322189870389962117919361028202071764176745980651257550452869590472617231874558907485685927367574648809115885947602724023790934518369995350619469561613808778207297256942426414559305648709312602649150614261853439607537507462932895730385881610561381979306213956956954155371387764484350419237234585750558467856203620817475676959043251863760768656792160668177150351045377597021414213264417090418226523925105259413550636485086184257591644591589393199898495538890080330871093821347753938084388897294966205185738762080099421245687443300643061380644532328158133536192948933806592507527238139734445474775820534266432764308034618758576637009643867006811192758495822265172889202823244282947775986251889156602254569864288788917095347237435709225746335486741183724272646028951741973332877875405120448636089315222389626215827597972845678291201404256024264704)
コード例 #2
0
def quart_2048(x):
	_1 = x
	_10     = fp_sqr(_1)
	_11     = fp_mul(_1,_10)
	_101    = fp_mul(_10,_11)
	_111    = fp_mul(_10,_101)
	_1001   = fp_mul(_10,_111)
	_1011   = fp_mul(_10,_1001)
	_1101   = fp_mul(_10,_1011)
	_1111   = fp_mul(_10,_1101)
	_10001  = fp_mul(_10,_1111)
	_10011  = fp_mul(_10,_10001)
	_10101  = fp_mul(_10,_10011)
	_10111  = fp_mul(_10,_10101)
	_11001  = fp_mul(_10,_10111)
	_11011  = fp_mul(_10,_11001)
	_11101  = fp_mul(_10,_11011)
	_11111  = fp_mul(_10,_11101)
	_110010 = fp_mul(_10011,_11111)
	_111111 = fp_mul(_1101,_110010)
	i36     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_110010,8),_101),1),128),_11101),1),64)
	i52     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001,i36),1),128),_111111),1),64),_10011)
	i75     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i52,64),_1011),1),1024),_11111),1),32)
	i91     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11,i75),1),256),_10011),1),32),_11001)
	i110    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i91,4),_11),1),2048),_10111),1),16)
	i123    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101,i110),1),64),_10001),1),16),_11)
	i143    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i123,128),_1001),1),128),_10011),1),16)
	i158    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111,i143),1),64),_1001),1),64),_11111)
	i177    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i158,32),_1101),1),128),_1011),1),32)
	i192    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111,i177),1),8),_1),1),512),_11111)
	i216    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i192,128),_1011),1),256),_10101),1),128)
	i228    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101,i216),1),16),_1101),1),32),_1011)
	i249    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i228,64),_11101),1),256),_1111),1),32)
	i271    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101,i249),1),1024),_10001),1),512),_111111)
	i295    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i271,1024),_111),1),32),_101),1),128)
	i315    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11,i295),1),1024),_1111),1),128),_10001)
	i336    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i315,32),_11011),1),256),_111),1),64)
	i349    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111,i336),1),128),_11001),1),8),_101)
	i369    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i349,32),_11),1),512),_10011),1),16)
	i384    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011,i369),1),32),_101),1),128),_11111)
	i402    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i384,64),_11101),1),16),_1101),1),64)
	i419    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111,i402),1),64),_1001),1),256),_10001)
	i442    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i419,8),_11),1),1024),_10011),1),256)
	i454    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111,i442),1),64),_1111),1),8),_1)
	i471    = fp_exp(fp_exp(fp_mul(fp_exp(fp_mul(fp_exp(i454,512),_111111),2),_1),1),32)
	i488    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101,i471),1),512),_11111),1),32),_1001)
	i507    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i488,8),_11),1),256),_1001),1),64)
	i519    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111,i507),1),64),_10011),1),8),_101)
	i540    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i519,128),_11001),1),64),_10001),1),64)
	i553    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001,i540),1),32),_10101),1),32),_1111)
	i572    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i553,64),_1011),1),16),_111),1),128)
	i586    = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111,i572),1),16),_1011),1),128),_11011)
	i605    = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i586,4),_11),1),256),_11101),1),128)
	return     fp_exp(fp_exp(fp_mul(_1001,i605),1),301289053365129073572514575753539264114011655993211118919959379883157173948975400083635628013418256207931095785111000598482802122349369790621201623486346831431901667422703153096347759739710187459605692892173477507199668232238074888682673390262438495624726955167787584703684169410202178551474270495973233796296121138652698992881779001445344806260072448481362624214361535434580828897689382975609171897782563280874104737338246376565730415550154123357125595042414592)
コード例 #3
0
def sept_1792(x):
	_1 = x
	_10       = fp_sqr(_1)
	_11       = fp_mul(_1,_10)
	_101      = fp_mul(_10,_11)
	_111      = fp_mul(_10,_101)
	_1001     = fp_mul(_10,_111)
	_1011     = fp_mul(_10,_1001)
	_1101     = fp_mul(_10,_1011)
	_1111     = fp_mul(_10,_1101)
	_10001    = fp_mul(_10,_1111)
	_10010    = fp_mul(_1,_10001)
	_10011    = fp_mul(_1,_10010)
	_10101    = fp_mul(_10,_10011)
	_10111    = fp_mul(_10,_10101)
	_11011    = fp_mul(_1001,_10010)
	_11101    = fp_mul(_10,_11011)
	_11111    = fp_mul(_10,_11101)
	_100001   = fp_mul(_10,_11111)
	_100011   = fp_mul(_10,_100001)
	_100101   = fp_mul(_10,_100011)
	_100111   = fp_mul(_10,_100101)
	_101001   = fp_mul(_10,_100111)
	_101011   = fp_mul(_10,_101001)
	_101101   = fp_mul(_10,_101011)
	_101111   = fp_mul(_10,_101101)
	_110001   = fp_mul(_10,_101111)
	_110011   = fp_mul(_10,_110001)
	_110101   = fp_mul(_10,_110011)
	_111011   = fp_mul(_10010,_101001)
	_111101   = fp_mul(_10,_111011)
	_111111   = fp_mul(_10,_111101)
	_11111100 = fp_exp(_111111,4)
	_11111111 = fp_mul(_11,_11111100)
	i34       = fp_mul(_100001,_11111111)
	i35       = fp_sqr(_11111111)
	i36       = fp_sqr(i34)
	i37       = fp_sqr(i35)
	i39       = fp_mul(fp_sqr(i36),_1011)
	i40       = fp_sqr(i37)
	i41       = fp_sqr(i39)
	i42       = fp_sqr(i40)
	i43       = fp_sqr(i41)
	i44       = fp_sqr(i42)
	i45       = fp_sqr(i43)
	i46       = fp_sqr(i44)
	i47       = fp_sqr(i45)
	i48       = fp_sqr(i46)
	i49       = fp_sqr(i47)
	x16       = fp_mul(fp_sqr(i48),_11111111)
	i52       = fp_sqr(i49)
	i53       = fp_sqr(x16)
	i54       = fp_sqr(i52)
	i55       = fp_sqr(i53)
	i56       = fp_sqr(i54)
	i57       = fp_sqr(i55)
	i58       = fp_sqr(i56)
	i59       = fp_sqr(i57)
	i60       = fp_sqr(i58)
	i61       = fp_sqr(i59)
	i62       = fp_sqr(i60)
	i63       = fp_sqr(i61)
	i65       = fp_mul(fp_sqr(i62),_11101)
	i66       = fp_sqr(i63)
	i67       = fp_sqr(i65)
	i68       = fp_sqr(i66)
	i69       = fp_sqr(i67)
	i70       = fp_sqr(i68)
	i71       = fp_sqr(i69)
	i72       = fp_sqr(i70)
	i73       = fp_sqr(i71)
	i74       = fp_sqr(i72)
	i75       = fp_sqr(i73)
	i76       = fp_sqr(i74)
	i77       = fp_sqr(i75)
	i78       = fp_sqr(i76)
	i80       = fp_mul(fp_sqr(i77),_100011)
	i81       = fp_sqr(i78)
	i82       = fp_sqr(i80)
	i83       = fp_sqr(i81)
	i84       = fp_sqr(i82)
	x32       = fp_mul(fp_sqr(i83),x16)
	i105      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i84,16),_100111),1),256),_100111),1),32)
	i122      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111,i105),1),16),_111),1),1024),_100001)
	i146      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i122,128),_100101),1),128),_111111),1),256)
	i163      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001,i146),1),256),_111011),1),64),_10001)
	i187      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i163,64),_111),1),1024),_101111),1),64)
	i200      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101,i187),1),64),_11101),1),16),_11)
	i236      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i200,512),_111),1),65536),_101111),1),512)
	i264      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101,i236),1),128),_110011),1),262144),_100001)
	i285      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i264,32),_11101),1),256),_101101),1),64)
	i302      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101001,i285),1),32),_10101),1),512),_111011)
	i330      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i302,512),_100011),1),1024),_101011),1),128)
	i345      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111101,i330),1),16),_1111),1),256),_101101)
	i368      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i345,64),_101111),1),64),_10111),1),512)
	i384      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111101,i368),1),128),_10011),1),64),_10001)
	i405      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i384,64),_10111),1),32),_1101),1),256)
	i418      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101001,i405),1),16),_1011),1),64),_1011)
	i442      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i418,128),_1011),1),512),_100101),1),64)
	i457      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_100101,i442),1),4),_11),1),1024),_11011)
	i479      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i457,16),_111),1),512),_11111111),1),128)
	i493      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111011,i479),1),64),_101001),1),32),_10101)
	i515      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i493,128),_101111),1),64),_101111),1),128)
	i530      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_100101,i515),1),64),_100111),1),64),_110001)
	i552      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i530,128),_110001),1),128),_100011),1),64)
	i570      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111011,i552),1),1024),_110101),1),32),_10101)
	i592      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i570,256),_110011),1),8),_101),1),512)
	i614      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_110011,i592),1),8),_111),1),65536),_11111)
	i662      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i614,1024),_110101),1),4),_11),1),17179869184)
	i729      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i662),1),4294967296),x32),1),4294967296),x32)
	i827      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i729,4294967296),x32),1),4294967296),x32),1),4294967296)
	i894      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i827),1),4294967296),x32),1),4294967296),x32)
	i992      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i894,4294967296),x32),1),4294967296),x32),1),4294967296)
	i1059     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i992),1),4294967296),x32),1),4294967296),x32)
	i1157     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1059,4294967296),x32),1),4294967296),x32),1),4294967296)
	i1224     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i1157),1),4294967296),x32),1),4294967296),x32)
	i1322     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1224,4294967296),x32),1),4294967296),x32),1),4294967296)
	i1389     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i1322),1),4294967296),x32),1),4294967296),x32)
	i1487     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1389,4294967296),x32),1),4294967296),x32),1),4294967296)
	i1554     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i1487),1),4294967296),x32),1),4294967296),x32)
	i1652     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1554,4294967296),x32),1),4294967296),x32),1),4294967296)
	i1719     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i1652),1),4294967296),x32),1),4294967296),x32)
	i1817     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1719,4294967296),x32),1),4294967296),x32),1),4294967296)
	i1884     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x32,i1817),1),4294967296),x32),1),4294967296),x32)
	i1952     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1884,4294967296),x32),1),4294967296),x32),1),4)
	return       fp_mul(_11,i1952)
コード例 #4
0
def tri_2048(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _110 = fp_sqr(_11)
    _1100 = fp_sqr(_110)
    _1101 = fp_mul(_1, _1100)
    _1110 = fp_mul(_1, _1101)
    _10000 = fp_mul(_10, _1110)
    _11110 = fp_mul(_1110, _10000)
    _100001 = fp_mul(_11, _11110)
    _100100 = fp_mul(_11, _100001)
    _100101 = fp_mul(_1, _100100)
    _1000110 = fp_mul(_100001, _100101)
    _1010110 = fp_mul(_10000, _1000110)
    _1011001 = fp_mul(_11, _1010110)
    _1011111 = fp_mul(_110, _1011001)
    _10000100 = fp_mul(_100101, _1011111)
    _10100010 = fp_mul(_11110, _10000100)
    _11000110 = fp_mul(_100100, _10100010)
    _11010010 = fp_mul(_1100, _11000110)
    i20 = fp_mul(_11000110, _11010010)
    i21 = fp_mul(_10000100, i20)
    i22 = fp_mul(_1010110, i21)
    i23 = fp_mul(_1000110, i22)
    i24 = fp_mul(i21, i23)
    i25 = fp_mul(i23, i24)
    i26 = fp_mul(_1011001, i25)
    i27 = fp_mul(i20, i26)
    i28 = fp_mul(_11010010, i27)
    i29 = fp_mul(_1101, i28)
    i30 = fp_mul(_10100010, i29)
    i31 = fp_mul(i22, i30)
    i32 = fp_mul(_1011001, i31)
    i33 = fp_mul(i30, i32)
    i34 = fp_mul(_1011111, i33)
    i35 = fp_mul(i26, i34)
    i36 = fp_mul(i31, i35)
    i37 = fp_mul(i24, i36)
    i38 = fp_mul(i34, i37)
    i39 = fp_mul(i27, i38)
    i40 = fp_mul(i33, i39)
    i41 = fp_mul(i37, i40)
    i42 = fp_mul(i29, i41)
    i43 = fp_mul(i36, i42)
    i44 = fp_mul(i39, i43)
    i45 = fp_mul(i32, i44)
    i46 = fp_mul(i25, i45)
    i47 = fp_mul(i38, i46)
    i48 = fp_mul(i44, i47)
    i49 = fp_mul(i40, i48)
    i50 = fp_mul(i35, i49)
    i51 = fp_mul(i46, i50)
    i52 = fp_mul(i50, i51)
    i53 = fp_mul(i43, i52)
    i54 = fp_mul(i41, i53)
    i55 = fp_mul(i45, i54)
    i56 = fp_mul(i49, i55)
    i57 = fp_mul(i47, i56)
    i58 = fp_mul(i28, i57)
    i59 = fp_mul(i55, i58)
    i60 = fp_mul(i57, i59)
    i61 = fp_mul(i53, i60)
    i62 = fp_mul(i56, i61)
    i63 = fp_mul(i54, i62)
    i64 = fp_mul(i59, i63)
    i65 = fp_mul(i51, i64)
    i66 = fp_mul(i58, i65)
    i67 = fp_mul(i65, i66)
    i68 = fp_mul(i60, i67)
    i69 = fp_mul(i61, i68)
    i70 = fp_mul(i63, i69)
    i71 = fp_mul(i52, i70)
    i72 = fp_mul(i48, i71)
    i73 = fp_mul(i64, i72)
    i74 = fp_mul(i69, i73)
    i75 = fp_mul(i62, i74)
    i76 = fp_mul(i66, i75)
    i77 = fp_mul(i73, i76)
    i78 = fp_mul(i70, i77)
    i79 = fp_mul(i67, i78)
    i80 = fp_mul(i74, i79)
    i81 = fp_mul(i71, i80)
    i82 = fp_mul(i72, i81)
    i83 = fp_mul(i75, i82)
    i84 = fp_mul(i77, i83)
    i85 = fp_mul(i68, i84)
    i86 = fp_mul(i80, i85)
    i87 = fp_mul(i82, i86)
    i88 = fp_mul(i81, i87)
    i89 = fp_mul(i78, i88)
    i90 = fp_mul(i42, i89)
    i91 = fp_mul(i76, i90)
    i92 = fp_mul(i83, i91)
    i93 = fp_mul(i85, i92)
    i94 = fp_mul(i86, i93)
    i95 = fp_mul(i84, i94)
    i96 = fp_mul(i94, i95)
    i97 = fp_mul(i89, i96)
    i98 = fp_mul(i79, i97)
    i99 = fp_mul(i88, i98)
    i101 = fp_mul(fp_sqr(i99), i91)
    i102 = fp_mul(i99, i101)
    i103 = fp_mul(i93, i102)
    i104 = fp_mul(i98, i103)
    i105 = fp_mul(i90, i104)
    i106 = fp_mul(i102, i105)
    i107 = fp_mul(i97, i106)
    i108 = fp_mul(i101, i107)
    i109 = fp_mul(i95, i108)
    i110 = fp_mul(i96, i109)
    i111 = fp_mul(i105, i110)
    i112 = fp_mul(i103, i111)
    i113 = fp_mul(i108, i112)
    i114 = fp_mul(i107, i113)
    i115 = fp_mul(i109, i114)
    i116 = fp_mul(i87, i115)
    i118 = fp_mul(fp_sqr(i116), i92)
    i119 = fp_mul(i104, i118)
    i120 = fp_mul(i113, i119)
    i121 = fp_mul(i110, i120)
    i122 = fp_mul(i115, i121)
    i123 = fp_mul(i114, i122)
    i124 = fp_mul(i106, i123)
    i125 = fp_mul(i112, i124)
    i126 = fp_mul(i121, i125)
    i127 = fp_mul(i118, i126)
    i128 = fp_mul(i120, i127)
    i129 = fp_mul(i122, i128)
    i131 = fp_mul(fp_sqr(i129), i119)
    i132 = fp_mul(i111, i131)
    i133 = fp_mul(i126, i132)
    i134 = fp_mul(i123, i133)
    i135 = fp_mul(i125, i134)
    i136 = fp_mul(i132, i135)
    i137 = fp_mul(i128, i136)
    i138 = fp_mul(i129, i137)
    i139 = fp_mul(i131, i138)
    i140 = fp_mul(i124, i139)
    i141 = fp_mul(i136, i140)
    i142 = fp_mul(i127, i141)
    i143 = fp_mul(i137, i142)
    i144 = fp_mul(i135, i143)
    i145 = fp_mul(i133, i144)
    i146 = fp_mul(i116, i145)
    i147 = fp_mul(i134, i146)
    i148 = fp_mul(i138, i147)
    i149 = fp_mul(i140, i148)
    i150 = fp_mul(i139, i149)
    i151 = fp_mul(i143, i150)
    i152 = fp_mul(i142, i151)
    i153 = fp_mul(i146, i152)
    i154 = fp_mul(i147, i153)
    i155 = fp_mul(i141, i154)
    i157 = fp_mul(fp_sqr(i155), i145)
    i158 = fp_mul(i155, i157)
    i159 = fp_mul(i144, i158)
    i160 = fp_mul(i157, i159)
    i161 = fp_mul(i152, i160)
    i162 = fp_mul(i159, i161)
    i163 = fp_mul(i154, i162)
    i164 = fp_mul(i148, i163)
    i166 = fp_mul(fp_sqr(i164), i149)
    i167 = fp_mul(i150, i166)
    i168 = fp_mul(i162, i167)
    i169 = fp_mul(i151, i168)
    i170 = fp_mul(i153, i169)
    i171 = fp_mul(i160, i170)
    i172 = fp_mul(i161, i171)
    i173 = fp_mul(i158, i172)
    i174 = fp_mul(i168, i173)
    i175 = fp_mul(i164, i174)
    i176 = fp_mul(i169, i175)
    x57 = fp_mul(i163, i176)
    i178 = fp_mul(i166, x57)
    i179 = fp_mul(i173, i178)
    i180 = fp_mul(i167, i179)
    i181 = fp_mul(i172, i180)
    i182 = fp_mul(i180, i181)
    i183 = fp_mul(i176, i182)
    i184 = fp_mul(i178, i183)
    i185 = fp_mul(i171, i184)
    i186 = fp_mul(i170, i185)
    i187 = fp_mul(i175, i186)
    i188 = fp_mul(i181, i187)
    i189 = fp_mul(i174, i188)
    i190 = fp_mul(i179, i189)
    i191 = fp_mul(i188, i190)
    i192 = fp_mul(i186, i191)
    i193 = fp_mul(i185, i192)
    i194 = fp_mul(i182, i193)
    i195 = fp_mul(i183, i194)
    i196 = fp_mul(i192, i195)
    i197 = fp_mul(i190, i196)
    i198 = fp_mul(i193, i197)
    i199 = fp_mul(i189, i198)
    x64 = fp_mul(i187, i199)
    i396 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i196, 18446744073709551616), i198),
                           1), 9223372036854775808), i184), 1),
        147573952589676412928)
    i530 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i191, i396), 1),
                           295147905179352825856), i197), 1),
            9223372036854775808), i195)
    i725 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i530, 18446744073709551616), i194),
                           1), 36893488147419103232), i199), 1),
        18446744073709551616)
    i856 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i725), 1), 18446744073709551616),
                    x64), 1), 18446744073709551616), x64)
    i1050 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i856, 18446744073709551616), x64), 1),
                    18446744073709551616), x64), 1), 18446744073709551616)
    i1181 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i1050), 1),
                           18446744073709551616), x64), 1),
            18446744073709551616), x64)
    i1375 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i1181, 18446744073709551616), x64),
                           1), 18446744073709551616), x64), 1),
        18446744073709551616)
    i1506 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i1375), 1),
                           18446744073709551616), x64), 1),
            18446744073709551616), x64)
    i1700 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i1506, 18446744073709551616), x64),
                           1), 18446744073709551616), x64), 1),
        18446744073709551616)
    i1831 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i1700), 1),
                           18446744073709551616), x64), 1),
            18446744073709551616), x64)
    i2025 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i1831, 18446744073709551616), x64),
                           1), 18446744073709551616), x64), 1),
        18446744073709551616)
    i2156 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i2025), 1),
                           18446744073709551616), x64), 1),
            18446744073709551616), x64)
    return fp_mul(fp_exp(i2156, 144115188075855872), x57)
コード例 #5
0
def quart_1024(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _1010000 = fp_mul(_10001, _111111)
    i37 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_1010000, 8), _11101), 1), 32),
                   _1001), 1), 256)
    i51 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i37), 1), 4), _11), 1),
            512), _101)
    i70 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i51, 256), _1001), 1), 32),
                   _1101), 1), 16)
    i86 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101, i70), 1), 128), _111111),
                   1), 64), _111)
    i106 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i86, 128), _10111), 1), 32),
                   _10011), 1), 64)
    i119 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i106), 1), 16), _101),
                   1), 64), _1111)
    i139 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i119, 128), _1001), 1), 32),
                   _1011), 1), 64)
    i158 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10001, i139), 1), 128), _11001),
                1), 512), _111111)
    i181 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i158, 128), _10001), 1), 32),
                   _11), 1), 512)
    i195 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i181), 1), 4), _11), 1),
            512), _11011)
    i213 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i195, 32), _10101), 1), 16),
                   _1111), 1), 128)
    i231 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i213), 1), 1024), _1101),
                   1), 32), _1001)
    i249 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i231, 64), _10101), 1), 32),
                   _10101), 1), 32)
    i272 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i249), 1), 32768), _1001),
                   1), 32), _101)
    i291 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i272, 128), _10101), 1), 64),
                   _10111), 1), 16)
    i307 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i291), 1), 128), _11111),
                   1), 64), _11011)
    i323 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i307, 128), _10011), 1), 64),
               _10111), 2)
    i341 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i323), 1), 4096), _111111),
                   1), 8), _111)
    i360 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i341, 64), _10111), 1), 32),
                   _10001), 1), 64)
    i377 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10101, i360), 1), 512), _10011),
                1), 32), _1111)
    i403 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i377, 4096), _10111), 1), 128),
                   _10101), 1), 32)
    i417 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i403), 1), 16), _101),
                   1), 128), _10111)
    i439 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i417, 64), _10001), 1), 16),
                   _1101), 1), 1024)
    i452 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i439), 1), 16), _1001),
                   1), 64), _10011)
    i469 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i452, 16), _111), 1), 32),
                   _111), 1), 64)
    i483 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i469), 1), 64), _11011),
                   1), 32), _10101)
    i501 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i483, 64), _11101), 1), 64),
                   _1111), 1), 16)
    i518 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i501), 1), 1024), _11011),
                   1), 16), _1001)
    i535 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i518, 32), _11), 1), 512), _10101),
        2)
    i555 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i535), 1), 1024), _11), 1),
            128), _1011)
    i575 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i555, 64), _1011), 1), 32),
                   _1001), 1), 128)
    i597 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i575), 1), 1024), _10111),
                   1), 512), _11101)
    return fp_exp(
        fp_exp(fp_mul(fp_exp(i597, 64), _1101), 1),
        1675975991242824637446753124775730765934920727574049172215445180465220503759193372100234287270862928461253982273310756356719235351493321243304206125760512
    )
コード例 #6
0
def sept_1024(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _110 = fp_sqr(_11)
    _1000 = fp_mul(_10, _110)
    _1001 = fp_mul(_1, _1000)
    _1010 = fp_mul(_1, _1001)
    _1101 = fp_mul(_11, _1010)
    _10010 = fp_mul(_1000, _1010)
    _11100 = fp_mul(_1010, _10010)
    _100100 = fp_mul(_1000, _11100)
    _110001 = fp_mul(_1101, _100100)
    _110110 = fp_mul(_10010, _100100)
    _111000 = fp_mul(_10, _110110)
    _111010 = fp_mul(_10, _111000)
    _1000000 = fp_mul(_110, _111010)
    _1001010 = fp_mul(_1010, _1000000)
    _1010000 = fp_mul(_110, _1001010)
    _1011001 = fp_mul(_1001, _1010000)
    _1101011 = fp_mul(_10010, _1011001)
    _1111010 = fp_mul(_111010, _1000000)
    _1111100 = fp_mul(_10, _1111010)
    _10000110 = fp_mul(_1010, _1111100)
    _10110111 = fp_mul(_110001, _10000110)
    _11000000 = fp_mul(_1001, _10110111)
    _11011100 = fp_mul(_11100, _11000000)
    i26 = fp_mul(_1101011, _11011100)
    i27 = fp_mul(_1111010, i26)
    i28 = fp_mul(_1000000, i27)
    i29 = fp_mul(_11100, i28)
    i30 = fp_mul(_11, i29)
    i31 = fp_mul(_1010, i30)
    i32 = fp_mul(_110110, i30)
    i33 = fp_mul(_1111010, i30)
    i34 = fp_mul(_100100, i33)
    i35 = fp_mul(_1111100, i34)
    i36 = fp_mul(_110, i35)
    i37 = fp_mul(_1010000, i36)
    i38 = fp_mul(_11000000, i37)
    i39 = fp_mul(_110110, i38)
    i40 = fp_mul(_111010, i38)
    i41 = fp_mul(_111000, i40)
    i42 = fp_mul(_10000110, i41)
    i43 = fp_mul(_111010, i42)
    i44 = fp_mul(_1001010, i43)
    i45 = fp_mul(_11100, i44)
    i46 = fp_mul(i28, i45)
    i47 = fp_mul(_100100, i46)
    i48 = fp_mul(_10110111, i47)
    i49 = fp_mul(i37, i48)
    i50 = fp_mul(_1101, i49)
    i51 = fp_mul(_11011100, i50)
    i52 = fp_mul(i39, i51)
    i53 = fp_mul(i26, i52)
    i54 = fp_mul(i29, i53)
    i55 = fp_mul(_1001, i54)
    i56 = fp_mul(i40, i55)
    i57 = fp_mul(_1000, i56)
    i58 = fp_mul(i33, i57)
    i59 = fp_mul(i31, i58)
    i60 = fp_mul(i47, i59)
    i61 = fp_mul(i55, i60)
    i62 = fp_mul(i41, i61)
    i63 = fp_mul(i45, i62)
    i64 = fp_mul(i38, i63)
    i65 = fp_mul(i35, i64)
    i66 = fp_mul(i44, i65)
    i67 = fp_mul(i32, i66)
    i68 = fp_mul(_100100, i67)
    i69 = fp_mul(i57, i68)
    i70 = fp_mul(i36, i69)
    i71 = fp_mul(i53, i70)
    i72 = fp_mul(i59, i71)
    i73 = fp_mul(i42, i72)
    i74 = fp_mul(_1010, i73)
    i75 = fp_mul(i48, i74)
    i76 = fp_mul(i49, i75)
    i77 = fp_mul(_1010000, i76)
    i78 = fp_mul(i30, i77)
    i79 = fp_mul(i43, i78)
    i80 = fp_mul(i56, i79)
    i81 = fp_mul(i34, i80)
    x16 = fp_mul(i58, i81)
    i140 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i76, 32768), i60), 1), 4194304),
                   i67), 1), 524288)
    i173 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i81, i140), 1), 65536), i73),
                   1), 16384), i61)
    i219 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i173, 262144), i80), 1), 65536),
                   i75), 1), 1024)
    i262 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i27, i219), 1), 262144), i46),
                   1), 4194304), i72)
    i327 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i262, 65536), i50), 1), 536870912),
                i66), 1), 262144)
    i365 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i63, i327), 1), 524288), i70),
                   1), 65536), i69)
    i417 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i365, 16384), i52), 1), 16384),
                   _1011001), 1), 4194304)
    i453 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i51, i417), 1), 1048576), i78),
                   1), 8192), i54)
    i513 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i453, 524288), i74), 1), 1048576),
                i68), 1), 524288)
    i549 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i77, i513), 1), 131072), i79),
                   1), 65536), i71)
    i600 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i549, 32768), i64), 1), 65536),
                   i65), 1), 262144)
    i636 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i62, i600), 1), 131072), x16),
                   1), 65536), x16)
    i686 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i636, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i721 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i686), 1), 65536), x16),
                   1), 65536), x16)
    i771 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i721, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i806 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i771), 1), 65536), x16),
                   1), 65536), x16)
    i856 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i806, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i891 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i856), 1), 65536), x16),
                   1), 65536), x16)
    i941 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i891, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i976 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i941), 1), 65536), x16),
                   1), 65536), x16)
    i1026 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i976, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i1061 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i1026), 1), 65536), x16),
                   1), 65536), x16)
    i1111 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1061, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i1146 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i1111), 1), 65536), x16),
                   1), 65536), x16)
    return fp_mul(fp_exp(i1146, 4), _11)
コード例 #7
0
def sq_4096(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111010 = fp_mul(_11011, _11111)
    _111111 = fp_mul(_101, _111010)
    _1110100 = fp_sqr(_111010)
    _1111111 = fp_mul(_1011, _1110100)
    _11101000 = fp_sqr(_1110100)
    _11111111 = fp_mul(_10111, _11101000)
    i38 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_11101000, 128), _11001), 1), 64),
               _11011), 2)
    i55 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i38), 1), 128), _111111),
                   1), 128), _10101)
    i72 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i55, 32), _10111), 1), 16),
                   _1101), 1), 64)
    i86 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i72), 1), 8), _11), 1),
            256), _10001)
    i108 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i86, 64), _10111), 1), 256),
                   _1101), 1), 64)
    i123 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i108), 1), 256), _1001),
                   1), 16), _11)
    i148 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i123, 2048), _11111111), 1), 128),
                _1011), 1), 32)
    i163 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101, i148), 1), 64), _1011),
                   1), 64), _11101)
    i182 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i163, 32), _101), 1), 128),
                   _11001), 1), 32)
    i195 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i182), 1), 64), _10011),
                   1), 16), _1011)
    i216 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i195, 128), _11101), 1), 32),
                   _11101), 1), 128)
    i229 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i216), 1), 4), _11), 1),
            256), _11111)
    i248 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_mul(fp_exp(i229, 128), _11011), 2), _1), 1),
        512)
    i259 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i248), 1), 16), _1001),
                   1), 16), _111)
    i278 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i259, 128), _11101), 1), 16),
                   _1111), 1), 64)
    i290 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i278), 1), 64), _11111),
                   1), 8), _11)
    i313 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i290, 256), _10011), 1), 128),
                   _10111), 1), 64)
    i327 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i313), 1), 64), _10011),
                   1), 32), _10011)
    i345 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i327, 128), _11011), 1), 8),
                   _101), 1), 64)
    i359 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i345), 1), 16), _111),
                   1), 128), _1111)
    i374 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i359, 16), _101), 1), 8), _1),
            1), 64)
    i392 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_1, i374), 1), 1024), _11111111),
                1), 32), _1001)
    i411 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i392, 8), _11), 1), 64), _11),
            1), 256)
    i425 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i411), 1), 8), _1), 1),
            256), _1111111)
    i450 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i425, 1024), _1111111), 1), 64),
                   _10001), 1), 128)
    i465 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111, i450), 1), 16), _101),
                   1), 256), _111111)
    i487 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i465, 256), _11001), 1), 64),
                   _10011), 1), 64)
    i498 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i487), 1), 64), _10101),
                   1), 4), _11)
    i522 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i498, 2048), _1111111), 1), 8),
                   _11), 1), 256)
    i536 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i522), 1), 64), _11001),
                   1), 32), _10001)
    i557 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i536, 256), _11111), 1), 32),
                   _1011), 1), 64)
    i573 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101, i557), 1), 64), _1001),
                   1), 128), _111)
    i596 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i573, 128), _11001), 1), 8192),
               _10001), 2)
    return fp_exp(
        fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i596), 1), 1024), _111111), 1),
        38947040667281689382254353725954299317181937896273053110495640486022545056571878123675414026837261387202082953137189972896247458774155287031623920822040964948589318773064700632107807079976295030781077460207726198293417869742491045883812644379740779924235838722056404143528353491961302515100905739180945234463749117814971371854735149297618231771895205448047581869036739990701238939123227617556414594513884852829118611297418625205298301228523706879215075014925865791460771763221122763958612427913913908310742775528968700838474469171501116935712407241634951353918086503727521537313584321336354300702090755194042828426528834180836453047850210518827101272970172368515183289183178786399796991077780160661742187642695507876168777794589932410371477524160198842491374886601286122761289064656316267072385897867613185015054476279468890949551641068532865528616069237517153274019287734013622385516991644530345778405646488565895551972503778313204509139728577577834190694474871418451492670973482367448545292057903483946665755750810240897272178630444779252431655195945691356582402808512048529408
    )
コード例 #8
0
def sept_512(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _11111100 = fp_exp(_111111, 4)
    _11111111 = fp_mul(_11, _11111100)
    i39 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10001, _11111100), 1), 64),
                       _10001), 1), 512), _11101)
    i61 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i39, 128), _10011), 1), 2048),
                   _11111111), 1), 4)
    i79 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i61), 1), 256), _1111), 1),
            128), _1011)
    i101 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i79, 128), _10011), 1), 32),
                   _11101), 1), 256)
    i116 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111111, i101), 1), 8), _1), 1),
            512), _11101)
    i136 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i116, 32), _10011), 1), 64),
                   _10001), 1), 128)
    i149 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111, i136), 1), 32), _1001),
                   1), 32), _1011)
    i167 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i149, 16), _11), 1), 64), _111),
            1), 64)
    i185 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i167), 1), 128), _1101),
                   1), 256), _10011)
    i202 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i185, 8), _111), 1), 2048),
               _11111111), 2)
    i212 = fp_mul(
        fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i202), 1), 64), _10101), 2), _1)
    i234 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i212, 64), _11), 1), 256),
                   _10011), 1), 64)
    i249 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i234), 1), 64), _11),
                   1), 64), _111)
    i271 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i249, 16), _11), 1), 256),
                   _11111), 1), 256)
    i285 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10111, i271), 1), 128), _11111),
                1), 16), _111)
    i307 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i285, 128), _101), 1), 128),
                   _10011), 1), 64)
    i321 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i307), 1), 16), _111),
                   1), 128), _11001)
    i341 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i321, 16), _11), 1), 256),
                   _11111), 1), 64)
    i357 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i341), 1), 128), _111111),
                   1), 64), _11011)
    i379 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i357, 64), _101), 1), 128),
                   _10011), 1), 128)
    i393 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i379), 1), 64), _10001),
                   1), 32), _10111)
    i410 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i393, 32), _10001), 1), 32),
                   _11101), 1), 32)
    i423 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i410), 1), 32), _1101),
                   1), 32), _1)
    i444 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i423, 128), _111), 1), 64),
                   _1001), 1), 64)
    i459 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i444), 1), 8), _1), 1),
            512), _11111111)
    i481 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i459, 64), _1001), 1), 64),
                   _11001), 1), 256)
    i494 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11001, i481), 1), 8), _1), 1),
            128), _111111)
    i510 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i494, 64), _10011), 1), 32),
                   _11001), 1), 8)
    i526 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101, i510), 1), 2048), _11101),
                   1), 4), _11)
    i546 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i526, 64), _1), 1), 512),
                   _11111111), 1), 8)
    i568 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i546), 1), 4096), _1101),
                   1), 128), _10001)
    i590 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i568, 16), _1101), 1), 64), _1),
            1), 1024)
    i604 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i590), 1), 64), _10111),
                   1), 32), _11001)
    return fp_mul(fp_exp(i604, 16), _1111)
コード例 #9
0
def sept_4096(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1110 = fp_sqr(_111)
    _10001 = fp_mul(_11, _1110)
    _10110 = fp_mul(_101, _10001)
    _11000 = fp_mul(_10, _10110)
    _11111 = fp_mul(_111, _11000)
    _100001 = fp_mul(_10, _11111)
    _110010 = fp_mul(_10001, _100001)
    _1010001 = fp_mul(_11111, _110010)
    _1100111 = fp_mul(_10110, _1010001)
    _10011001 = fp_mul(_110010, _1100111)
    i16 = fp_mul(fp_sqr(_10011001), _100001)
    i17 = fp_mul(_11000, i16)
    i18 = fp_mul(_1010001, i17)
    i19 = fp_mul(_1100111, i18)
    i20 = fp_mul(i17, i19)
    i21 = fp_mul(i16, i20)
    i22 = fp_mul(_10011001, i21)
    i23 = fp_mul(i19, i22)
    i24 = fp_mul(i21, i23)
    i25 = fp_mul(i20, i24)
    i26 = fp_mul(i22, i25)
    i27 = fp_mul(i23, i26)
    i28 = fp_mul(i18, i27)
    i29 = fp_mul(i27, i28)
    i30 = fp_mul(i25, i29)
    i31 = fp_mul(i28, i30)
    i32 = fp_mul(i26, i31)
    i33 = fp_mul(i24, i32)
    i34 = fp_mul(i32, i33)
    i35 = fp_mul(i31, i34)
    i36 = fp_mul(i33, i35)
    i37 = fp_mul(i29, i36)
    i39 = fp_mul(fp_sqr(i37), i34)
    i40 = fp_mul(i35, i39)
    i41 = fp_mul(i36, i40)
    i43 = fp_mul(fp_sqr(i41), i30)
    i44 = fp_mul(i39, i43)
    i45 = fp_mul(i40, i44)
    i46 = fp_mul(i37, i45)
    i48 = fp_mul(fp_sqr(i46), i41)
    i49 = fp_mul(i44, i48)
    i50 = fp_mul(i45, i49)
    i51 = fp_mul(i43, i50)
    i52 = fp_mul(i49, i51)
    i53 = fp_mul(i48, i52)
    i54 = fp_mul(i50, i53)
    i55 = fp_mul(i51, i54)
    i57 = fp_mul(fp_sqr(i55), i54)
    i58 = fp_mul(i46, i57)
    i59 = fp_mul(i53, i58)
    i61 = fp_mul(fp_sqr(i59), i52)
    i62 = fp_mul(i55, i61)
    i64 = fp_mul(fp_sqr(i62), i58)
    i66 = fp_mul(fp_sqr(i64), i59)
    i67 = fp_mul(i57, i66)
    i71 = fp_mul(fp_exp(fp_mul(fp_sqr(i67), i67), 2), i62)
    i72 = fp_mul(i67, i71)
    i73 = fp_mul(i64, i72)
    i74 = fp_mul(i66, i73)
    i75 = fp_mul(i72, i74)
    i77 = fp_mul(fp_sqr(i75), i71)
    i78 = fp_mul(i75, i77)
    i79 = fp_mul(i73, i78)
    i81 = fp_mul(fp_sqr(i79), i77)
    i82 = fp_mul(i79, i81)
    i83 = fp_mul(i61, i82)
    i85 = fp_mul(fp_sqr(i83), i74)
    i86 = fp_mul(i78, i85)
    i88 = fp_mul(fp_sqr(i86), i83)
    i89 = fp_mul(i82, i88)
    i90 = fp_mul(i81, i89)
    i91 = fp_mul(i86, i90)
    i92 = fp_mul(i85, i91)
    i95 = fp_mul(fp_exp(i92, 4), i89)
    i96 = fp_mul(i88, i95)
    i99 = fp_mul(fp_mul(fp_sqr(i96), i96), i90)
    i100 = fp_mul(i91, i99)
    i101 = fp_mul(i95, i100)
    i104 = fp_mul(fp_mul(fp_sqr(i101), i101), i99)
    i105 = fp_mul(i100, i104)
    i107 = fp_mul(fp_sqr(i105), i101)
    i108 = fp_mul(i92, i107)
    i109 = fp_mul(i105, i108)
    i110 = fp_mul(i108, i109)
    i112 = fp_mul(fp_sqr(i110), i104)
    i113 = fp_mul(i109, i112)
    i114 = fp_mul(i112, i113)
    i115 = fp_mul(i113, i114)
    i116 = fp_mul(i96, i115)
    i117 = fp_mul(i115, i116)
    i118 = fp_mul(i107, i117)
    i119 = fp_mul(i110, i118)
    i120 = fp_mul(i114, i119)
    i122 = fp_mul(fp_sqr(i120), i116)
    i124 = fp_mul(fp_sqr(i122), i118)
    i125 = fp_mul(i117, i124)
    i127 = fp_mul(fp_sqr(i125), i119)
    i128 = fp_mul(i124, i127)
    i129 = fp_mul(i120, i128)
    i130 = fp_mul(i122, i129)
    i131 = fp_mul(i125, i130)
    i132 = fp_mul(i127, i131)
    i133 = fp_mul(i130, i132)
    i134 = fp_mul(i128, i133)
    i136 = fp_mul(fp_sqr(i134), i133)
    i137 = fp_mul(i131, i136)
    i138 = fp_mul(i132, i137)
    i139 = fp_mul(i129, i138)
    i140 = fp_mul(i136, i139)
    i141 = fp_mul(i139, i140)
    i143 = fp_mul(fp_sqr(i141), i138)
    i144 = fp_mul(i134, i143)
    i145 = fp_mul(i137, i144)
    i146 = fp_mul(i143, i145)
    i147 = fp_mul(i145, i146)
    i148 = fp_mul(i144, i147)
    i149 = fp_mul(i140, i148)
    i150 = fp_mul(i147, i149)
    i151 = fp_mul(i141, i150)
    i152 = fp_mul(i149, i151)
    i153 = fp_mul(i146, i152)
    i155 = fp_mul(fp_sqr(i153), i151)
    i156 = fp_mul(i150, i155)
    i157 = fp_mul(i148, i156)
    i158 = fp_mul(i152, i157)
    i159 = fp_mul(i153, i158)
    i160 = fp_mul(i158, i159)
    i161 = fp_mul(i159, i160)
    i163 = fp_mul(fp_sqr(i161), i156)
    i164 = fp_mul(i155, i163)
    i165 = fp_mul(i163, i164)
    i166 = fp_mul(i157, i165)
    i167 = fp_mul(i161, i166)
    i168 = fp_mul(i166, i167)
    i169 = fp_mul(i164, i168)
    i170 = fp_mul(i167, i169)
    i171 = fp_mul(i168, i170)
    i172 = fp_mul(i160, i171)
    i173 = fp_mul(i169, i172)
    i174 = fp_mul(i171, i173)
    i175 = fp_mul(i170, i174)
    i177 = fp_mul(fp_sqr(i175), i165)
    i178 = fp_mul(i172, i177)
    i179 = fp_mul(i173, i178)
    i180 = fp_mul(i175, i179)
    i181 = fp_mul(i174, i180)
    i183 = fp_mul(fp_sqr(i181), i177)
    i184 = fp_mul(i180, i183)
    i185 = fp_mul(i181, i184)
    i187 = fp_mul(fp_sqr(i185), i183)
    i188 = fp_mul(i179, i187)
    i189 = fp_mul(i187, i188)
    i190 = fp_mul(i185, i189)
    i191 = fp_mul(i184, i190)
    i192 = fp_mul(i189, i191)
    i193 = fp_mul(i178, i192)
    i194 = fp_mul(i191, i193)
    i195 = fp_mul(i188, i194)
    i196 = fp_mul(i193, i195)
    i197 = fp_mul(i190, i196)
    i199 = fp_mul(fp_sqr(i197), i195)
    i200 = fp_mul(i194, i199)
    i201 = fp_mul(i192, i200)
    i204 = fp_mul(fp_exp(i201, 4), i200)
    i206 = fp_mul(fp_sqr(i204), i197)
    i207 = fp_mul(i201, i206)
    i208 = fp_mul(i204, i207)
    i210 = fp_mul(fp_sqr(i208), i196)
    i212 = fp_mul(fp_sqr(i210), i207)
    i213 = fp_mul(i206, i212)
    i214 = fp_mul(i212, i213)
    i215 = fp_mul(i199, i214)
    i218 = fp_mul(fp_mul(fp_sqr(i215), i215), i210)
    i219 = fp_mul(i214, i218)
    i220 = fp_mul(i215, i219)
    i221 = fp_mul(i213, i220)
    i222 = fp_mul(i208, i221)
    i224 = fp_mul(fp_sqr(i222), i219)
    i226 = fp_mul(fp_sqr(i224), i222)
    i229 = fp_mul(fp_mul(fp_sqr(i226), i226), i220)
    i230 = fp_mul(i224, i229)
    i231 = fp_mul(i229, i230)
    i234 = fp_mul(fp_mul(fp_sqr(i231), i231), i218)
    i235 = fp_mul(i221, i234)
    i237 = fp_mul(fp_sqr(i235), i226)
    i238 = fp_mul(i235, i237)
    i239 = fp_mul(i231, i238)
    i240 = fp_mul(i230, i239)
    i241 = fp_mul(i238, i240)
    i242 = fp_mul(i234, i241)
    i243 = fp_mul(i240, i242)
    i244 = fp_mul(i237, i243)
    i245 = fp_mul(i243, i244)
    i246 = fp_mul(i244, i245)
    i247 = fp_mul(i239, i246)
    i248 = fp_mul(i245, i247)
    i249 = fp_mul(i247, i248)
    i250 = fp_mul(i246, i249)
    i251 = fp_mul(i248, i250)
    i252 = fp_mul(i242, i251)
    i254 = fp_mul(fp_sqr(i252), i250)
    i255 = fp_mul(i252, i254)
    i256 = fp_mul(i241, i255)
    i257 = fp_mul(i251, i256)
    i259 = fp_mul(fp_sqr(i257), i255)
    i260 = fp_mul(i257, i259)
    i261 = fp_mul(i256, i260)
    i262 = fp_mul(_1, i261)
    i263 = fp_mul(i254, i262)
    i264 = fp_mul(i260, i263)
    i265 = fp_mul(i261, i264)
    i266 = fp_mul(i249, i265)
    i267 = fp_mul(i259, i266)
    i268 = fp_mul(i266, i267)
    i269 = fp_mul(i267, i268)
    i271 = fp_mul(fp_sqr(i269), i263)
    i272 = fp_mul(i262, i271)
    i273 = fp_mul(i268, i272)
    i274 = fp_mul(i271, i273)
    x127 = fp_mul(i265, i274)
    i276 = fp_mul(i264, x127)
    i277 = fp_mul(i272, i276)
    x128 = fp_mul(i273, i277)
    i664 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i276,
                                   42535295865117307932921825928971026432),
                            i269), 1),
                    1361129467683753853853498429727072845824), i274), 1),
        680564733841876926926749214863536422912)
    i923 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i277, i664), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1309 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i923,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i1568 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1309), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1954 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i1568,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2213 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1954), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i2599 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2213,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2858 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i2599), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3244 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2858,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i3503 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3244), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3889 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i3503,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i4148 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3889), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    return fp_mul(fp_exp(i4148, 170141183460469231731687303715884105728), x127)
コード例 #10
0
def inv_1024(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _1000 = fp_mul(_11, _101)
    _1011 = fp_mul(_11, _1000)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10000 = fp_mul(_1, _1111)
    _10100 = fp_mul(_101, _1111)
    _10110 = fp_mul(_10, _10100)
    _11000 = fp_mul(_10, _10110)
    _11111 = fp_mul(_1011, _10100)
    _101110 = fp_mul(_1111, _11111)
    _111011 = fp_mul(_1101, _101110)
    _1000000 = fp_mul(_101, _111011)
    _1001000 = fp_mul(_1000, _1000000)
    _1001010 = fp_mul(_10, _1001000)
    _1010000 = fp_mul(_1000, _1001000)
    _1010011 = fp_mul(_11, _1010000)
    _1011000 = fp_mul(_101, _1010011)
    _10000001 = fp_mul(_101110, _1010011)
    _10100000 = fp_mul(_11111, _10000001)
    _10101000 = fp_mul(_1000, _10100000)
    _10110110 = fp_mul(_10110, _10100000)
    _10110111 = fp_mul(_1, _10110110)
    _10111010 = fp_mul(_11, _10110111)
    _11000000 = fp_mul(_11000, _10101000)
    _11101110 = fp_mul(_101110, _11000000)
    i29 = fp_mul(_10110, _11101110)
    i30 = fp_mul(_10000, i29)
    i31 = fp_mul(_1000000, _11101110)
    i32 = fp_sqr(_10100000)
    i33 = fp_mul(_10101000, _10111010)
    i34 = fp_mul(_10111010, i33)
    i35 = fp_mul(_10100, i34)
    i36 = fp_mul(_1001010, i35)
    i37 = fp_mul(_1001010, i36)
    i38 = fp_mul(_1011, i37)
    i39 = fp_mul(_10000001, i38)
    i40 = fp_mul(i32, i34)
    i41 = fp_mul(_1011000, i40)
    i42 = fp_mul(_11000000, i41)
    i43 = fp_mul(_1001000, i42)
    i44 = fp_mul(i29, i43)
    i45 = fp_mul(_10110110, i44)
    i46 = fp_mul(_10, i45)
    i47 = fp_mul(_10000, i45)
    i48 = fp_mul(_11000, i47)
    i49 = fp_mul(_10101000, i48)
    i50 = fp_mul(_10110111, i49)
    i51 = fp_mul(_111011, i50)
    i52 = fp_mul(_1111, i51)
    i53 = fp_mul(_1010011, i52)
    i54 = fp_mul(_11101110, i53)
    i55 = fp_mul(i40, i48)
    i56 = fp_mul(i33, i55)
    i57 = fp_mul(i39, i56)
    i58 = fp_mul(_11, i57)
    i59 = fp_mul(_1001000, i57)
    i60 = fp_mul(i51, i59)
    i61 = fp_mul(i34, i60)
    i62 = fp_mul(i38, i61)
    i63 = fp_mul(_1111, i62)
    i64 = fp_mul(i58, i63)
    i65 = fp_mul(i31, i64)
    i66 = fp_mul(i56, i65)
    i67 = fp_mul(i59, i66)
    i68 = fp_mul(i40, i67)
    i69 = fp_mul(i55, i68)
    i70 = fp_mul(i44, i69)
    i71 = fp_mul(i41, i70)
    i72 = fp_mul(_1000000, i71)
    i73 = fp_mul(i63, i72)
    i74 = fp_mul(i47, i73)
    i75 = fp_mul(i54, i74)
    i76 = fp_mul(i42, i75)
    i77 = fp_mul(i35, i76)
    i78 = fp_mul(i45, i77)
    i79 = fp_mul(i57, i78)
    i80 = fp_sqr(i69)
    i81 = fp_mul(i43, i79)
    i82 = fp_mul(i32, i81)
    i83 = fp_mul(i53, i82)
    i84 = fp_mul(i61, i83)
    i85 = fp_mul(i60, i84)
    i86 = fp_mul(i37, i85)
    i87 = fp_mul(i36, i86)
    i88 = fp_mul(i46, i87)
    i89 = fp_mul(i30, i88)
    i90 = fp_mul(_10100000, i89)
    i91 = fp_mul(i49, i90)
    i92 = fp_mul(i48, i91)
    x16 = fp_mul(_1010000, i92)
    i149 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i80, 262144), i76), 1), 1048576),
                i78), 1), 65536)
    i186 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i90, i149), 1), 65536), i84),
                   1), 262144), i89)
    i233 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i186, 131072), i75), 1), 65536),
                   i91), 1), 4096)
    i273 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i52, i233), 1), 262144), i66),
                   1), 524288), i77)
    i327 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i273, 262144), i82), 1), 65536),
                   i74), 1), 262144)
    i361 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i79, i327), 1), 65536), i83),
                   1), 32768), i68)
    i421 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i361, 4194304), i92), 1), 524288),
                i81), 1), 131072)
    i457 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i88, i421), 1), 65536), i64),
                   1), 131072), i71)
    i511 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i457, 1048576), i67), 1), 131072),
                i86), 1), 32768)
    i548 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i72, i511), 1), 131072), i73),
                   1), 131072), i85)
    i600 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i548, 32768), i65), 1), 262144),
                   i70), 1), 131072)
    i639 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i62, i600), 1), 1048576), i87),
                   1), 65536), x16)
    i689 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i639, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i724 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i689), 1), 65536), x16),
                   1), 65536), x16)
    i774 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i724, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i809 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i774), 1), 65536), x16),
                   1), 65536), x16)
    i859 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i809, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i894 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i859), 1), 65536), x16),
                   1), 65536), x16)
    i944 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i894, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i979 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i944), 1), 65536), x16),
                   1), 65536), x16)
    i1029 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i979, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i1064 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i1029), 1), 65536), x16),
                   1), 65536), x16)
    i1114 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1064, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i1149 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i1114), 1), 65536), x16),
                   1), 65536), x16)
    return fp_mul(fp_exp(i1149, 2048), i50)
コード例 #11
0
def inv_1792(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _1111110 = fp_sqr(_111111)
    _1111111 = fp_mul(_1, _1111110)
    i22 = fp_exp(_1111111, 4)
    i26 = fp_exp(i22, 16)
    i27 = fp_mul(_1101, i26)
    i28 = fp_sqr(i26)
    i29 = fp_sqr(i27)
    i30 = fp_sqr(i28)
    i31 = fp_sqr(i29)
    i32 = fp_sqr(i30)
    i33 = fp_sqr(i31)
    i34 = fp_mul(i22, i32)
    i35 = fp_sqr(i33)
    i36 = fp_sqr(i34)
    i37 = fp_sqr(i35)
    i38 = fp_sqr(i36)
    i39 = fp_sqr(i37)
    i40 = fp_sqr(i38)
    i41 = fp_sqr(i39)
    i42 = fp_sqr(i40)
    i43 = fp_sqr(i41)
    i44 = fp_sqr(i42)
    i46 = fp_mul(fp_sqr(i43), _11001)
    i47 = fp_sqr(i44)
    i48 = fp_sqr(i46)
    i49 = fp_sqr(i47)
    i50 = fp_sqr(i48)
    i51 = fp_sqr(i49)
    i52 = fp_sqr(i50)
    i53 = fp_sqr(i51)
    i54 = fp_sqr(i52)
    i55 = fp_sqr(i53)
    i57 = fp_mul(fp_sqr(i54), _10011)
    i58 = fp_sqr(i55)
    i59 = fp_sqr(i57)
    i60 = fp_sqr(i58)
    i61 = fp_sqr(i59)
    i62 = fp_sqr(i60)
    i63 = fp_sqr(i61)
    x30 = fp_mul(fp_mul(fp_sqr(i62), i34), _11)
    i67 = fp_sqr(i63)
    i68 = fp_sqr(x30)
    i70 = fp_mul(fp_sqr(i67), _11001)
    x32 = fp_mul(fp_sqr(i68), _11)
    i91 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i70, 32), _1001), 1), 256),
                   _1011), 1), 16)
    i107 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i91), 1), 1024), _10011),
                   1), 8), _101)
    i126 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i107, 8), _1), 1), 512),
                   _11001), 1), 32)
    i142 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11001, i126), 1), 32), _1111),
                   1), 256), _10011)
    i163 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i142, 32), _11011), 1), 64),
                   _11111), 1), 256)
    i177 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i163), 1), 16), _11),
                   1), 128), _111)
    i195 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i177, 32), _11), 1), 64), _101),
            1), 32)
    i212 = fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i195), 1), 16), _1), 1),
               1024), _101)
    i231 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i212, 64), _1001), 1), 32),
                   _1001), 1), 64)
    i254 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i231), 1), 32), _101),
                   1), 32768), _11101)
    i273 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_mul(fp_exp(i254, 32), _10101), 2), _1), 1),
        2048)
    i288 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111111, i273), 1), 64), _111),
                   1), 64), _1111)
    i308 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i288, 128), _11101), 1), 32),
                   _1111), 1), 64)
    i322 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i308), 1), 16), _11),
                   1), 128), _11)
    i347 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i322, 128), _1101), 1), 8), _1),
            1), 8192)
    i362 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10111, i347), 1), 512), _11101),
                1), 8), _11)
    i388 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i362, 2048), _11011), 1), 32),
                   _10011), 1), 256)
    i404 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11111, i388), 1), 512), _10001),
                1), 16), _1111)
    i429 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i404, 256), _11011), 1), 128),
                   _11011), 1), 256)
    i444 = fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i429), 1), 8), _1), 1),
               512), _10011)
    i467 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i444, 256), _1), 1), 512),
                   _111111), 1), 16)
    i484 = fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i467), 1), 64), _11), 1),
               256), _11101)
    i501 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i484, 64), _11001), 1), 4),
                   _11), 1), 128)
    i519 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i501), 1), 512), _11101),
                   1), 64), _11001)
    i536 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i519, 32), _10011), 1), 8),
                   _11), 1), 128)
    i550 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111, i536), 1), 64), _11011),
                   1), 32), _10101)
    i570 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i550, 64), _11101), 1), 32),
                   _11101), 1), 128)
    i585 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i570), 1), 128), _10111),
                   1), 32), _1101)
    i613 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i585, 64), _11001), 1), 8192),
                   _11011), 1), 128)
    i625 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i613), 1), 8), _111),
                   1), 64), _101)
    i724 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i625, 8589934592), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i791 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i724), 1), 4294967296), x32),
                1), 4294967296), x32)
    i889 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i791, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i956 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i889), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1054 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i956, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1121 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1054), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1219 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1121, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1286 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1219), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1384 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1286, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1451 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1384), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1549 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1451, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1616 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1549), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1714 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1616, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1781 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1714), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1879 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1781, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1944 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1879), 1), 4294967296), x32),
                1), 1073741824), x30)
    return fp_mul(fp_exp(i1944, 4), _1)
コード例 #12
0
def quart_3072(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _100 = fp_mul(_1, _11)
    _101 = fp_mul(_1, _100)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10011 = fp_mul(_100, _1111)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _100001 = fp_mul(_10, _11111)
    _100101 = fp_mul(_100, _100001)
    _100111 = fp_mul(_10, _100101)
    _101001 = fp_mul(_10, _100111)
    _101011 = fp_mul(_10, _101001)
    _101101 = fp_mul(_10, _101011)
    _101111 = fp_mul(_10, _101101)
    _110001 = fp_mul(_10, _101111)
    _110011 = fp_mul(_10, _110001)
    _110101 = fp_mul(_10, _110011)
    _111001 = fp_mul(_100, _110101)
    _111101 = fp_mul(_100, _111001)
    _111111 = fp_mul(_10, _111101)
    _1111110 = fp_sqr(_111111)
    _1111111 = fp_mul(_1, _1111110)
    _10110100 = fp_mul(_110101, _1111111)
    i53 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(_10110100, 64), _101111), 1), 64),
                _1111), 1), 128)
    i73 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11101, i53), 1), 512), _101001),
                1), 256), _10101)
    i96 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i73, 128), _101111), 1), 512),
                   _100001), 1), 32)
    i113 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i96), 1), 64), _1001),
                   1), 256), _110001)
    i133 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i113, 32), _10101), 1), 16),
                   _101), 1), 512)
    i147 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111001, i133), 1), 16), _101),
                   1), 128), _1011)
    i172 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i147, 256), _110101), 1), 32),
                   _10111), 1), 1024)
    i190 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_100101, i172), 1), 64), _101011),
                1), 512), _100101)
    i214 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i190, 128), _101111), 1), 64),
                   _11), 1), 512)
    i234 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i214), 1), 128), _1011),
                   1), 1024), _10011)
    i261 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i234, 128), _111), 1), 1024),
                   _100111), 1), 256)
    i282 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_100111, i261), 1), 512), _110101),
                1), 512), _1111111)
    i303 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i282, 32), _11111), 1), 512),
                   _100101), 1), 32)
    i319 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i303), 1), 64), _11011),
                   1), 128), _111101)
    i340 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i319, 64), _110101), 1), 64),
                   _10111), 1), 128)
    i361 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_111111, i340), 1), 128), _10011),
                1), 2048), _1001)
    i386 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i361, 1024), _111111), 1), 128),
                   _100111), 1), 64)
    i400 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11011, i386), 1), 128), _11011),
                1), 16), _111)
    i423 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i400, 1024), _101011), 1), 64),
                   _101011), 1), 32)
    i441 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i423), 1), 64), _11111),
                   1), 512), _101001)
    i463 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i441, 64), _100111), 1), 8),
                   _101), 1), 2048)
    i477 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111101, i463), 1), 16), _1101),
                   1), 128), _1001)
    i502 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i477, 512), _11101), 1), 256),
                   _100101), 1), 64)
    i518 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_101101, i502), 1), 64), _100001),
                1), 128), _110001)
    i544 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i518, 64), _101), 1), 128),
                   _101), 1), 2048)
    i557 = fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(fp_mul(_100001, i544), 2), _1), 1), 512),
        _1111111)
    i580 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i557, 64), _11001), 1), 256),
                   _101011), 1), 128)
    i595 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i580), 1), 32), _1001),
                   1), 128), _11111)
    return fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i595, 128), _110011), 1), 32),
                   _11101), 1),
        13540631571091461853163616343597829035214122634757923946150980204596801748539633714799749980264179980479764347520065911539820003456901359936565697225764325861376456757098784868801942261231107873715432358778281570209476232615685170429490116466837180248143047642366386324907479955857757773156061115886947408860370347929954110401396697023036971669330349689165406178637931741075554388570447364695854236037800204543434404957923178194336489464779659687483143656222678723617764586826350928747474366746593079282080501565859402166884818402721909226979370809408774598305372366324022526391307845011736946602338267951389450620059880839845574200135281351584330463507370495974012473127571340647450941142988034283084116727091178291918317863076646033235212001226644720063655904142163968
    )
コード例 #13
0
def tri_4096(x):
    _1 = x
    _10 = fp_sqr(_1)
    _100 = fp_sqr(_10)
    _101 = fp_mul(_1, _100)
    _1010 = fp_sqr(_101)
    _1011 = fp_mul(_1, _1010)
    _1101 = fp_mul(_10, _1011)
    _11010 = fp_sqr(_1101)
    _11111 = fp_mul(_101, _11010)
    _100011 = fp_mul(_100, _11111)
    _100101 = fp_mul(_10, _100011)
    _110000 = fp_mul(_1011, _100101)
    _1100000 = fp_sqr(_110000)
    _1100001 = fp_mul(_1, _1100000)
    i17 = fp_mul(fp_mul(fp_exp(_1100001, 4), _1100001), _1101)
    i18 = fp_mul(_110000, i17)
    i19 = fp_mul(_1100001, i18)
    i20 = fp_mul(_100101, i19)
    i21 = fp_mul(_100011, i20)
    i22 = fp_mul(i20, i21)
    i23 = fp_mul(i17, i22)
    i24 = fp_mul(i22, i23)
    i25 = fp_mul(i19, i24)
    i26 = fp_mul(i18, i25)
    i27 = fp_mul(i23, i26)
    i28 = fp_mul(i24, i27)
    i29 = fp_mul(i26, i28)
    i31 = fp_mul(fp_sqr(i29), i25)
    i32 = fp_mul(i28, i31)
    i33 = fp_mul(i27, i32)
    i35 = fp_mul(fp_sqr(i33), i29)
    i36 = fp_mul(i21, i35)
    i37 = fp_mul(i32, i36)
    i38 = fp_mul(i33, i37)
    i39 = fp_mul(i31, i38)
    i40 = fp_mul(i35, i39)
    i43 = fp_mul(fp_mul(fp_sqr(i40), i40), i38)
    i44 = fp_mul(i36, i43)
    i45 = fp_mul(i39, i44)
    i48 = fp_mul(fp_exp(i45, 4), i44)
    i49 = fp_mul(i40, i48)
    i50 = fp_mul(i45, i49)
    i51 = fp_mul(i37, i50)
    i53 = fp_mul(fp_sqr(i51), i43)
    i54 = fp_mul(i48, i53)
    i55 = fp_mul(i53, i54)
    i56 = fp_mul(i54, i55)
    i58 = fp_mul(fp_sqr(i56), i50)
    i59 = fp_mul(i56, i58)
    i60 = fp_mul(i51, i59)
    i61 = fp_mul(i49, i60)
    i62 = fp_mul(i59, i61)
    i64 = fp_mul(fp_sqr(i62), i61)
    i65 = fp_mul(i60, i64)
    i66 = fp_mul(i55, i65)
    i67 = fp_mul(i62, i66)
    i70 = fp_mul(fp_exp(i67, 4), i65)
    i71 = fp_mul(i58, i70)
    i72 = fp_mul(i66, i71)
    i73 = fp_mul(i64, i72)
    i74 = fp_mul(i67, i73)
    i76 = fp_mul(fp_sqr(i74), i71)
    i77 = fp_mul(i73, i76)
    i79 = fp_mul(fp_sqr(i77), i70)
    i80 = fp_mul(i77, i79)
    i81 = fp_mul(i74, i80)
    i83 = fp_mul(fp_sqr(i81), i79)
    i84 = fp_mul(i80, i83)
    i85 = fp_mul(i72, i84)
    i86 = fp_mul(i83, i85)
    i87 = fp_mul(i76, i86)
    i88 = fp_mul(i81, i87)
    i91 = fp_mul(fp_mul(fp_sqr(i88), i88), i86)
    i94 = fp_mul(fp_mul(fp_sqr(i91), i91), i88)
    i95 = fp_mul(i85, i94)
    i96 = fp_mul(i87, i95)
    i97 = fp_mul(i94, i96)
    i98 = fp_mul(i95, i97)
    i99 = fp_mul(i84, i98)
    i100 = fp_mul(i98, i99)
    i101 = fp_mul(i97, i100)
    i102 = fp_mul(i100, i101)
    i103 = fp_mul(i91, i102)
    i104 = fp_mul(i99, i103)
    i105 = fp_mul(i96, i104)
    i106 = fp_mul(i102, i105)
    i107 = fp_mul(i103, i106)
    i108 = fp_mul(i101, i107)
    i109 = fp_mul(i104, i108)
    i110 = fp_mul(i107, i109)
    i111 = fp_mul(i105, i110)
    i112 = fp_mul(i108, i111)
    i113 = fp_mul(i109, i112)
    i114 = fp_mul(i106, i113)
    i115 = fp_mul(i110, i114)
    i116 = fp_mul(i111, i115)
    i117 = fp_mul(i113, i116)
    i119 = fp_mul(fp_sqr(i117), i114)
    i120 = fp_mul(i112, i119)
    i122 = fp_mul(fp_sqr(i120), i117)
    i123 = fp_mul(i116, i122)
    i124 = fp_mul(i119, i123)
    i125 = fp_mul(i115, i124)
    i128 = fp_mul(fp_mul(fp_sqr(i125), i125), i120)
    i129 = fp_mul(i123, i128)
    i131 = fp_mul(fp_sqr(i129), i122)
    i132 = fp_mul(i124, i131)
    i135 = fp_mul(fp_mul(fp_sqr(i132), i132), i125)
    i136 = fp_mul(i132, i135)
    i137 = fp_mul(i131, i136)
    i138 = fp_mul(i135, i137)
    i139 = fp_mul(i137, i138)
    i141 = fp_mul(fp_sqr(i139), i136)
    i142 = fp_mul(i128, i141)
    i143 = fp_mul(i141, i142)
    i144 = fp_mul(i138, i143)
    i145 = fp_mul(i142, i144)
    i146 = fp_mul(i129, i145)
    i148 = fp_mul(fp_sqr(i146), i139)
    i149 = fp_mul(i146, i148)
    i150 = fp_mul(i143, i149)
    i151 = fp_mul(i144, i150)
    i154 = fp_mul(fp_mul(fp_sqr(i151), i151), i145)
    i155 = fp_mul(i148, i154)
    i156 = fp_mul(i154, i155)
    i157 = fp_mul(i151, i156)
    i158 = fp_mul(i150, i157)
    i160 = fp_mul(fp_sqr(i158), i155)
    i161 = fp_mul(i157, i160)
    i162 = fp_mul(i160, i161)
    i163 = fp_mul(i149, i162)
    i164 = fp_mul(i158, i163)
    i165 = fp_mul(i163, i164)
    i166 = fp_mul(i156, i165)
    i168 = fp_mul(fp_sqr(i166), i162)
    i169 = fp_mul(i161, i168)
    i170 = fp_mul(i164, i169)
    i174 = fp_mul(fp_exp(fp_mul(fp_sqr(i170), i170), 2), i165)
    i175 = fp_mul(_11111, i174)
    i176 = fp_mul(i168, i175)
    i178 = fp_mul(fp_sqr(i176), i166)
    i181 = fp_mul(fp_mul(fp_sqr(i178), i178), i169)
    i182 = fp_mul(i178, i181)
    i183 = fp_mul(i176, i182)
    i184 = fp_mul(i182, i183)
    i187 = fp_mul(fp_mul(fp_sqr(i184), i184), i183)
    i188 = fp_mul(i184, i187)
    i189 = fp_mul(i175, i188)
    i190 = fp_mul(i181, i189)
    i191 = fp_mul(i188, i190)
    i193 = fp_mul(fp_sqr(i191), i170)
    i194 = fp_mul(i174, i193)
    i195 = fp_mul(i187, i194)
    i196 = fp_mul(i190, i195)
    i197 = fp_mul(i195, i196)
    i198 = fp_mul(i191, i197)
    i199 = fp_mul(i194, i198)
    i200 = fp_mul(i197, i199)
    i201 = fp_mul(i193, i200)
    i202 = fp_mul(i200, i201)
    i203 = fp_mul(i198, i202)
    i204 = fp_mul(i189, i203)
    i205 = fp_mul(i196, i204)
    i206 = fp_mul(i201, i205)
    i207 = fp_mul(i203, i206)
    i208 = fp_mul(i202, i207)
    i210 = fp_mul(fp_sqr(i208), i205)
    i211 = fp_mul(i204, i210)
    i212 = fp_mul(i199, i211)
    i213 = fp_mul(i207, i212)
    i214 = fp_mul(i208, i213)
    i215 = fp_mul(i211, i214)
    i217 = fp_mul(fp_sqr(i215), i210)
    i218 = fp_mul(i206, i217)
    i219 = fp_mul(i212, i218)
    i220 = fp_mul(i215, i219)
    i221 = fp_mul(i213, i220)
    i222 = fp_mul(i219, i221)
    i223 = fp_mul(i214, i222)
    i224 = fp_mul(i220, i223)
    i225 = fp_mul(i217, i224)
    i226 = fp_mul(i221, i225)
    i228 = fp_mul(fp_sqr(i226), i224)
    i229 = fp_mul(i225, i228)
    i230 = fp_mul(i222, i229)
    i232 = fp_mul(fp_sqr(i230), i223)
    i233 = fp_mul(i228, i232)
    i234 = fp_mul(i218, i233)
    i236 = fp_mul(fp_sqr(i234), i232)
    i237 = fp_mul(i233, i236)
    i238 = fp_mul(i230, i237)
    i239 = fp_mul(i234, i238)
    i240 = fp_mul(i226, i239)
    i241 = fp_mul(i236, i240)
    i244 = fp_mul(fp_mul(fp_sqr(i241), i241), i240)
    i245 = fp_mul(i239, i244)
    i246 = fp_mul(i244, i245)
    i248 = fp_mul(fp_sqr(i246), i237)
    i249 = fp_mul(i246, i248)
    i250 = fp_mul(i229, i249)
    i251 = fp_mul(i238, i250)
    i252 = fp_mul(i248, i251)
    i253 = fp_mul(i250, i252)
    i255 = fp_mul(fp_sqr(i253), i251)
    i256 = fp_mul(i252, i255)
    i257 = fp_mul(i245, i256)
    i258 = fp_mul(i253, i257)
    i260 = fp_mul(fp_sqr(i258), i255)
    i262 = fp_mul(fp_sqr(i260), i258)
    i263 = fp_mul(i256, i262)
    i264 = fp_mul(i260, i263)
    i265 = fp_mul(i257, i264)
    i266 = fp_mul(i262, i265)
    i267 = fp_mul(i249, i266)
    i268 = fp_mul(i263, i267)
    i269 = fp_mul(i266, i268)
    i270 = fp_mul(i241, i269)
    i271 = fp_mul(i269, i270)
    i272 = fp_mul(i267, i271)
    i273 = fp_mul(i265, i272)
    x123 = fp_mul(i264, i273)
    i275 = fp_mul(i271, x123)
    i276 = fp_mul(i270, i275)
    i277 = fp_mul(i268, i276)
    i280 = fp_mul(fp_mul(fp_sqr(i277), i277), i275)
    i281 = fp_mul(i272, i280)
    i282 = fp_mul(i273, i281)
    i283 = fp_mul(i281, i282)
    i284 = fp_mul(i280, i283)
    i285 = fp_mul(i276, i284)
    x128 = fp_mul(i277, i285)
    i676 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i283,
                                   5444517870735015415413993718908291383296),
                            i284), 1),
                    170141183460469231731687303715884105728), i282), 1),
        680564733841876926926749214863536422912)
    i935 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i285, i676), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1321 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i935,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i1580 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1321), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1966 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i1580,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2225 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1966), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i2611 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2225,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2870 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i2611), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3256 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2870,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i3515 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3256), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3901 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i3515,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i4160 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3901), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    return fp_mul(fp_exp(i4160, 10633823966279326983230456482242756608), x123)
コード例 #14
0
def sq_3072(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _100 = fp_mul(_1, _11)
    _101 = fp_mul(_1, _100)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10011 = fp_mul(_100, _1111)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _100001 = fp_mul(_10, _11111)
    _100101 = fp_mul(_100, _100001)
    _100111 = fp_mul(_10, _100101)
    _101001 = fp_mul(_10, _100111)
    _101011 = fp_mul(_10, _101001)
    _101101 = fp_mul(_10, _101011)
    _101111 = fp_mul(_10, _101101)
    _110001 = fp_mul(_10, _101111)
    _110011 = fp_mul(_10, _110001)
    _110101 = fp_mul(_10, _110011)
    _111001 = fp_mul(_100, _110101)
    _111101 = fp_mul(_100, _111001)
    _111111 = fp_mul(_10, _111101)
    _1111110 = fp_sqr(_111111)
    _1111111 = fp_mul(_1, _1111110)
    _10110100 = fp_mul(_110101, _1111111)
    i53 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(_10110100, 64), _101111), 1), 64),
                _1111), 1), 128)
    i73 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11101, i53), 1), 512), _101001),
                1), 256), _10101)
    i96 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i73, 128), _101111), 1), 512),
                   _100001), 1), 32)
    i113 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i96), 1), 64), _1001),
                   1), 256), _110001)
    i133 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i113, 32), _10101), 1), 16),
                   _101), 1), 512)
    i147 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111001, i133), 1), 16), _101),
                   1), 128), _1011)
    i172 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i147, 256), _110101), 1), 32),
                   _10111), 1), 1024)
    i190 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_100101, i172), 1), 64), _101011),
                1), 512), _100101)
    i214 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i190, 128), _101111), 1), 64),
                   _11), 1), 512)
    i234 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i214), 1), 128), _1011),
                   1), 1024), _10011)
    i261 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i234, 128), _111), 1), 1024),
                   _100111), 1), 256)
    i282 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_100111, i261), 1), 512), _110101),
                1), 512), _1111111)
    i303 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i282, 32), _11111), 1), 512),
                   _100101), 1), 32)
    i319 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i303), 1), 64), _11011),
                   1), 128), _111101)
    i340 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i319, 64), _110101), 1), 64),
                   _10111), 1), 128)
    i361 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_111111, i340), 1), 128), _10011),
                1), 2048), _1001)
    i386 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i361, 1024), _111111), 1), 128),
                   _100111), 1), 64)
    i400 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11011, i386), 1), 128), _11011),
                1), 16), _111)
    i423 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i400, 1024), _101011), 1), 64),
                   _101011), 1), 32)
    i441 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i423), 1), 64), _11111),
                   1), 512), _101001)
    i463 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i441, 64), _100111), 1), 8),
                   _101), 1), 2048)
    i477 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111101, i463), 1), 16), _1101),
                   1), 128), _1001)
    i502 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i477, 512), _11101), 1), 256),
                   _100101), 1), 64)
    i518 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_101101, i502), 1), 64), _100001),
                1), 128), _110001)
    i544 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i518, 64), _101), 1), 128),
                   _101), 1), 2048)
    i557 = fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(fp_mul(_100001, i544), 2), _1), 1), 512),
        _1111111)
    i580 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i557, 64), _11001), 1), 256),
                   _101011), 1), 128)
    i595 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i580), 1), 32), _1001),
                   1), 128), _11111)
    return fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i595, 128), _110011), 1), 32),
                   _11101), 1),
        27081263142182923706327232687195658070428245269515847892301960409193603497079267429599499960528359960959528695040131823079640006913802719873131394451528651722752913514197569737603884522462215747430864717556563140418952465231370340858980232933674360496286095284732772649814959911715515546312122231773894817720740695859908220802793394046073943338660699378330812357275863482151108777140894729391708472075600409086868809915846356388672978929559319374966287312445357447235529173652701857494948733493186158564161003131718804333769636805443818453958741618817549196610744732648045052782615690023473893204676535902778901240119761679691148400270562703168660927014740991948024946255142681294901882285976068566168233454182356583836635726153292066470424002453289440127311808284327936
    )
コード例 #15
0
def quint_1024(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _110 = fp_sqr(_11)
    _111 = fp_mul(_1, _110)
    _1001 = fp_mul(_10, _111)
    _1111 = fp_mul(_110, _1001)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _11001 = fp_mul(_110, _10011)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _100011 = fp_mul(_110, _11101)
    _100101 = fp_mul(_10, _100011)
    _100111 = fp_mul(_10, _100101)
    _101011 = fp_mul(_110, _100101)
    _101101 = fp_mul(_10, _101011)
    _101111 = fp_mul(_10, _101101)
    _110001 = fp_mul(_10, _101111)
    _110011 = fp_mul(_10, _110001)
    _110101 = fp_mul(_10, _110011)
    _110111 = fp_mul(_10, _110101)
    _111001 = fp_mul(_10, _110111)
    _111011 = fp_mul(_10, _111001)
    _111101 = fp_mul(_10, _111011)
    _111111 = fp_mul(_10, _111101)
    _1100100 = fp_mul(_100101, _111111)
    _1111111 = fp_mul(_11011, _1100100)
    _11001000 = fp_sqr(_1100100)
    _11111111 = fp_mul(_110111, _11001000)
    i32 = fp_sqr(_11001000)
    i33 = fp_sqr(_11111111)
    i34 = fp_sqr(i32)
    x10 = fp_mul(fp_sqr(i33), _11)
    i37 = fp_sqr(i34)
    i38 = fp_sqr(x10)
    i39 = fp_sqr(i37)
    i40 = fp_sqr(i38)
    i42 = fp_mul(fp_sqr(i39), _11001)
    i43 = fp_sqr(i40)
    i44 = fp_sqr(i42)
    i45 = fp_sqr(i43)
    i46 = fp_sqr(i44)
    i47 = fp_sqr(i45)
    i48 = fp_sqr(i46)
    x16 = fp_mul(fp_sqr(i47), _111111)
    i71 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i48, 64), _111101), 1), 32),
                   _11011), 1), 256)
    i87 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111111, i71), 1), 32), _1001),
                   1), 256), _111001)
    i107 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i87, 64), _100111), 1), 64),
                   _111011), 1), 64)
    i124 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101111, i107), 1), 32), _1001),
                   1), 512), _111111)
    i145 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i124, 64), _11001), 1), 128),
                   _111101), 1), 64)
    i159 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_110001, i145), 1), 64), _100111),
                1), 32), _11011)
    i187 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i159, 256), _1001), 1), 512),
                   _110001), 1), 512)
    i203 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_111101, i187), 1), 64), _101101),
                1), 128), _111011)
    i220 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i203, 32), _10101), 1), 128),
                   _100011), 1), 8)
    i247 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i220), 1), 512), _11111),
                   1), 32768), _11111111)
    i270 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i247, 16), _11), 1), 1024),
                   _11111111), 1), 128)
    i285 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_111001, i270), 1), 32), _10011),
                1), 128), _101111)
    i305 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i285, 64), _100101), 1), 32),
                   _10011), 1), 128)
    i321 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i305), 1), 32), _1001),
                   1), 256), _101101)
    i345 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i321, 64), _101011), 1), 1024),
                   _110101), 1), 64)
    i362 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_110011, i345), 1), 64), _110011),
                1), 256), _100111)
    i390 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i362, 16384), x10), 1), 128),
                   _100101), 1), 32)
    i412 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_1001, i390), 1), 16384), _110111),
                1), 32), _10011)
    i439 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i412, 4096), x10), 1), 64),
                   _10001), 1), 128)
    i454 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_111011, i439), 1), 64), _111001),
                1), 64), _111011)
    i477 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i454, 256), _1111111), 1), 128),
                   _110111), 1), 64)
    i503 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_101111, i477), 1), 512), _110111),
                1), 16384), _100101)
    i526 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i503, 16), _1111), 1), 2048),
                   _110111), 1), 64)
    i537 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i526), 1), 64), _11101),
                   1), 4), _1)
    i564 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i537, 32768), _110011), 1), 32),
                   _10101), 1), 32)
    i585 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_111, i564), 1), 4096), _101111),
                1), 64), _10101)
    i610 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i585, 128), _11101), 1), 1024),
                   _111011), 1), 64)
    i646 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_111101, i610), 1), 131072), x16),
                1), 65536), x16)
    i696 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i646, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i731 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i696), 1), 65536), x16),
                   1), 65536), x16)
    i781 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i731, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i816 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i781), 1), 65536), x16),
                   1), 65536), x16)
    i866 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i816, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i901 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i866), 1), 65536), x16),
                   1), 65536), x16)
    i951 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i901, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i986 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i951), 1), 65536), x16),
                   1), 65536), x16)
    i1036 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i986, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    i1071 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i1036), 1), 65536), x16),
                   1), 65536), x16)
    i1121 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1071, 65536), x16), 1), 65536),
                   x16), 1), 65536)
    return fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x16, i1121), 1), 65536), x16),
                   1), 65536), x16)
コード例 #16
0
def quart_1792(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _1111110 = fp_sqr(_111111)
    _1111111 = fp_mul(_1, _1111110)
    i42 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_1111111, 64), _1101), 1), 512),
                   _11001), 1), 32)
    i55 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i42), 1), 32), _11001),
                   1), 32), _1001)
    i79 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i55, 256), _1011), 1), 16), _1),
            1), 1024)
    i88 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i79), 1), 8), _101), 1),
            8), _1)
    i109 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i88, 512), _11001), 1), 32),
                   _11001), 1), 32)
    i125 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111, i109), 1), 256), _10011),
                   1), 32), _11011)
    i145 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i125, 64), _11111), 1), 256),
                   _10101), 1), 16)
    i160 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i145), 1), 128), _111), 1),
            32), _11)
    i177 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i160, 64), _101), 1), 32), _11),
            1), 16)
    i196 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i177), 1), 1024), _101), 1),
            64), _1001)
    i214 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i196, 32), _1001), 1), 64),
                   _10111), 1), 32)
    i237 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_101, i214), 1), 32768), _11101),
                1), 32), _10101)
    i257 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_sqr(i237), _1), 1), 2048),
                   _1111111), 1), 64)
    i273 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i257), 1), 64), _1111),
                   1), 128), _11101)
    i290 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i273, 32), _1111), 1), 64),
                   _10101), 1), 16)
    i307 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i290), 1), 128), _11), 1),
            128), _1101)
    i334 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i307, 8), _1), 1), 8192),
                   _10111), 1), 512)
    i351 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i334), 1), 8), _11), 1),
            2048), _11011)
    i375 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i351, 32), _10011), 1), 256),
                   _11111), 1), 512)
    i390 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i375), 1), 16), _1111),
                   1), 256), _11011)
    i410 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i390, 128), _11011), 1), 256),
                   _111), 1), 8)
    i430 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i410), 1), 512), _10011),
                   1), 256), _1)
    i451 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i430, 512), _111111), 1), 16),
                   _1), 1), 64)
    i468 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i451), 1), 256), _11101),
                   1), 64), _11001)
    i488 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i468, 4), _11), 1), 128),
                   _1011), 1), 512)
    i502 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i488), 1), 64), _11001),
                   1), 32), _10011)
    i520 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i502, 8), _11), 1), 128),
                   _1111), 1), 64)
    i534 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11011, i520), 1), 32), _10101),
                   1), 64), _11101)
    i555 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i534, 32), _11101), 1), 128),
                   _1101), 1), 128)
    i569 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i555), 1), 32), _1101),
                   1), 64), _11001)
    i594 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i569, 8192), _11011), 1), 128),
                   _10101), 1), 8)
    return fp_exp(
        fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i594), 1), 128), _1011), 1),
        2601983048666099770481310081841021384653815561816676201329778087600902014918340074503059860433081046210605403488570251947845891562080866227034976651419330190731032377347305086443295837415395887618239855136922452802923419286887119716740625346109565072933087221327790207134604146257063901166556207972729700461767055550785130256674608872183239507219512717434046725178680177638925792182272
    )
コード例 #17
0
def novem_1792(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _1000100 = fp_mul(_101, _111111)
    _11111100 = fp_exp(_111111, 4)
    _11111111 = fp_mul(_11, _11111100)
    i23 = fp_mul(_10001, _11111111)
    i24 = fp_sqr(_11111111)
    i26 = fp_mul(fp_sqr(i23), _10101)
    i27 = fp_sqr(i24)
    i28 = fp_sqr(i26)
    i29 = fp_sqr(i27)
    i30 = fp_sqr(i28)
    i31 = fp_sqr(i29)
    i32 = fp_sqr(i30)
    i33 = fp_sqr(i31)
    i34 = fp_sqr(i32)
    i35 = fp_sqr(i33)
    i37 = fp_mul(fp_sqr(i34), _1011)
    i38 = fp_sqr(i35)
    i39 = fp_sqr(i37)
    x16 = fp_mul(fp_sqr(i38), _11111111)
    i42 = fp_sqr(i39)
    i43 = fp_sqr(x16)
    i44 = fp_sqr(i42)
    i45 = fp_sqr(i43)
    i46 = fp_sqr(i44)
    i47 = fp_sqr(i45)
    i49 = fp_mul(fp_sqr(i46), _111)
    i50 = fp_sqr(i47)
    i51 = fp_sqr(i49)
    i52 = fp_sqr(i50)
    i53 = fp_sqr(i51)
    i54 = fp_sqr(i52)
    i55 = fp_sqr(i53)
    i56 = fp_sqr(i54)
    i57 = fp_sqr(i55)
    i58 = fp_sqr(i56)
    i59 = fp_sqr(i57)
    i60 = fp_sqr(i58)
    i61 = fp_sqr(i59)
    i62 = fp_sqr(i60)
    i63 = fp_sqr(i61)
    i64 = fp_sqr(i62)
    i66 = fp_mul(fp_sqr(i63), _11101)
    i67 = fp_sqr(i64)
    i68 = fp_sqr(i66)
    i69 = fp_sqr(i67)
    i70 = fp_sqr(i68)
    i71 = fp_sqr(i69)
    i72 = fp_sqr(i70)
    i73 = fp_sqr(i71)
    i74 = fp_sqr(i72)
    x32 = fp_mul(fp_sqr(i73), x16)
    i91 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_mul(fp_exp(i74, 16), _11001), 2), _1), 1), 256)
    i110 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111111, i91), 1), 256), _1001),
                   1), 256), _1111)
    i138 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i110, 64), _1101), 1), 32768),
                   _11011), 1), 32)
    i151 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11011, i138), 1), 8), _111),
                   1), 128), _11001)
    i167 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i151, 32), _11101), 1), 16),
                   _1111), 1), 32)
    i184 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111, i167), 1), 64), _10101),
                   1), 256), _11)
    i211 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i184, 32), _11), 1), 1024),
                   _10101), 1), 1024)
    i226 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i211), 1), 32), _101),
                   1), 128), _1011)
    i245 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i226, 64), _11111), 1), 16),
                   _101), 1), 128)
    i259 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i245), 1), 32), _11001),
                   1), 64), _11001)
    i275 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i259, 32), _11011), 1), 32),
                   _1111), 1), 16)
    i288 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101, i275), 1), 64), _1101),
                   1), 16), _111)
    i313 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i288, 128), _11001), 1), 128),
                   _11), 1), 512)
    i327 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i313), 1), 16), _101),
                   1), 128), _10001)
    i347 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i327, 32), _10101), 1), 64),
                   _11011), 1), 128)
    i362 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_1111, i347), 1), 1024), _10111),
                1), 4), _1)
    i381 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i362, 128), _111111), 1), 128),
                   _10101), 1), 8)
    i400 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i381), 1), 256), _11011),
                   1), 256), _1011)
    i419 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i400, 32), _1001), 1), 64),
                   _10001), 1), 64)
    i437 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10111, i419), 1), 512), _111111),
                1), 64), _1111)
    i457 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i437, 32), _1), 1), 512),
                   _11011), 1), 16)
    i471 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i457), 1), 128), _11001),
                   1), 16), _1011)
    i493 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i471, 8), _11), 1), 1024),
                   _11111111), 1), 128)
    i511 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11111, i493), 1), 256), _11111),
                1), 128), _111111)
    i529 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i511, 64), _10111), 1), 16),
                   _111), 1), 64)
    i544 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i529), 1), 32), _101), 1),
            128), _11111)
    i563 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i544, 64), _10111), 1), 8),
                   _101), 1), 256)
    i582 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10011, i563), 1), 2048), _10101),
                1), 32), _10001)
    i601 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i582, 32), _1111), 1), 16),
                   _11), 1), 256)
    i618 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i601), 1), 8), _1), 1),
            2048), _11111111)
    i664 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i618, 32), _1111), 1), 64),
                   _11111), 1), 8589934592)
    i731 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i664), 1), 4294967296), x32),
                1), 4294967296), x32)
    i829 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i731, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i896 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i829), 1), 4294967296), x32),
                1), 4294967296), x32)
    i994 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i896, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1061 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i994), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1159 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1061, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1226 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1159), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1324 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1226, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1391 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1324), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1489 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1391, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1556 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1489), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1654 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1556, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1721 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1654), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1819 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i1721, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i1886 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1819), 1), 4294967296), x32),
                1), 4294967296), x32)
    return fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(i1886, 4294967296), x32), 1), 4294967296),
        x32)
コード例 #18
0
def sq_2048(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _110010 = fp_mul(_10011, _11111)
    _111111 = fp_mul(_1101, _110010)
    i36 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_110010, 8), _101), 1), 128),
                   _11101), 1), 64)
    i52 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i36), 1), 128), _111111),
                   1), 64), _10011)
    i75 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i52, 64), _1011), 1), 1024),
                   _11111), 1), 32)
    i91 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i75), 1), 256), _10011),
                   1), 32), _11001)
    i110 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i91, 4), _11), 1), 2048),
                   _10111), 1), 16)
    i123 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i110), 1), 64), _10001),
                   1), 16), _11)
    i143 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i123, 128), _1001), 1), 128),
                   _10011), 1), 16)
    i158 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i143), 1), 64), _1001),
                   1), 64), _11111)
    i177 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i158, 32), _1101), 1), 128),
                   _1011), 1), 32)
    i192 = fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i177), 1), 8), _1), 1),
               512), _11111)
    i216 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i192, 128), _1011), 1), 256),
                   _10101), 1), 128)
    i228 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i216), 1), 16), _1101),
                   1), 32), _1011)
    i249 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i228, 64), _11101), 1), 256),
                   _1111), 1), 32)
    i271 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101, i249), 1), 1024), _10001),
                   1), 512), _111111)
    i295 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i271, 1024), _111), 1), 32),
                   _101), 1), 128)
    i315 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i295), 1), 1024), _1111),
                   1), 128), _10001)
    i336 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i315, 32), _11011), 1), 256),
                   _111), 1), 64)
    i349 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i336), 1), 128), _11001),
                   1), 8), _101)
    i369 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i349, 32), _11), 1), 512),
                   _10011), 1), 16)
    i384 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i369), 1), 32), _101),
                   1), 128), _11111)
    i402 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i384, 64), _11101), 1), 16),
                   _1101), 1), 64)
    i419 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i402), 1), 64), _1001),
                   1), 256), _10001)
    i442 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i419, 8), _11), 1), 1024),
                   _10011), 1), 256)
    i454 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i442), 1), 64), _1111),
                   1), 8), _1)
    i471 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_mul(fp_exp(i454, 512), _111111), 2), _1), 1),
        32)
    i488 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i471), 1), 512), _11111),
                   1), 32), _1001)
    i507 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i488, 8), _11), 1), 256),
                   _1001), 1), 64)
    i519 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i507), 1), 64), _10011),
                   1), 8), _101)
    i540 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i519, 128), _11001), 1), 64),
                   _10001), 1), 64)
    i553 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i540), 1), 32), _10101),
                   1), 32), _1111)
    i572 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i553, 64), _1011), 1), 16),
                   _111), 1), 128)
    i586 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i572), 1), 16), _1011),
                   1), 128), _11011)
    i605 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i586, 4), _11), 1), 256),
                   _11101), 1), 128)
    return fp_exp(
        fp_exp(fp_mul(_1001, i605), 1),
        602578106730258147145029151507078528228023311986422237839918759766314347897950800167271256026836512415862191570222001196965604244698739581242403246972693662863803334845406306192695519479420374919211385784346955014399336464476149777365346780524876991249453910335575169407368338820404357102948540991946467592592242277305397985763558002890689612520144896962725248428723070869161657795378765951218343795565126561748209474676492753131460831100308246714251190084829184
    )
コード例 #19
0
def novem_3072(x):
    _1 = x
    _10 = fp_sqr(_1)
    _100 = fp_sqr(_10)
    _101 = fp_mul(_1, _100)
    _111 = fp_mul(_10, _101)
    _1110 = fp_sqr(_111)
    _1111 = fp_mul(_1, _1110)
    _10110 = fp_mul(_111, _1111)
    _11011 = fp_mul(_101, _10110)
    _110001 = fp_mul(_10110, _11011)
    _110110 = fp_mul(_101, _110001)
    _110111 = fp_mul(_1, _110110)
    _1101101 = fp_mul(_110110, _110111)
    _10100100 = fp_mul(_110111, _1101101)
    i15 = fp_mul(fp_sqr(_10100100), _110001)
    i16 = fp_mul(_10, i15)
    i17 = fp_mul(_10100100, i16)
    i19 = fp_mul(fp_sqr(i17), _1101101)
    i21 = fp_mul(fp_sqr(i19), i15)
    i24 = fp_mul(fp_exp(i21, 4), i16)
    i25 = fp_mul(i19, i24)
    i26 = fp_mul(i21, i25)
    i27 = fp_mul(_11011, i26)
    i30 = fp_mul(fp_mul(fp_sqr(i27), i27), i24)
    i31 = fp_mul(i26, i30)
    i32 = fp_mul(i17, i31)
    i33 = fp_mul(i25, i32)
    i34 = fp_mul(i27, i33)
    i35 = fp_mul(i33, i34)
    i36 = fp_mul(i31, i35)
    i38 = fp_mul(fp_sqr(i36), i34)
    i39 = fp_mul(i30, i38)
    i40 = fp_mul(i32, i39)
    i41 = fp_mul(i35, i40)
    i42 = fp_mul(i36, i41)
    i43 = fp_mul(i39, i42)
    i45 = fp_mul(fp_sqr(i43), i38)
    i46 = fp_mul(i42, i45)
    i47 = fp_mul(i41, i46)
    i48 = fp_mul(i40, i47)
    i49 = fp_mul(i46, i48)
    i50 = fp_mul(i47, i49)
    i51 = fp_mul(i43, i50)
    i52 = fp_mul(i49, i51)
    i53 = fp_mul(i50, i52)
    i54 = fp_mul(i48, i53)
    i55 = fp_mul(i52, i54)
    i56 = fp_mul(i45, i55)
    i57 = fp_mul(i51, i56)
    i58 = fp_mul(i53, i57)
    i59 = fp_mul(i57, i58)
    i60 = fp_mul(i56, i59)
    i61 = fp_mul(i54, i60)
    i62 = fp_mul(i60, i61)
    i63 = fp_mul(i59, i62)
    i64 = fp_mul(i61, i63)
    i65 = fp_mul(i55, i64)
    i66 = fp_mul(i58, i65)
    i69 = fp_mul(fp_mul(fp_sqr(i66), i66), i63)
    i70 = fp_mul(i65, i69)
    i71 = fp_mul(i64, i70)
    i72 = fp_mul(i70, i71)
    i73 = fp_mul(i62, i72)
    i74 = fp_mul(i66, i73)
    i75 = fp_mul(i72, i74)
    i76 = fp_mul(i73, i75)
    i77 = fp_mul(i74, i76)
    i78 = fp_mul(i75, i77)
    i79 = fp_mul(i71, i78)
    i80 = fp_mul(i69, i79)
    i81 = fp_mul(i78, i80)
    i82 = fp_mul(i79, i81)
    i83 = fp_mul(i81, i82)
    i84 = fp_mul(i77, i83)
    i85 = fp_mul(i76, i84)
    i86 = fp_mul(i84, i85)
    i87 = fp_mul(i82, i86)
    i88 = fp_mul(i83, i87)
    i89 = fp_mul(i80, i88)
    i90 = fp_mul(i85, i89)
    i94 = fp_mul(fp_mul(fp_exp(i90, 4), i90), i89)
    i95 = fp_mul(i86, i94)
    i96 = fp_mul(i87, i95)
    i98 = fp_mul(fp_sqr(i96), i94)
    i99 = fp_mul(i95, i98)
    i100 = fp_mul(i96, i99)
    i101 = fp_mul(i90, i100)
    i102 = fp_mul(i88, i101)
    i104 = fp_mul(fp_sqr(i102), i100)
    i105 = fp_mul(i98, i104)
    i106 = fp_mul(i99, i105)
    i107 = fp_mul(i102, i106)
    i108 = fp_mul(i105, i107)
    i109 = fp_mul(i101, i108)
    i110 = fp_mul(i108, i109)
    i111 = fp_mul(i107, i110)
    i112 = fp_mul(i104, i111)
    i114 = fp_mul(fp_sqr(i112), i106)
    i115 = fp_mul(i111, i114)
    i120 = fp_mul(fp_mul(fp_exp(fp_mul(fp_sqr(i115), i115), 2), i115), i112)
    i121 = fp_mul(i115, i120)
    i123 = fp_mul(fp_sqr(i121), i109)
    i124 = fp_mul(i110, i123)
    i125 = fp_mul(i121, i124)
    i126 = fp_mul(i120, i125)
    i128 = fp_mul(fp_sqr(i126), i124)
    i129 = fp_mul(i114, i128)
    i130 = fp_mul(i123, i129)
    i131 = fp_mul(i128, i130)
    i132 = fp_mul(i126, i131)
    i133 = fp_mul(i131, i132)
    i134 = fp_mul(i125, i133)
    i136 = fp_mul(fp_sqr(i134), i132)
    i137 = fp_mul(i130, i136)
    i139 = fp_mul(fp_sqr(i137), i129)
    i141 = fp_mul(fp_sqr(i139), i137)
    i142 = fp_mul(i134, i141)
    i143 = fp_mul(i133, i142)
    i144 = fp_mul(i142, i143)
    i145 = fp_mul(i139, i144)
    i146 = fp_mul(i136, i145)
    i147 = fp_mul(i144, i146)
    i151 = fp_mul(fp_mul(fp_exp(i147, 4), i147), i146)
    i152 = fp_mul(i147, i151)
    i153 = fp_mul(i141, i152)
    i154 = fp_mul(i145, i153)
    i155 = fp_mul(i151, i154)
    i156 = fp_mul(i154, i155)
    i157 = fp_mul(i143, i156)
    i158 = fp_mul(i152, i157)
    i159 = fp_mul(i156, i158)
    i160 = fp_mul(i157, i159)
    i161 = fp_mul(i153, i160)
    i162 = fp_mul(i155, i161)
    i164 = fp_mul(fp_sqr(i162), i159)
    i165 = fp_mul(i162, i164)
    i166 = fp_mul(i160, i165)
    i167 = fp_mul(i165, i166)
    i168 = fp_mul(i158, i167)
    i169 = fp_mul(i164, i168)
    i170 = fp_mul(i168, i169)
    i171 = fp_mul(i161, i170)
    i172 = fp_mul(i169, i171)
    i173 = fp_mul(i166, i172)
    i174 = fp_mul(i167, i173)
    i175 = fp_mul(i171, i174)
    i176 = fp_mul(i173, i175)
    i178 = fp_mul(fp_sqr(i176), i175)
    i179 = fp_mul(i170, i178)
    i180 = fp_mul(i172, i179)
    i182 = fp_mul(fp_sqr(i180), i174)
    i186 = fp_mul(fp_mul(fp_exp(i182, 4), i182), i179)
    i187 = fp_mul(i178, i186)
    i188 = fp_mul(i180, i187)
    i191 = fp_mul(fp_mul(fp_sqr(i188), i188), i176)
    i192 = fp_mul(i187, i191)
    i193 = fp_mul(i188, i192)
    i194 = fp_mul(i182, i193)
    i195 = fp_mul(i186, i194)
    i196 = fp_mul(i193, i195)
    i197 = fp_mul(i194, i196)
    i198 = fp_mul(i191, i197)
    i199 = fp_mul(i196, i198)
    i201 = fp_mul(fp_sqr(i199), i197)
    i202 = fp_mul(i192, i201)
    i203 = fp_mul(i199, i202)
    i204 = fp_mul(i201, i203)
    i205 = fp_mul(_1111, i204)
    i207 = fp_mul(fp_sqr(i205), i203)
    i208 = fp_mul(i202, i207)
    i209 = fp_mul(i198, i208)
    i210 = fp_mul(i208, i209)
    i211 = fp_mul(i205, i210)
    i213 = fp_mul(fp_sqr(i211), i195)
    i214 = fp_mul(i207, i213)
    i215 = fp_mul(i210, i214)
    i216 = fp_mul(i213, i215)
    i217 = fp_mul(i204, i216)
    i218 = fp_mul(i215, i217)
    i219 = fp_mul(i217, i218)
    i221 = fp_mul(fp_sqr(i219), i214)
    i222 = fp_mul(i211, i221)
    i223 = fp_mul(i216, i222)
    i226 = fp_mul(fp_mul(fp_sqr(i223), i223), i209)
    i227 = fp_mul(i219, i226)
    i229 = fp_mul(fp_sqr(i227), i218)
    i230 = fp_mul(i221, i229)
    i231 = fp_mul(i222, i230)
    i232 = fp_mul(i223, i231)
    i233 = fp_mul(i230, i232)
    i234 = fp_mul(i229, i233)
    i235 = fp_mul(i227, i234)
    i236 = fp_mul(i232, i235)
    i237 = fp_mul(i226, i236)
    i239 = fp_mul(fp_sqr(i237), i235)
    i240 = fp_mul(i234, i239)
    i241 = fp_mul(i231, i240)
    i242 = fp_mul(i236, i241)
    i243 = fp_mul(i239, i242)
    i244 = fp_mul(i233, i243)
    i245 = fp_mul(i242, i244)
    i246 = fp_mul(i241, i245)
    i247 = fp_mul(i243, i246)
    i248 = fp_mul(i245, i247)
    i249 = fp_mul(i246, i248)
    i250 = fp_mul(i240, i249)
    i251 = fp_mul(i244, i250)
    i252 = fp_mul(i247, i251)
    i255 = fp_mul(fp_mul(fp_sqr(i252), i252), i249)
    i256 = fp_mul(i251, i255)
    i258 = fp_mul(fp_sqr(i256), i255)
    i259 = fp_mul(i252, i258)
    i260 = fp_mul(i250, i259)
    i262 = fp_mul(fp_sqr(i260), i259)
    i263 = fp_mul(i260, i262)
    i264 = fp_mul(i237, i263)
    i265 = fp_mul(i258, i264)
    i266 = fp_mul(i262, i265)
    i267 = fp_mul(i263, i266)
    i268 = fp_mul(i266, i267)
    i269 = fp_mul(i256, i268)
    i270 = fp_mul(i264, i269)
    i271 = fp_mul(i248, i270)
    i272 = fp_mul(i267, i271)
    i273 = fp_mul(i268, i272)
    x124 = fp_mul(i272, i273)
    i276 = fp_mul(fp_sqr(x124), i271)
    i277 = fp_mul(i273, i276)
    i278 = fp_mul(i270, i277)
    i280 = fp_mul(fp_mul(i265, i278), i269)
    i281 = fp_mul(i277, i280)
    i282 = fp_mul(i278, i281)
    i283 = fp_sqr(i281)
    i284 = fp_mul(i264, i283)
    x128 = fp_mul(i280, i284)
    i673 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i283,
                                   85070591730234615865843651857942052864),
                            i276), 1),
                    2722258935367507707706996859454145691648), i282), 1),
        680564733841876926926749214863536422912)
    i932 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i284, i673), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1318 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i932,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i1577 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1318), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1963 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i1577,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2222 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1963), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i2608 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2222,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2867 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i2608), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3249 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2867,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        21267647932558653966460912964485513216)
    return fp_mul(x124, i3249)
コード例 #20
0
def sq_1024(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _1010000 = fp_mul(_10001, _111111)
    i37 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_1010000, 8), _11101), 1), 32),
                   _1001), 1), 256)
    i51 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i37), 1), 4), _11), 1),
            512), _101)
    i70 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i51, 256), _1001), 1), 32),
                   _1101), 1), 16)
    i86 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_101, i70), 1), 128), _111111),
                   1), 64), _111)
    i106 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i86, 128), _10111), 1), 32),
                   _10011), 1), 64)
    i119 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i106), 1), 16), _101),
                   1), 64), _1111)
    i139 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i119, 128), _1001), 1), 32),
                   _1011), 1), 64)
    i158 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10001, i139), 1), 128), _11001),
                1), 512), _111111)
    i181 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i158, 128), _10001), 1), 32),
                   _11), 1), 512)
    i195 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i181), 1), 4), _11), 1),
            512), _11011)
    i213 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i195, 32), _10101), 1), 16),
                   _1111), 1), 128)
    i231 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i213), 1), 1024), _1101),
                   1), 32), _1001)
    i249 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i231, 64), _10101), 1), 32),
                   _10101), 1), 32)
    i272 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i249), 1), 32768), _1001),
                   1), 32), _101)
    i291 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i272, 128), _10101), 1), 64),
                   _10111), 1), 16)
    i307 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i291), 1), 128), _11111),
                   1), 64), _11011)
    i323 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i307, 128), _10011), 1), 64),
               _10111), 2)
    i341 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i323), 1), 4096), _111111),
                   1), 8), _111)
    i360 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i341, 64), _10111), 1), 32),
                   _10001), 1), 64)
    i377 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_10101, i360), 1), 512), _10011),
                1), 32), _1111)
    i403 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i377, 4096), _10111), 1), 128),
                   _10101), 1), 32)
    i417 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i403), 1), 16), _101),
                   1), 128), _10111)
    i439 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i417, 64), _10001), 1), 16),
                   _1101), 1), 1024)
    i452 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i439), 1), 16), _1001),
                   1), 64), _10011)
    i469 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i452, 16), _111), 1), 32),
                   _111), 1), 64)
    i483 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i469), 1), 64), _11011),
                   1), 32), _10101)
    i501 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i483, 64), _11101), 1), 64),
                   _1111), 1), 16)
    i518 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i501), 1), 1024), _11011),
                   1), 16), _1001)
    i535 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i518, 32), _11), 1), 512), _10101),
        2)
    i555 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i535), 1), 1024), _11), 1),
            128), _1011)
    i575 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i555, 64), _1011), 1), 32),
                   _1001), 1), 128)
    i597 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i575), 1), 1024), _10111),
                   1), 512), _11101)
    return fp_exp(
        fp_exp(fp_mul(fp_exp(i597, 64), _1101), 1),
        3351951982485649274893506249551461531869841455148098344430890360930441007518386744200468574541725856922507964546621512713438470702986642486608412251521024
    )
コード例 #21
0
def inv_4096(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _100 = fp_mul(_1, _11)
    _101 = fp_mul(_1, _100)
    _111 = fp_mul(_10, _101)
    _1011 = fp_mul(_100, _111)
    _10110 = fp_sqr(_1011)
    _10111 = fp_mul(_1, _10110)
    _11100 = fp_mul(_101, _10111)
    _100011 = fp_mul(_111, _11100)
    _111010 = fp_mul(_10111, _100011)
    _1110100 = fp_sqr(_111010)
    _1110101 = fp_mul(_1, _1110100)
    _10101111 = fp_mul(_111010, _1110101)
    _11010010 = fp_mul(_100011, _10101111)
    i17 = fp_mul(fp_sqr(_11010010), _1)
    i20 = fp_mul(fp_exp(fp_mul(_111, i17), 2), _1)
    i21 = fp_mul(i17, i20)
    i22 = fp_mul(_10101111, i21)
    i23 = fp_mul(_11100, i22)
    i24 = fp_mul(i21, i23)
    i25 = fp_mul(i22, i24)
    i26 = fp_mul(i24, i25)
    i27 = fp_mul(i23, i26)
    i28 = fp_mul(i20, i27)
    i29 = fp_mul(_1110101, i28)
    i30 = fp_mul(i27, i29)
    i31 = fp_mul(i29, i30)
    i32 = fp_mul(i25, i31)
    i34 = fp_exp(fp_mul(i26, i32), 2)
    i35 = fp_mul(i30, i34)
    i38 = fp_mul(fp_exp(fp_mul(i28, i35), 2), _1)
    i39 = fp_mul(i35, i38)
    i40 = fp_mul(i31, i39)
    i41 = fp_mul(i34, i40)
    i42 = fp_mul(i39, i41)
    i43 = fp_mul(i40, i42)
    i45 = fp_exp(fp_mul(i41, i43), 2)
    i46 = fp_mul(i38, i45)
    i47 = fp_mul(i45, i46)
    i48 = fp_mul(i42, i47)
    i51 = fp_mul(fp_exp(fp_mul(i32, i48), 2), _1)
    i52 = fp_mul(i47, i51)
    i53 = fp_mul(i46, i52)
    i54 = fp_mul(i43, i53)
    i55 = fp_mul(i48, i54)
    i56 = fp_mul(i51, i55)
    i57 = fp_mul(i54, i56)
    i58 = fp_mul(i52, i57)
    i59 = fp_mul(i53, i58)
    i62 = fp_mul(fp_exp(fp_mul(i55, i59), 2), _1)
    i63 = fp_mul(i57, i62)
    i64 = fp_mul(i58, i63)
    i65 = fp_mul(i56, i64)
    i66 = fp_mul(i64, i65)
    i68 = fp_exp(fp_mul(i65, i66), 2)
    i69 = fp_mul(i63, i68)
    i70 = fp_mul(i59, i69)
    i71 = fp_mul(i66, i70)
    i72 = fp_mul(i62, i71)
    i73 = fp_mul(i69, i72)
    i74 = fp_mul(i72, i73)
    i75 = fp_mul(i68, i74)
    i76 = fp_mul(i71, i75)
    i77 = fp_mul(i70, i76)
    i78 = fp_mul(i76, i77)
    i80 = fp_exp(fp_mul(i75, i78), 2)
    i81 = fp_mul(i77, i80)
    i82 = fp_mul(i73, i81)
    i84 = fp_exp(fp_mul(i78, i82), 2)
    i85 = fp_mul(i80, i84)
    i86 = fp_mul(i82, i85)
    i87 = fp_mul(i81, i86)
    i89 = fp_exp(fp_mul(i74, i87), 2)
    i90 = fp_mul(i84, i89)
    i91 = fp_mul(i89, i90)
    i92 = fp_mul(i85, i91)
    i93 = fp_mul(i90, i92)
    i94 = fp_mul(i92, i93)
    i96 = fp_exp(fp_mul(i86, i94), 2)
    i97 = fp_mul(i93, i96)
    i98 = fp_mul(i91, i97)
    i99 = fp_mul(i87, i98)
    i102 = fp_mul(fp_exp(fp_mul(i96, i99), 2), _1)
    i105 = fp_mul(fp_exp(fp_mul(i97, i102), 2), _1)
    i106 = fp_mul(i98, i105)
    i107 = fp_mul(i94, i106)
    i110 = fp_mul(fp_exp(fp_mul(i99, i107), 2), _1)
    i111 = fp_mul(i106, i110)
    i112 = fp_mul(i110, i111)
    i113 = fp_mul(i105, i112)
    i114 = fp_mul(i107, i113)
    i115 = fp_mul(i111, i114)
    i116 = fp_mul(i112, i115)
    i119 = fp_mul(fp_exp(fp_mul(i102, i116), 2), _1)
    i120 = fp_mul(i113, i119)
    i121 = fp_mul(i114, i120)
    i122 = fp_mul(i116, i121)
    i123 = fp_mul(i121, i122)
    i124 = fp_mul(i122, i123)
    i125 = fp_mul(i120, i124)
    i126 = fp_mul(i124, i125)
    i127 = fp_mul(i119, i126)
    i128 = fp_mul(i115, i127)
    i129 = fp_mul(i123, i128)
    i130 = fp_mul(i126, i129)
    i131 = fp_mul(i125, i130)
    i135 = fp_mul(fp_exp(fp_exp(fp_mul(i127, i131), 1), 4), _11)
    i136 = fp_mul(i130, i135)
    i137 = fp_mul(i135, i136)
    i138 = fp_mul(i129, i137)
    i139 = fp_mul(i131, i138)
    i140 = fp_mul(i138, i139)
    i141 = fp_mul(i139, i140)
    i142 = fp_mul(i136, i141)
    i143 = fp_mul(i140, i142)
    i144 = fp_mul(i128, i143)
    i145 = fp_mul(i137, i144)
    i146 = fp_mul(i141, i145)
    i147 = fp_mul(i144, i146)
    i148 = fp_mul(i142, i147)
    i149 = fp_mul(i143, i148)
    i150 = fp_mul(i147, i149)
    i151 = fp_mul(i145, i150)
    i154 = fp_mul(fp_exp(fp_mul(i146, i151), 2), _1)
    i155 = fp_mul(i149, i154)
    i156 = fp_mul(i151, i155)
    i157 = fp_mul(i148, i156)
    i158 = fp_mul(i150, i157)
    i159 = fp_mul(i157, i158)
    i160 = fp_mul(i156, i159)
    i161 = fp_mul(i158, i160)
    i162 = fp_mul(i159, i161)
    i163 = fp_mul(i154, i162)
    i164 = fp_mul(i155, i163)
    i165 = fp_mul(i160, i164)
    i166 = fp_mul(i163, i165)
    i167 = fp_mul(i165, i166)
    i168 = fp_mul(i161, i167)
    i169 = fp_mul(i164, i168)
    i170 = fp_mul(i168, i169)
    i171 = fp_mul(i169, i170)
    i172 = fp_mul(i162, i171)
    i174 = fp_exp(fp_mul(i170, i172), 2)
    i175 = fp_mul(i171, i174)
    i176 = fp_mul(i172, i175)
    i177 = fp_mul(i166, i176)
    i178 = fp_mul(i176, i177)
    i179 = fp_mul(i167, i178)
    i180 = fp_mul(i177, i179)
    i181 = fp_mul(i174, i180)
    i182 = fp_mul(i180, i181)
    i186 = fp_mul(fp_exp(fp_exp(fp_mul(i181, i182), 1), 4), _11)
    i187 = fp_mul(i182, i186)
    i188 = fp_mul(i179, i187)
    i189 = fp_mul(i175, i188)
    i190 = fp_mul(i178, i189)
    i191 = fp_mul(i189, i190)
    i194 = fp_exp(fp_exp(fp_mul(i187, i191), 1), 4)
    i196 = fp_exp(fp_mul(i190, i194), 2)
    i197 = fp_mul(i188, i196)
    i198 = fp_mul(i196, i197)
    i199 = fp_mul(i197, i198)
    i200 = fp_mul(i194, i199)
    i201 = fp_mul(i191, i200)
    i202 = fp_mul(i186, i201)
    i203 = fp_mul(i198, i202)
    i204 = fp_mul(i200, i203)
    i205 = fp_mul(i199, i204)
    i208 = fp_mul(fp_exp(fp_mul(i201, i205), 2), _1)
    i209 = fp_mul(i204, i208)
    i212 = fp_mul(fp_exp(fp_mul(i203, i209), 2), _1)
    i213 = fp_mul(i208, i212)
    i214 = fp_mul(i212, i213)
    i216 = fp_exp(fp_mul(i202, i214), 2)
    i217 = fp_mul(i205, i216)
    i221 = fp_mul(fp_exp(fp_exp(fp_mul(i213, i217), 1), 4), _11)
    i222 = fp_mul(i209, i221)
    i223 = fp_mul(i214, i222)
    i228 = fp_mul(fp_exp(fp_exp(fp_mul(i222, i223), 1), 8), _111)
    i229 = fp_mul(i221, i228)
    i230 = fp_mul(i217, i229)
    i231 = fp_mul(i223, i230)
    i232 = fp_mul(i216, i231)
    i233 = fp_mul(i229, i232)
    i234 = fp_mul(i231, i233)
    i235 = fp_mul(i232, i234)
    i236 = fp_mul(i234, i235)
    i237 = fp_mul(i230, i236)
    i238 = fp_mul(i235, i237)
    i240 = fp_exp(fp_mul(i233, i238), 2)
    i243 = fp_mul(fp_exp(fp_mul(i236, i240), 2), _1)
    i244 = fp_mul(i238, i243)
    i245 = fp_mul(i240, i244)
    i249 = fp_mul(fp_exp(fp_exp(fp_mul(i228, i245), 1), 4), _1)
    i250 = fp_mul(i237, i249)
    i253 = fp_mul(fp_exp(fp_mul(i243, i250), 2), _1)
    i254 = fp_mul(i245, i253)
    i255 = fp_mul(i244, i254)
    i257 = fp_exp(fp_mul(i249, i255), 2)
    i258 = fp_mul(i250, i257)
    i260 = fp_exp(fp_mul(i254, i258), 2)
    i261 = fp_mul(i253, i260)
    i262 = fp_mul(i258, i261)
    i263 = fp_mul(i255, i262)
    i265 = fp_exp(fp_mul(_11, i263), 2)
    i266 = fp_mul(i257, i265)
    i268 = fp_exp(fp_mul(i261, i266), 2)
    i269 = fp_mul(i260, i268)
    i270 = fp_mul(i268, i269)
    i271 = fp_mul(i266, i270)
    i272 = fp_mul(i262, i271)
    i273 = fp_mul(i265, i272)
    i274 = fp_mul(i271, i273)
    i275 = fp_mul(i273, i274)
    i276 = fp_mul(i269, i275)
    i277 = fp_mul(i272, i276)
    i278 = fp_mul(i270, i277)
    i279 = fp_mul(i277, i278)
    i282 = fp_mul(fp_exp(fp_mul(i263, i279), 2), _1)
    i283 = fp_mul(i274, i282)
    i284 = fp_mul(i276, i283)
    i285 = fp_mul(i275, i284)
    i286 = fp_mul(i278, i285)
    i287 = fp_sqr(i282)
    x128 = fp_mul(i279, i286)
    i674 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i287,
                                   340282366920938463463374607431768211456),
                            i284), 1),
                    340282366920938463463374607431768211456), i285), 1),
        340282366920938463463374607431768211456)
    i933 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i286, i674), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1319 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i933,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i1578 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1319), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1964 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i1578,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2223 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1964), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i2609 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2223,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2868 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i2609), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3254 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2868,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i3513 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3254), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3899 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i3513,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i4158 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3899), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    return fp_mul(fp_exp(i4158, 170141183460469231731687303715884105728), i283)
コード例 #22
0
def inv_3072(x):
    _1 = x
    _10 = fp_sqr(_1)
    _100 = fp_sqr(_10)
    _1000 = fp_sqr(_100)
    _1010 = fp_mul(_10, _1000)
    _1011 = fp_mul(_1, _1010)
    _1111 = fp_mul(_100, _1011)
    _10001 = fp_mul(_10, _1111)
    _11011 = fp_mul(_1010, _10001)
    _110110 = fp_sqr(_11011)
    _1000111 = fp_mul(_10001, _110110)
    _1100010 = fp_mul(_11011, _1000111)
    _1110001 = fp_mul(_1111, _1100010)
    _10111000 = fp_mul(_1000111, _1110001)
    _11000111 = fp_mul(_1111, _10111000)
    i15 = fp_mul(_1100010, _11000111)
    i16 = fp_mul(_11000111, i15)
    i17 = fp_mul(_1110001, i16)
    i18 = fp_mul(_10111000, i17)
    i19 = fp_mul(_1, i18)
    i20 = fp_mul(i16, i19)
    i23 = fp_mul(fp_mul(fp_sqr(i20), i20), i18)
    i24 = fp_mul(i20, i23)
    i25 = fp_mul(i19, i24)
    i26 = fp_mul(i24, i25)
    i27 = fp_mul(i17, i26)
    i28 = fp_mul(i26, i27)
    i29 = fp_mul(i27, i28)
    i30 = fp_mul(i23, i29)
    i31 = fp_mul(i15, i30)
    i33 = fp_mul(fp_sqr(i31), i30)
    i35 = fp_mul(fp_sqr(i33), i25)
    i36 = fp_mul(i33, i35)
    i39 = fp_mul(fp_mul(fp_sqr(i36), i36), i35)
    i40 = fp_mul(i29, i39)
    i41 = fp_mul(i28, i40)
    i42 = fp_mul(i39, i41)
    i43 = fp_mul(i31, i42)
    i44 = fp_mul(i41, i43)
    i45 = fp_mul(i42, i44)
    i46 = fp_mul(i36, i45)
    i48 = fp_mul(fp_sqr(i46), i44)
    i49 = fp_mul(i46, i48)
    i50 = fp_mul(i43, i49)
    i51 = fp_mul(i49, i50)
    i53 = fp_mul(fp_sqr(i51), i40)
    i54 = fp_mul(i45, i53)
    i55 = fp_mul(i53, i54)
    i56 = fp_mul(i51, i55)
    i57 = fp_mul(i48, i56)
    i58 = fp_mul(i55, i57)
    i59 = fp_mul(i50, i58)
    i60 = fp_mul(i54, i59)
    i61 = fp_mul(i59, i60)
    i62 = fp_mul(i57, i61)
    i63 = fp_mul(i60, i62)
    i65 = fp_mul(fp_sqr(i63), i58)
    i66 = fp_mul(i62, i65)
    i67 = fp_mul(i56, i66)
    i68 = fp_mul(i61, i67)
    i69 = fp_mul(i63, i68)
    i70 = fp_mul(i66, i69)
    i71 = fp_mul(i68, i70)
    i72 = fp_mul(i69, i71)
    i74 = fp_mul(fp_sqr(i72), i70)
    i76 = fp_mul(fp_sqr(i74), i71)
    i77 = fp_mul(i65, i76)
    i78 = fp_mul(i67, i77)
    i79 = fp_mul(i76, i78)
    i80 = fp_mul(i74, i79)
    i83 = fp_mul(fp_mul(fp_sqr(i80), i80), i72)
    i84 = fp_mul(i78, i83)
    i85 = fp_mul(i83, i84)
    i86 = fp_mul(i80, i85)
    i87 = fp_mul(i79, i86)
    i88 = fp_mul(i84, i87)
    i89 = fp_mul(i85, i88)
    i91 = fp_mul(fp_sqr(i89), i86)
    i94 = fp_mul(fp_exp(i91, 4), i77)
    i95 = fp_mul(i87, i94)
    i96 = fp_mul(i91, i95)
    i97 = fp_mul(i95, i96)
    i98 = fp_mul(i89, i97)
    i99 = fp_mul(i94, i98)
    i100 = fp_mul(i97, i99)
    i101 = fp_mul(i96, i100)
    i102 = fp_mul(i88, i101)
    i103 = fp_mul(i98, i102)
    i104 = fp_mul(i100, i103)
    i105 = fp_mul(i103, i104)
    i106 = fp_mul(i99, i105)
    i107 = fp_mul(i104, i106)
    i108 = fp_mul(i102, i107)
    i109 = fp_mul(i101, i108)
    i110 = fp_mul(i108, i109)
    i111 = fp_mul(i106, i110)
    i112 = fp_mul(i107, i111)
    i113 = fp_mul(i110, i112)
    i114 = fp_mul(i105, i113)
    i115 = fp_mul(i111, i114)
    i116 = fp_mul(i112, i115)
    i117 = fp_mul(i109, i116)
    i118 = fp_mul(i116, i117)
    i119 = fp_mul(i113, i118)
    i120 = fp_mul(i117, i119)
    i121 = fp_mul(i114, i120)
    i122 = fp_mul(i119, i121)
    i123 = fp_mul(i118, i122)
    i125 = fp_mul(fp_sqr(i123), i115)
    i126 = fp_mul(i121, i125)
    i127 = fp_mul(i122, i126)
    i128 = fp_mul(i120, i127)
    i129 = fp_mul(i123, i128)
    i130 = fp_mul(i128, i129)
    i132 = fp_mul(fp_sqr(i130), i126)
    i135 = fp_mul(fp_mul(fp_sqr(i132), i132), i130)
    i138 = fp_mul(fp_exp(i135, 4), i127)
    i141 = fp_mul(fp_mul(fp_sqr(i138), i138), i132)
    i142 = fp_mul(i129, i141)
    i143 = fp_mul(i138, i142)
    i144 = fp_mul(i135, i143)
    i145 = fp_mul(i143, i144)
    i146 = fp_mul(i125, i145)
    i147 = fp_mul(i142, i146)
    i150 = fp_mul(fp_mul(fp_sqr(i147), i147), i146)
    i151 = fp_mul(i144, i150)
    i152 = fp_mul(i147, i151)
    i153 = fp_mul(i150, i152)
    i154 = fp_mul(i145, i153)
    i155 = fp_mul(i141, i154)
    i156 = fp_mul(i154, i155)
    i157 = fp_mul(i151, i156)
    i158 = fp_mul(i155, i157)
    i159 = fp_mul(i153, i158)
    i160 = fp_mul(i157, i159)
    i161 = fp_mul(i152, i160)
    i162 = fp_mul(i159, i161)
    i163 = fp_mul(i156, i162)
    i164 = fp_mul(i160, i163)
    i165 = fp_mul(i163, i164)
    i166 = fp_mul(i162, i165)
    i167 = fp_mul(i158, i166)
    i168 = fp_mul(i161, i167)
    i169 = fp_mul(i167, i168)
    i170 = fp_mul(i165, i169)
    i171 = fp_mul(i164, i170)
    i172 = fp_mul(i166, i171)
    i175 = fp_mul(fp_mul(fp_sqr(i172), i172), i171)
    i176 = fp_mul(i168, i175)
    i178 = fp_mul(fp_sqr(i176), i175)
    i179 = fp_mul(i172, i178)
    i180 = fp_mul(i170, i179)
    i181 = fp_mul(i169, i180)
    i182 = fp_mul(i178, i181)
    i185 = fp_mul(fp_mul(fp_sqr(i182), i182), i176)
    i186 = fp_mul(i181, i185)
    i187 = fp_mul(i179, i186)
    i189 = fp_mul(fp_sqr(i187), i186)
    i190 = fp_mul(i182, i189)
    i191 = fp_mul(i180, i190)
    i192 = fp_mul(i187, i191)
    i193 = fp_mul(i189, i192)
    i194 = fp_mul(i190, i193)
    i195 = fp_mul(i185, i194)
    i196 = fp_mul(i193, i195)
    i197 = fp_mul(i194, i196)
    i199 = fp_mul(fp_sqr(i197), i195)
    i200 = fp_mul(i196, i199)
    i202 = fp_mul(fp_sqr(i200), i191)
    i203 = fp_mul(i192, i202)
    i204 = fp_mul(i199, i203)
    i205 = fp_mul(i200, i204)
    i206 = fp_mul(i203, i205)
    i207 = fp_mul(i205, i206)
    i208 = fp_mul(i197, i207)
    i210 = fp_mul(fp_sqr(i208), i204)
    i211 = fp_mul(i202, i210)
    i212 = fp_mul(i207, i211)
    i213 = fp_mul(i211, i212)
    i215 = fp_mul(fp_sqr(i213), i208)
    i216 = fp_mul(i210, i215)
    i217 = fp_mul(i213, i216)
    i218 = fp_mul(i216, i217)
    i219 = fp_mul(i212, i218)
    i220 = fp_mul(i215, i219)
    i222 = fp_mul(fp_sqr(i220), i217)
    i223 = fp_mul(i220, i222)
    i224 = fp_mul(i219, i223)
    i225 = fp_mul(i206, i224)
    i226 = fp_mul(i223, i225)
    i227 = fp_mul(i225, i226)
    i228 = fp_mul(i218, i227)
    i229 = fp_mul(i224, i228)
    i230 = fp_mul(i228, i229)
    i231 = fp_mul(i227, i230)
    i232 = fp_mul(i230, i231)
    i233 = fp_mul(i226, i232)
    i234 = fp_mul(i232, i233)
    i235 = fp_mul(i222, i234)
    i236 = fp_mul(i229, i235)
    i237 = fp_mul(i233, i236)
    i238 = fp_mul(i231, i237)
    i239 = fp_mul(i234, i238)
    i241 = fp_mul(fp_sqr(i239), i238)
    i242 = fp_mul(i235, i241)
    i243 = fp_mul(i239, i242)
    i244 = fp_mul(i236, i243)
    i245 = fp_mul(i242, i244)
    i246 = fp_mul(i243, i245)
    i249 = fp_mul(fp_mul(fp_sqr(i246), i246), i245)
    i250 = fp_mul(i237, i249)
    i251 = fp_mul(i244, i250)
    i252 = fp_mul(i241, i251)
    i253 = fp_mul(_1011, i252)
    i254 = fp_mul(i252, i253)
    i256 = fp_mul(fp_sqr(i254), i251)
    i257 = fp_mul(i249, i256)
    i258 = fp_mul(i246, i257)
    i259 = fp_mul(i256, i258)
    i260 = fp_mul(i258, i259)
    i261 = fp_mul(i254, i260)
    i262 = fp_mul(i250, i261)
    i263 = fp_mul(i253, i262)
    i264 = fp_mul(i259, i263)
    i265 = fp_mul(i257, i264)
    i266 = fp_mul(i264, i265)
    i267 = fp_mul(i263, i266)
    i268 = fp_mul(i265, i267)
    i269 = fp_mul(i261, i268)
    i270 = fp_mul(i262, i269)
    i271 = fp_mul(i266, i270)
    i272 = fp_mul(i267, i271)
    i273 = fp_sqr(i270)
    i274 = fp_mul(i260, i272)
    i275 = fp_sqr(i273)
    i276 = fp_mul(i272, i274)
    i277 = fp_mul(i269, i276)
    x128 = fp_mul(i268, i277)
    i663 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i275,
                                   340282366920938463463374607431768211456),
                            i276), 1),
                    340282366920938463463374607431768211456), i277), 1),
        170141183460469231731687303715884105728)
    i924 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i274, i663), 1),
                           1361129467683753853853498429727072845824), x128),
                1), 340282366920938463463374607431768211456), x128)
    i1310 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i924,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i1569 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1310), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1955 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i1569,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2214 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1955), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i2600 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2214,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2859 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i2600), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3243 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2859,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        85070591730234615865843651857942052864)
    return fp_mul(i271, i3243)
コード例 #23
0
def tri_512(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _1111110 = fp_sqr(_111111)
    _1111111 = fp_mul(_1, _1111110)
    _10011101 = fp_mul(_11111, _1111110)
    i41 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(_10011101, 128), _1001), 1), 128),
                _11101), 1), 16)
    i55 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i41), 1), 64), _10111),
                   1), 32), _1001)
    i70 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i55, 64), _10011), 1), 32),
                   _10011), 1), 4)
    i87 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i70), 1), 256), _10001),
                   1), 64), _1011)
    i110 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i87, 64), _1001), 1), 256),
                   _1111), 1), 128)
    i126 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111111, i110), 1), 64), _1101),
                   1), 128), _11001)
    i143 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i126, 32), _11101), 1), 64),
                   _10001), 1), 16)
    i160 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i143), 1), 64), _11101),
                   1), 256), _1111)
    i178 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i160, 64), _11011), 1), 16),
                   _1101), 1), 64)
    i194 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1001, i178), 1), 128), _10111),
                   1), 64), _1101)
    i213 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i194, 128), _10101), 1), 128),
                   _10001), 1), 8)
    i228 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i213), 1), 64), _111), 1),
            64), _1011)
    i246 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i228, 32), _1001), 1), 8), _11),
            1), 256)
    i265 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11101, i246), 1), 512), _11001),
                1), 128), _11101)
    i292 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i265, 8), _111), 1), 1024),
                   _11101), 1), 4096)
    i309 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11011, i292), 1), 32), _1011),
                   1), 512), _1001)
    i330 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i309, 8), _11), 1), 16), _1),
               1), 4096)
    i346 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i330), 1), 16), _11),
                   1), 512), _11011)
    i363 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i346, 32), _11101), 1), 64),
                   _10011), 1), 16)
    i377 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i363), 1), 64), _10101),
                   1), 32), _11011)
    i400 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i377, 128), _1101), 1), 64),
                   _1011), 1), 256)
    i413 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i400), 1), 8), _101),
                   1), 128), _10001)
    i430 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i413, 128), _11101), 1), 16),
                   _1111), 1), 16)
    i449 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i430), 1), 8192), _1001),
                   1), 8), _11)
    i476 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i449, 256), _1111111), 1), 2048),
                _1001), 1), 64)
    i489 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i476), 1), 32), _10101),
                   1), 32), _10001)
    i508 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i489, 128), _11101), 1), 4),
                   _11), 1), 256)
    i522 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11001, i508), 1), 32), _11011),
                   1), 64), _1101)
    i541 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i522, 8), _11), 1), 64), _11),
            1), 256)
    i556 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_1111111, i541), 1), 64), _10001),
                1), 64), _10111)
    i572 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_mul(fp_exp(i556, 512), _1111111), 2), _1), 1),
        16)
    i586 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i572), 1), 128), _10111),
                   1), 16), _1011)
    i601 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i586, 64), _10111), 1), 32),
                   _11011), 1), 4)
    return fp_mul(fp_exp(fp_exp(fp_mul(_11, i601), 1), 128), _1111)
コード例 #24
0
def novem_4096(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _1010 = fp_sqr(_101)
    _1011 = fp_mul(_1, _1010)
    _1110 = fp_mul(_11, _1011)
    _11100 = fp_sqr(_1110)
    _11101 = fp_mul(_1, _11100)
    _111010 = fp_sqr(_11101)
    _1001000 = fp_mul(_1110, _111010)
    _1100101 = fp_mul(_11101, _1001000)
    _11001010 = fp_sqr(_1100101)
    i13 = fp_mul(_1001000, _11001010)
    i14 = fp_mul(_1011, i13)
    i15 = fp_mul(_101, i14)
    i16 = fp_mul(_1011, i15)
    i17 = fp_mul(_1100101, i16)
    i18 = fp_mul(i15, i17)
    i19 = fp_mul(i17, i18)
    i20 = fp_mul(i18, i19)
    i21 = fp_mul(i14, i20)
    i22 = fp_mul(i19, i21)
    i23 = fp_mul(i21, i22)
    i24 = fp_mul(i13, i23)
    i25 = fp_mul(i16, i24)
    i26 = fp_mul(i23, i25)
    i27 = fp_mul(i22, i26)
    i28 = fp_mul(i20, i27)
    i29 = fp_mul(i26, i28)
    i30 = fp_mul(i28, i29)
    i31 = fp_mul(i25, i30)
    i32 = fp_mul(i29, i31)
    i33 = fp_mul(i24, i32)
    i35 = fp_mul(fp_sqr(i33), i27)
    i36 = fp_mul(i32, i35)
    i38 = fp_mul(fp_sqr(i36), i35)
    i39 = fp_mul(i36, i38)
    i40 = fp_mul(i30, i39)
    i43 = fp_mul(fp_mul(fp_sqr(i40), i40), i33)
    i45 = fp_mul(fp_sqr(i43), i39)
    i46 = fp_mul(i38, i45)
    i47 = fp_mul(i45, i46)
    i48 = fp_mul(i40, i47)
    i49 = fp_mul(i46, i48)
    i50 = fp_mul(i43, i49)
    i51 = fp_mul(i31, i50)
    i52 = fp_mul(i48, i51)
    i53 = fp_mul(i51, i52)
    i54 = fp_mul(i49, i53)
    i55 = fp_mul(i52, i54)
    i57 = fp_mul(fp_sqr(i55), i54)
    i58 = fp_mul(i47, i57)
    i59 = fp_mul(i55, i58)
    i60 = fp_mul(i53, i59)
    i61 = fp_mul(i57, i60)
    i62 = fp_mul(i58, i61)
    i63 = fp_mul(i50, i62)
    i64 = fp_mul(i59, i63)
    i65 = fp_mul(i63, i64)
    i70 = fp_mul(fp_mul(fp_exp(fp_mul(fp_sqr(i65), i65), 2), i65), i64)
    i71 = fp_mul(i62, i70)
    i72 = fp_mul(i65, i71)
    i73 = fp_mul(i60, i72)
    i74 = fp_mul(i61, i73)
    i77 = fp_mul(fp_mul(fp_sqr(i74), i74), i72)
    i80 = fp_mul(fp_mul(fp_sqr(i77), i77), i71)
    i81 = fp_mul(i70, i80)
    i82 = fp_mul(i77, i81)
    i83 = fp_mul(i73, i82)
    i84 = fp_mul(i82, i83)
    i85 = fp_mul(i74, i84)
    i86 = fp_mul(i81, i85)
    i87 = fp_mul(i85, i86)
    i88 = fp_mul(i83, i87)
    i89 = fp_mul(i80, i88)
    i90 = fp_mul(i87, i89)
    i91 = fp_mul(i88, i90)
    i93 = fp_mul(fp_sqr(i91), i84)
    i94 = fp_mul(i91, i93)
    i95 = fp_mul(i90, i94)
    i97 = fp_mul(fp_sqr(i95), i89)
    i100 = fp_mul(fp_exp(i97, 4), i93)
    i101 = fp_mul(i86, i100)
    i102 = fp_mul(i100, i101)
    i103 = fp_mul(i95, i102)
    i104 = fp_mul(i97, i103)
    i105 = fp_mul(i101, i104)
    i106 = fp_mul(i103, i105)
    i107 = fp_mul(i94, i106)
    i108 = fp_mul(i104, i107)
    i109 = fp_mul(i107, i108)
    i110 = fp_mul(i108, i109)
    i113 = fp_mul(fp_mul(fp_sqr(i110), i110), i102)
    i114 = fp_mul(i105, i113)
    i115 = fp_mul(i109, i114)
    i116 = fp_mul(i114, i115)
    i117 = fp_mul(i115, i116)
    i118 = fp_mul(i113, i117)
    i119 = fp_mul(i106, i118)
    i120 = fp_mul(i116, i119)
    i121 = fp_mul(i110, i120)
    i122 = fp_mul(i117, i121)
    i124 = fp_mul(fp_sqr(i122), i120)
    i125 = fp_mul(i118, i124)
    i126 = fp_mul(i124, i125)
    i127 = fp_mul(i119, i126)
    i128 = fp_mul(i122, i127)
    i130 = fp_mul(fp_sqr(i128), i121)
    i131 = fp_mul(i128, i130)
    i132 = fp_mul(i130, i131)
    i134 = fp_mul(fp_sqr(i132), i126)
    i135 = fp_mul(i125, i134)
    i137 = fp_mul(fp_sqr(i135), i134)
    i138 = fp_mul(i132, i137)
    i139 = fp_mul(i131, i138)
    i140 = fp_mul(i135, i139)
    i141 = fp_mul(i137, i140)
    i143 = fp_mul(fp_sqr(i141), i127)
    i144 = fp_mul(i139, i143)
    i145 = fp_mul(i138, i144)
    i146 = fp_mul(i141, i145)
    i147 = fp_mul(i140, i146)
    i148 = fp_mul(i143, i147)
    i149 = fp_mul(i147, i148)
    i150 = fp_mul(i144, i149)
    i151 = fp_mul(i148, i150)
    i152 = fp_mul(i145, i151)
    i153 = fp_mul(i149, i152)
    i154 = fp_mul(i146, i153)
    i155 = fp_mul(i150, i154)
    i157 = fp_mul(fp_sqr(i155), i153)
    i158 = fp_mul(i151, i157)
    i161 = fp_mul(fp_mul(fp_sqr(i158), i158), i154)
    i162 = fp_mul(i158, i161)
    i163 = fp_mul(i157, i162)
    i164 = fp_mul(i152, i163)
    i166 = fp_mul(fp_sqr(i164), i163)
    i167 = fp_mul(i162, i166)
    i168 = fp_mul(i166, i167)
    i170 = fp_mul(fp_sqr(i168), i167)
    i171 = fp_mul(i164, i170)
    i172 = fp_mul(i155, i171)
    i173 = fp_mul(i170, i172)
    i174 = fp_mul(i171, i173)
    i175 = fp_mul(i161, i174)
    i176 = fp_mul(i172, i175)
    i180 = fp_mul(fp_mul(fp_exp(i176, 4), i176), i175)
    i181 = fp_mul(i168, i180)
    i182 = fp_mul(i173, i181)
    i183 = fp_mul(i174, i182)
    i184 = fp_mul(i176, i183)
    i185 = fp_mul(i181, i184)
    i186 = fp_mul(i184, i185)
    i188 = fp_mul(fp_sqr(i186), i180)
    i191 = fp_mul(fp_exp(i188, 4), i182)
    i194 = fp_mul(fp_mul(fp_sqr(i191), i191), i185)
    i195 = fp_mul(i186, i194)
    i196 = fp_mul(i188, i195)
    i197 = fp_mul(i191, i196)
    i198 = fp_mul(i183, i197)
    i199 = fp_mul(i195, i198)
    i200 = fp_mul(i198, i199)
    i201 = fp_mul(i197, i200)
    i204 = fp_mul(fp_mul(fp_sqr(i201), i201), i196)
    i205 = fp_mul(i199, i204)
    i206 = fp_mul(i194, i205)
    i208 = fp_mul(fp_sqr(i206), i200)
    i209 = fp_mul(i206, i208)
    i210 = fp_mul(i205, i209)
    i211 = fp_mul(i201, i210)
    i212 = fp_mul(i208, i211)
    i213 = fp_mul(i209, i212)
    i214 = fp_mul(i211, i213)
    i219 = fp_mul(fp_mul(fp_exp(fp_mul(fp_sqr(i214), i214), 2), i214), i204)
    i220 = fp_mul(i212, i219)
    i221 = fp_mul(i213, i220)
    i222 = fp_mul(i214, i221)
    i223 = fp_mul(i219, i222)
    i224 = fp_mul(i210, i223)
    i225 = fp_mul(i223, i224)
    i226 = fp_mul(_11, i225)
    i227 = fp_mul(i220, i226)
    i228 = fp_mul(i222, i227)
    i229 = fp_mul(i224, i228)
    i230 = fp_mul(i225, i229)
    i231 = fp_mul(i227, i230)
    i232 = fp_mul(i221, i231)
    i233 = fp_mul(i226, i232)
    i234 = fp_mul(i229, i233)
    i235 = fp_mul(i228, i234)
    i236 = fp_mul(i233, i235)
    i237 = fp_mul(i231, i236)
    i238 = fp_mul(i232, i237)
    i240 = fp_mul(fp_sqr(i238), i235)
    i241 = fp_mul(i238, i240)
    i242 = fp_mul(i230, i241)
    i243 = fp_mul(i236, i242)
    i244 = fp_mul(i234, i243)
    i245 = fp_mul(i242, i244)
    i247 = fp_mul(fp_sqr(i245), i243)
    i248 = fp_mul(i240, i247)
    i249 = fp_mul(i244, i248)
    i250 = fp_mul(i237, i249)
    i253 = fp_mul(fp_exp(i250, 4), i249)
    i256 = fp_mul(fp_mul(fp_sqr(i253), i253), i245)
    i257 = fp_mul(i241, i256)
    i258 = fp_mul(i247, i257)
    i259 = fp_mul(i250, i258)
    i260 = fp_mul(i253, i259)
    i261 = fp_mul(i259, i260)
    i263 = fp_mul(fp_sqr(i261), i260)
    i264 = fp_mul(i248, i263)
    i265 = fp_mul(i256, i264)
    i266 = fp_mul(i257, i265)
    i268 = fp_mul(fp_sqr(i266), i258)
    i271 = fp_mul(fp_mul(fp_sqr(i268), i268), i263)
    i272 = fp_mul(i268, i271)
    i273 = fp_mul(i266, i272)
    i274 = fp_mul(i265, i273)
    i275 = fp_mul(i271, i274)
    x126 = fp_mul(i264, i275)
    i278 = fp_mul(fp_sqr(x126), i261)
    i279 = fp_mul(i273, i278)
    i280 = fp_mul(i275, i279)
    x128 = fp_mul(i272, i280)
    i668 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i278,
                                   340282366920938463463374607431768211456),
                            i280), 1), 85070591730234615865843651857942052864),
                i274), 1), 2722258935367507707706996859454145691648)
    i927 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i279, i668), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1313 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i927,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i1572 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1313), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i1958 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i1572,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2217 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i1958), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i2603 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2217,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i2862 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i2603), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3248 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i2862,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i3507 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3248), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    i3893 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(
                        fp_mul(
                            fp_exp(i3507,
                                   340282366920938463463374607431768211456),
                            x128), 1),
                    340282366920938463463374607431768211456), x128), 1),
        340282366920938463463374607431768211456)
    i4152 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x128, i3893), 1),
                           340282366920938463463374607431768211456), x128), 1),
            340282366920938463463374607431768211456), x128)
    return fp_mul(fp_exp(i4152, 85070591730234615865843651857942052864), x126)
コード例 #25
0
def quint_3072(x):
	_1 = x
	_10       = fp_sqr(_1)
	_100      = fp_sqr(_10)
	_110      = fp_mul(_10,_100)
	_111      = fp_mul(_1,_110)
	_1110     = fp_sqr(_111)
	_10000    = fp_mul(_10,_1110)
	_10010    = fp_mul(_10,_10000)
	_100100   = fp_sqr(_10010)
	_110100   = fp_mul(_10000,_100100)
	_1000110  = fp_mul(_10010,_110100)
	_1101010  = fp_mul(_100100,_1000110)
	_1101100  = fp_mul(_10,_1101010)
	_1111010  = fp_mul(_1110,_1101100)
	_11000000 = fp_mul(_1000110,_1111010)
	i17       = fp_mul(fp_exp(_11000000,4),_1101010)
	i18       = fp_mul(_1101100,i17)
	i19       = fp_mul(_110100,i18)
	i20       = fp_mul(_1111010,i19)
	i21       = fp_mul(i17,i20)
	i23       = fp_mul(fp_sqr(i21),i19)
	i24       = fp_mul(i18,i23)
	i25       = fp_mul(i21,i24)
	i27       = fp_mul(fp_sqr(i25),i20)
	i28       = fp_mul(_11000000,i27)
	i29       = fp_mul(i23,i28)
	i32       = fp_mul(fp_mul(fp_sqr(i29),i29),i25)
	i33       = fp_mul(i27,i32)
	i36       = fp_mul(fp_mul(fp_sqr(i33),i33),i29)
	i37       = fp_mul(i33,i36)
	i39       = fp_mul(fp_sqr(i37),i28)
	i40       = fp_mul(i37,i39)
	i41       = fp_mul(i24,i40)
	i42       = fp_mul(i36,i41)
	i43       = fp_mul(i32,i42)
	i44       = fp_mul(i39,i43)
	i45       = fp_mul(i40,i44)
	i46       = fp_mul(i41,i45)
	i47       = fp_mul(i42,i46)
	i48       = fp_mul(i45,i47)
	i49       = fp_mul(i46,i48)
	i50       = fp_mul(i43,i49)
	i51       = fp_mul(i44,i50)
	i55       = fp_mul(fp_mul(fp_exp(i51,4),i51),i50)
	i56       = fp_mul(i48,i55)
	i57       = fp_mul(i51,i56)
	i58       = fp_mul(i56,i57)
	i59       = fp_mul(i57,i58)
	i60       = fp_mul(i49,i59)
	i61       = fp_mul(i58,i60)
	i62       = fp_mul(i60,i61)
	i64       = fp_mul(fp_sqr(i62),i55)
	i65       = fp_mul(i59,i64)
	i66       = fp_mul(i47,i65)
	i67       = fp_mul(i64,i66)
	i68       = fp_mul(i61,i67)
	i69       = fp_mul(i65,i68)
	i70       = fp_mul(i62,i69)
	i71       = fp_mul(i66,i70)
	i73       = fp_mul(fp_sqr(i71),i67)
	i74       = fp_mul(i70,i73)
	i75       = fp_mul(i68,i74)
	i76       = fp_mul(i69,i75)
	i77       = fp_mul(i73,i76)
	i78       = fp_mul(i71,i77)
	i79       = fp_mul(i76,i78)
	i81       = fp_mul(fp_sqr(i79),i77)
	i82       = fp_mul(i75,i81)
	i83       = fp_mul(i78,i82)
	i85       = fp_mul(fp_sqr(i83),i79)
	i87       = fp_mul(fp_sqr(i85),i82)
	i88       = fp_mul(i74,i87)
	i89       = fp_mul(i87,i88)
	i91       = fp_mul(fp_sqr(i89),i81)
	i92       = fp_mul(i88,i91)
	i93       = fp_mul(i85,i92)
	i94       = fp_mul(i91,i93)
	i95       = fp_mul(i83,i94)
	i96       = fp_mul(i94,i95)
	i97       = fp_mul(i89,i96)
	i98       = fp_mul(i93,i97)
	i99       = fp_mul(i92,i98)
	i101      = fp_mul(fp_sqr(i99),i97)
	i102      = fp_mul(i96,i101)
	i103      = fp_mul(i95,i102)
	i104      = fp_mul(i98,i103)
	i105      = fp_mul(i101,i104)
	i107      = fp_mul(fp_sqr(i105),i99)
	i108      = fp_mul(i104,i107)
	i109      = fp_mul(i103,i108)
	i110      = fp_mul(i105,i109)
	i111      = fp_mul(i109,i110)
	i112      = fp_mul(i102,i111)
	i113      = fp_mul(i111,i112)
	i114      = fp_mul(i108,i113)
	i115      = fp_mul(i112,i114)
	i116      = fp_mul(i113,i115)
	i118      = fp_mul(fp_sqr(i116),i114)
	i119      = fp_mul(i107,i118)
	i120      = fp_mul(i115,i119)
	i121      = fp_mul(i119,i120)
	i124      = fp_mul(fp_exp(i121,4),i120)
	i125      = fp_mul(i118,i124)
	i126      = fp_mul(i121,i125)
	i127      = fp_mul(i116,i126)
	i128      = fp_mul(i110,i127)
	i129      = fp_mul(i127,i128)
	i132      = fp_mul(fp_mul(fp_sqr(i129),i129),i126)
	i133      = fp_mul(i125,i132)
	i135      = fp_mul(fp_sqr(i133),i132)
	i136      = fp_mul(i133,i135)
	i137      = fp_mul(i128,i136)
	i138      = fp_mul(i124,i137)
	i139      = fp_mul(i136,i138)
	i140      = fp_mul(i129,i139)
	i141      = fp_mul(i135,i140)
	i144      = fp_mul(fp_exp(i141,4),i138)
	i145      = fp_mul(i139,i144)
	i148      = fp_mul(fp_exp(i145,4),i137)
	i149      = fp_mul(i144,i148)
	i150      = fp_mul(i141,i149)
	i151      = fp_mul(i140,i150)
	i152      = fp_mul(i148,i151)
	i153      = fp_mul(i145,i152)
	i154      = fp_mul(i150,i153)
	i155      = fp_mul(i152,i154)
	i156      = fp_mul(i153,i155)
	i157      = fp_mul(i155,i156)
	i158      = fp_mul(i151,i157)
	i159      = fp_mul(i154,i158)
	i160      = fp_mul(i156,i159)
	i161      = fp_mul(i149,i160)
	i162      = fp_mul(i160,i161)
	i163      = fp_mul(i158,i162)
	i164      = fp_mul(i157,i163)
	i166      = fp_mul(fp_sqr(i164),i163)
	i167      = fp_mul(i164,i166)
	i168      = fp_mul(i162,i167)
	i169      = fp_mul(i161,i168)
	i170      = fp_mul(i159,i169)
	i171      = fp_mul(i166,i170)
	i172      = fp_mul(i170,i171)
	i175      = fp_mul(fp_mul(fp_sqr(i172),i172),i169)
	i176      = fp_mul(i167,i175)
	i177      = fp_mul(i172,i176)
	i179      = fp_mul(fp_sqr(i177),i175)
	i180      = fp_mul(i168,i179)
	i181      = fp_mul(i176,i180)
	i182      = fp_mul(i177,i181)
	i183      = fp_mul(i171,i182)
	i185      = fp_mul(fp_sqr(i183),i180)
	i186      = fp_mul(i181,i185)
	i187      = fp_mul(i183,i186)
	i189      = fp_mul(fp_sqr(i187),i182)
	i190      = fp_mul(i185,i189)
	i191      = fp_mul(i187,i190)
	i192      = fp_mul(i179,i191)
	i194      = fp_mul(fp_sqr(i192),i190)
	i195      = fp_mul(i191,i194)
	i196      = fp_mul(i192,i195)
	i197      = fp_mul(i186,i196)
	i200      = fp_mul(fp_mul(fp_sqr(i197),i197),i194)
	i201      = fp_mul(i195,i200)
	i202      = fp_mul(i189,i201)
	i203      = fp_mul(i197,i202)
	i205      = fp_mul(fp_sqr(i203),i200)
	i206      = fp_mul(i196,i205)
	i207      = fp_mul(i202,i206)
	i208      = fp_mul(i201,i207)
	i209      = fp_mul(i206,i208)
	i210      = fp_mul(i203,i209)
	i212      = fp_mul(fp_sqr(i210),i207)
	i213      = fp_mul(i209,i212)
	i214      = fp_mul(i210,i213)
	i215      = fp_mul(i213,i214)
	i216      = fp_mul(i214,i215)
	i217      = fp_mul(i208,i216)
	i220      = fp_mul(fp_mul(fp_sqr(i217),i217),i216)
	i221      = fp_mul(_111,i220)
	i222      = fp_mul(i212,i221)
	i223      = fp_mul(i205,i222)
	i224      = fp_mul(i217,i223)
	i225      = fp_mul(i222,i224)
	i226      = fp_mul(i220,i225)
	i227      = fp_mul(i223,i226)
	i228      = fp_mul(i226,i227)
	i229      = fp_mul(i215,i228)
	i230      = fp_mul(i225,i229)
	i231      = fp_mul(i224,i230)
	i232      = fp_mul(i221,i231)
	i233      = fp_mul(i227,i232)
	i234      = fp_mul(i228,i233)
	i235      = fp_mul(i229,i234)
	i236      = fp_mul(i230,i235)
	i237      = fp_mul(i233,i236)
	i238      = fp_mul(i232,i237)
	i239      = fp_mul(i231,i238)
	i240      = fp_mul(i236,i239)
	i241      = fp_mul(i235,i240)
	i242      = fp_mul(i237,i241)
	i243      = fp_mul(i240,i242)
	i244      = fp_mul(i238,i243)
	i245      = fp_mul(i234,i244)
	i246      = fp_mul(i243,i245)
	i247      = fp_mul(i239,i246)
	i249      = fp_mul(fp_sqr(i247),i242)
	i250      = fp_mul(i245,i249)
	i251      = fp_mul(i247,i250)
	i252      = fp_mul(i241,i251)
	i253      = fp_mul(i246,i252)
	i254      = fp_mul(i250,i253)
	i255      = fp_mul(i251,i254)
	i256      = fp_mul(i244,i255)
	i257      = fp_mul(i249,i256)
	i258      = fp_mul(i256,i257)
	i259      = fp_mul(i255,i258)
	i260      = fp_mul(i257,i259)
	i261      = fp_mul(i253,i260)
	i262      = fp_mul(i258,i261)
	i264      = fp_mul(fp_sqr(i262),i259)
	i265      = fp_mul(i254,i264)
	i266      = fp_mul(i261,i265)
	i267      = fp_mul(i264,i266)
	i268      = fp_mul(i260,i267)
	i269      = fp_mul(i262,i268)
	i270      = fp_mul(i266,i269)
	i271      = fp_mul(i252,i270)
	i273      = fp_mul(fp_sqr(i271),i269)
	i274      = fp_mul(i265,i273)
	i275      = fp_mul(i273,i274)
	i276      = fp_mul(i267,i275)
	x125      = fp_mul(i271,i276)
	i278      = fp_mul(i268,x125)
	i279      = fp_mul(i270,i278)
	i280      = fp_mul(i275,i279)
	i281      = fp_mul(i274,i280)
	i282      = fp_mul(i278,i281)
	i283      = fp_mul(i276,i282)
	i284      = fp_mul(i281,i283)
	x128      = fp_mul(i279,i284)
	i672      = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i284,340282366920938463463374607431768211456),i280),1),340282366920938463463374607431768211456),i282),1),680564733841876926926749214863536422912)
	i931      = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(i283,i672),1),340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128)
	i1317     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i931,340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456)
	i1576     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x128,i1317),1),340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128)
	i1962     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i1576,340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456)
	i2221     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x128,i1962),1),340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128)
	i2607     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i2221,340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456)
	i2866     = fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(x128,i2607),1),340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128)
	i3249     = fp_exp(fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i2866,340282366920938463463374607431768211456),x128),1),340282366920938463463374607431768211456),x128),1),42535295865117307932921825928971026432)
	return       fp_mul(x125,i3249)
コード例 #26
0
def sq_1792(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111110 = fp_sqr(_11111)
    _111111 = fp_mul(_1, _111110)
    _1111110 = fp_sqr(_111111)
    _1111111 = fp_mul(_1, _1111110)
    i42 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_1111111, 64), _1101), 1), 512),
                   _11001), 1), 32)
    i55 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i42), 1), 32), _11001),
                   1), 32), _1001)
    i79 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i55, 256), _1011), 1), 16), _1),
            1), 1024)
    i88 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i79), 1), 8), _101), 1),
            8), _1)
    i109 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i88, 512), _11001), 1), 32),
                   _11001), 1), 32)
    i125 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111, i109), 1), 256), _10011),
                   1), 32), _11011)
    i145 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i125, 64), _11111), 1), 256),
                   _10101), 1), 16)
    i160 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i145), 1), 128), _111), 1),
            32), _11)
    i177 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i160, 64), _101), 1), 32), _11),
            1), 16)
    i196 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i177), 1), 1024), _101), 1),
            64), _1001)
    i214 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i196, 32), _1001), 1), 64),
                   _10111), 1), 32)
    i237 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_101, i214), 1), 32768), _11101),
                1), 32), _10101)
    i257 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_sqr(i237), _1), 1), 2048),
                   _1111111), 1), 64)
    i273 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i257), 1), 64), _1111),
                   1), 128), _11101)
    i290 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i273, 32), _1111), 1), 64),
                   _10101), 1), 16)
    i307 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i290), 1), 128), _11), 1),
            128), _1101)
    i334 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i307, 8), _1), 1), 8192),
                   _10111), 1), 512)
    i351 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i334), 1), 8), _11), 1),
            2048), _11011)
    i375 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i351, 32), _10011), 1), 256),
                   _11111), 1), 512)
    i390 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i375), 1), 16), _1111),
                   1), 256), _11011)
    i410 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i390, 128), _11011), 1), 256),
                   _111), 1), 8)
    i430 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i410), 1), 512), _10011),
                   1), 256), _1)
    i451 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i430, 512), _111111), 1), 16),
                   _1), 1), 64)
    i468 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11, i451), 1), 256), _11101),
                   1), 64), _11001)
    i488 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i468, 4), _11), 1), 128),
                   _1011), 1), 512)
    i502 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i488), 1), 64), _11001),
                   1), 32), _10011)
    i520 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i502, 8), _11), 1), 128),
                   _1111), 1), 64)
    i534 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11011, i520), 1), 32), _10101),
                   1), 64), _11101)
    i555 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i534, 32), _11101), 1), 128),
                   _1101), 1), 128)
    i569 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10111, i555), 1), 32), _1101),
                   1), 64), _11001)
    i594 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i569, 8192), _11011), 1), 128),
                   _10101), 1), 8)
    return fp_exp(
        fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i594), 1), 128), _1011), 1),
        5203966097332199540962620163682042769307631123633352402659556175201804029836680149006119720866162092421210806977140503895691783124161732454069953302838660381462064754694610172886591674830791775236479710273844905605846838573774239433481250692219130145866174442655580414269208292514127802333112415945459400923534111101570260513349217744366479014439025434868093450357360355277851584364544
    )
コード例 #27
0
def quart_512(x):
    _1 = x
    _10 = fp_sqr(_1)
    _11 = fp_mul(_1, _10)
    _101 = fp_mul(_10, _11)
    _111 = fp_mul(_10, _101)
    _1001 = fp_mul(_10, _111)
    _1011 = fp_mul(_10, _1001)
    _1101 = fp_mul(_10, _1011)
    _1111 = fp_mul(_10, _1101)
    _10001 = fp_mul(_10, _1111)
    _10011 = fp_mul(_10, _10001)
    _10101 = fp_mul(_10, _10011)
    _10111 = fp_mul(_10, _10101)
    _11001 = fp_mul(_10, _10111)
    _11011 = fp_mul(_10, _11001)
    _11101 = fp_mul(_10, _11011)
    _11111 = fp_mul(_10, _11101)
    _111010 = fp_mul(_11011, _11111)
    _111111 = fp_mul(_101, _111010)
    i34 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(_111010, 8), _111), 1), 128),
                   _11011), 1), 16)
    i52 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i34), 1), 16), _11), 1),
            2048), _10111)
    i70 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i52, 64), _11111), 1), 32),
                   _1011), 1), 32)
    i82 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i70), 1), 128), _11001),
                   1), 4), _11)
    i102 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i82, 256), _1011), 1), 64),
                   _11001), 1), 16)
    i117 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i102), 1), 64), _1111),
                   1), 64), _11001)
    i135 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i117, 8), _111), 1), 128),
                   _11011), 1), 64)
    i152 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11111, i135), 1), 32), _1011),
                   1), 512), _10111)
    i174 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i152, 128), _10111), 1), 128),
                   _10011), 1), 64)
    i189 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_11101, i174), 1), 32), _10111),
                   1), 128), _1011)
    i208 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i189, 32), _111), 1), 128),
                   _111111), 1), 32)
    i222 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1101, i208), 1), 32), _1101),
                   1), 64), _10101)
    i242 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_sqr(i222), _1), 1), 256), _1111),
               1), 512)
    i255 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10101, i242), 1), 16), _111),
                   1), 64), _1001)
    i274 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i255, 64), _11101), 1), 32),
                   _10011), 1), 64)
    i291 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10001, i274), 1), 64), _10111),
                   1), 256), _101)
    i309 = fp_exp(
        fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i291, 8), _1), 1), 64), _1),
               1), 128)
    i331 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i309), 1), 512), _10011),
                   1), 1024), _10111)
    i349 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i331, 64), _11001), 1), 32),
                   _101), 1), 32)
    i365 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_111, i349), 1), 128), _111111),
                   1), 64), _11001)
    i387 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i365, 256), _11), 1), 64),
                   _101), 1), 64)
    i404 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1111, i387), 1), 512), _10011),
                   1), 32), _10101)
    i423 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i404, 32), _11011), 1), 128),
                   _11101), 1), 32)
    i433 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i423), 1), 16), _1011),
                   1), 8), _1)
    i459 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i433, 2048), _111), 1), 256),
                   _10011), 1), 32)
    i478 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(_11101, i459), 1), 2048), _11011),
                1), 32), _11101)
    i495 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_sqr(i478), _1), 1), 1024), _10011),
            1), 16)
    i512 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1011, i495), 1), 128), _10101),
                   1), 128), _11011)
    i536 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i512, 128), _1101), 1), 512),
                   _1001), 1), 64)
    i548 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_10011, i536), 1), 32), _11101),
                   1), 16), _1101)
    i567 = fp_exp(
        fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i548, 512), _1011), 1), 128),
               _111111), 2)
    i582 = fp_mul(
        fp_exp(
            fp_exp(fp_mul(fp_exp(fp_exp(fp_mul(_1, i567), 1), 64), _1011), 1),
            64), _111)
    i601 = fp_exp(
        fp_exp(
            fp_mul(fp_exp(fp_exp(fp_mul(fp_exp(i582, 8), _1), 1), 256), _1111),
            1), 64)
    return fp_mul(fp_exp(fp_exp(fp_mul(_1101, i601), 1), 8), _11)
コード例 #28
0
def tri_1024(x):
    _1 = x
    _10 = fp_sqr(_1)
    _100 = fp_sqr(_10)
    _110 = fp_mul(_10, _100)
    _111 = fp_mul(_1, _110)
    _1101 = fp_mul(_110, _111)
    _1110 = fp_mul(_1, _1101)
    _10001 = fp_mul(_100, _1101)
    _10011 = fp_mul(_10, _10001)
    _10100 = fp_mul(_1, _10011)
    _10111 = fp_mul(_100, _10011)
    _11101 = fp_mul(_110, _10111)
    _100100 = fp_mul(_111, _11101)
    _100110 = fp_mul(_10, _100100)
    _101011 = fp_mul(_111, _100100)
    _110001 = fp_mul(_110, _101011)
    _111110 = fp_mul(_1101, _110001)
    _1000001 = fp_mul(_11101, _100100)
    _1000111 = fp_mul(_110, _1000001)
    _1011010 = fp_mul(_10011, _1000111)
    _1011011 = fp_mul(_1, _1011010)
    _1111111 = fp_mul(_100100, _1011011)
    _10000011 = fp_mul(_100, _1111111)
    _11011110 = fp_mul(_1011011, _10000011)
    i24 = fp_mul(_111110, _11011110)
    i25 = fp_mul(_101011, i24)
    i26 = fp_mul(_11101, i25)
    i27 = fp_mul(_1101, i26)
    i28 = fp_mul(_100110, i27)
    i29 = fp_mul(_100110, i28)
    i30 = fp_mul(i25, i29)
    i31 = fp_mul(_1110, i30)
    i32 = fp_mul(_10100, i31)
    i33 = fp_mul(_10001, i32)
    i34 = fp_mul(_10000011, i33)
    i35 = fp_mul(_1011010, i34)
    i36 = fp_mul(i24, i35)
    i37 = fp_mul(_11011110, i36)
    i38 = fp_mul(i31, i37)
    i39 = fp_mul(i28, i38)
    i40 = fp_mul(_10111, i39)
    i41 = fp_mul(_110001, i40)
    i42 = fp_mul(i29, i41)
    i43 = fp_mul(i34, i42)
    i44 = fp_mul(_1111111, i43)
    i45 = fp_mul(i27, i44)
    i46 = fp_mul(_1000111, i45)
    i47 = fp_mul(i35, i46)
    i48 = fp_mul(_1000001, i47)
    i49 = fp_mul(i26, i48)
    i50 = fp_mul(i30, i49)
    i51 = fp_mul(i43, i50)
    i52 = fp_mul(i40, i51)
    i53 = fp_mul(i46, i52)
    i54 = fp_mul(i41, i53)
    i55 = fp_mul(i47, i54)
    i56 = fp_mul(i48, i55)
    i57 = fp_mul(i39, i56)
    i58 = fp_mul(i45, i57)
    i59 = fp_mul(i38, i58)
    i60 = fp_mul(i36, i59)
    i61 = fp_mul(i37, i60)
    i62 = fp_mul(i58, i61)
    i63 = fp_mul(i52, i62)
    i64 = fp_mul(i50, i63)
    i65 = fp_mul(i55, i64)
    i66 = fp_mul(i33, i65)
    i67 = fp_mul(i32, i66)
    i68 = fp_mul(i44, i67)
    i69 = fp_mul(i56, i68)
    i70 = fp_mul(i53, i69)
    i71 = fp_mul(i61, i70)
    i72 = fp_mul(i59, i71)
    i73 = fp_mul(i57, i72)
    i74 = fp_mul(i65, i73)
    i75 = fp_mul(i63, i74)
    i76 = fp_mul(i62, i75)
    i77 = fp_mul(i66, i76)
    i78 = fp_mul(i60, i77)
    i79 = fp_mul(i71, i78)
    i80 = fp_mul(i54, i79)
    i81 = fp_mul(i68, i80)
    i82 = fp_mul(i49, i81)
    i83 = fp_mul(i42, i82)
    i84 = fp_mul(i72, i83)
    i85 = fp_mul(i73, i84)
    i86 = fp_mul(i64, i85)
    i87 = fp_mul(i67, i86)
    i88 = fp_mul(i69, i87)
    i89 = fp_mul(i74, i88)
    i90 = fp_mul(i51, i89)
    i91 = fp_mul(i80, i90)
    i92 = fp_mul(i89, i91)
    i93 = fp_mul(i79, i92)
    i94 = fp_mul(i83, i93)
    i95 = fp_mul(i75, i94)
    i96 = fp_mul(i86, i95)
    i97 = fp_mul(i82, i96)
    i98 = fp_mul(i87, i97)
    i99 = fp_mul(i88, i98)
    i100 = fp_mul(i85, i99)
    i101 = fp_mul(i97, i100)
    i102 = fp_mul(i95, i101)
    i103 = fp_mul(i91, i102)
    i104 = fp_mul(i70, i103)
    i105 = fp_mul(i90, i104)
    i106 = fp_mul(i93, i105)
    i107 = fp_mul(i78, i106)
    i108 = fp_mul(i77, i107)
    i109 = fp_mul(i81, i108)
    i110 = fp_mul(i76, i109)
    i111 = fp_mul(i99, i110)
    i112 = fp_mul(i98, i111)
    i113 = fp_mul(i102, i112)
    i114 = fp_mul(i111, i113)
    i115 = fp_mul(i108, i114)
    x28 = fp_mul(i92, i115)
    i117 = fp_mul(i103, x28)
    i118 = fp_mul(i104, i117)
    i119 = fp_mul(i112, i118)
    i120 = fp_mul(i94, i119)
    i121 = fp_mul(i101, i120)
    i122 = fp_mul(i118, i121)
    i123 = fp_mul(i84, i122)
    i124 = fp_mul(i114, i123)
    i125 = fp_mul(i113, i124)
    i126 = fp_mul(i122, i125)
    i127 = fp_mul(i121, i126)
    i128 = fp_mul(i96, i127)
    i129 = fp_mul(i117, i128)
    i130 = fp_mul(i100, i129)
    i131 = fp_mul(i110, i130)
    i132 = fp_mul(i120, i131)
    i133 = fp_mul(i106, i132)
    i134 = fp_mul(i107, i133)
    i135 = fp_mul(i115, i134)
    i136 = fp_mul(i109, i135)
    i137 = fp_mul(i105, i136)
    x32 = fp_mul(i119, i137)
    i249 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i135, 274877906944), i132), 1),
                       17179869184), i125), 1), 137438953472)
    i320 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(i133, i249), 1), 68719476736),
                       i128), 1), 4294967296), i126)
    i420 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i320, 8589934592), i131), 1),
                       4294967296), i129), 1), 8589934592)
    i488 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(i130, i420), 1), 4294967296),
                       i124), 1), 8589934592), i123)
    i595 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i488, 34359738368), i134), 1),
                       4294967296), i136), 1), 274877906944)
    i667 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(i137, i595), 1), 137438953472),
                       i127), 1), 4294967296), x32)
    i765 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i667, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i832 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i765), 1), 4294967296), x32),
                1), 4294967296), x32)
    i930 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i832, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    i997 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i930), 1), 4294967296), x32),
                1), 4294967296), x32)
    i1095 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(fp_exp(fp_mul(fp_exp(i997, 4294967296), x32), 1),
                       4294967296), x32), 1), 4294967296)
    return fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(fp_exp(fp_exp(fp_mul(x32, i1095), 1), 4294967296), x32),
                1), 268435456), x28)
コード例 #29
0
def quint_1792(x):
    _1 = x
    _10 = fp_sqr(_1)
    _100 = fp_sqr(_10)
    _101 = fp_mul(_1, _100)
    _110 = fp_mul(_1, _101)
    _1001 = fp_mul(_100, _101)
    _1010 = fp_mul(_1, _1001)
    _10100 = fp_sqr(_1010)
    _11001 = fp_mul(_101, _10100)
    _100010 = fp_mul(_1001, _11001)
    _100100 = fp_mul(_10, _100010)
    _101010 = fp_mul(_110, _100100)
    _101111 = fp_mul(_101, _101010)
    _110000 = fp_mul(_1, _101111)
    _1001001 = fp_mul(_11001, _110000)
    _1001011 = fp_mul(_10, _1001001)
    _1001111 = fp_mul(_100, _1001011)
    _1011001 = fp_mul(_1010, _1001111)
    _10110010 = fp_sqr(_1011001)
    _11011100 = fp_mul(_101010, _10110010)
    i20 = fp_mul(_1001001, _11011100)
    i21 = fp_mul(_1001011, i20)
    i22 = fp_mul(_100100, i21)
    i23 = fp_mul(_1001111, i22)
    i24 = fp_mul(_11011100, i23)
    i25 = fp_mul(_110000, i24)
    i26 = fp_mul(i23, i25)
    i27 = fp_mul(i20, i26)
    i28 = fp_mul(i21, i27)
    i29 = fp_mul(i22, i28)
    i30 = fp_mul(i26, i29)
    i31 = fp_mul(_100010, i30)
    i32 = fp_mul(i24, i31)
    i33 = fp_mul(i25, i32)
    i34 = fp_mul(_101111, i33)
    i36 = fp_mul(fp_sqr(i34), _1011001)
    i38 = fp_mul(fp_sqr(i36), i30)
    i39 = fp_mul(_101010, i38)
    i40 = fp_mul(i38, i39)
    i41 = fp_mul(i34, i40)
    i42 = fp_mul(i29, i41)
    i43 = fp_mul(i33, i42)
    i44 = fp_mul(i28, i43)
    i45 = fp_mul(i39, i44)
    i46 = fp_mul(i27, i45)
    i47 = fp_mul(i32, i46)
    i48 = fp_mul(i40, i47)
    i49 = fp_mul(i31, i48)
    i50 = fp_mul(i41, i49)
    i51 = fp_mul(i43, i50)
    i52 = fp_mul(i47, i51)
    i53 = fp_mul(i44, i52)
    i54 = fp_mul(i48, i53)
    i55 = fp_mul(i46, i54)
    i56 = fp_mul(i45, i55)
    i57 = fp_mul(i51, i56)
    i58 = fp_mul(i50, i57)
    i59 = fp_mul(i53, i58)
    i60 = fp_mul(i49, i59)
    i61 = fp_mul(i55, i60)
    i62 = fp_mul(i42, i61)
    i63 = fp_mul(i56, i62)
    i64 = fp_mul(i58, i63)
    i65 = fp_mul(i62, i64)
    i66 = fp_mul(i64, i65)
    i67 = fp_mul(i60, i66)
    i68 = fp_mul(i61, i67)
    i69 = fp_mul(i54, i68)
    i70 = fp_mul(i57, i69)
    i71 = fp_mul(i52, i70)
    i72 = fp_mul(i36, i71)
    i73 = fp_mul(i68, i72)
    i74 = fp_mul(i67, i73)
    i75 = fp_mul(i65, i74)
    i76 = fp_mul(i73, i75)
    i77 = fp_mul(i71, i76)
    i78 = fp_mul(i59, i77)
    i79 = fp_mul(i69, i78)
    i80 = fp_mul(i70, i79)
    i81 = fp_mul(i72, i80)
    i82 = fp_mul(i63, i81)
    i83 = fp_mul(i75, i82)
    i84 = fp_mul(i76, i83)
    i85 = fp_mul(i78, i84)
    i86 = fp_mul(i80, i85)
    i89 = fp_mul(fp_exp(i86, 4), i82)
    i90 = fp_mul(i77, i89)
    i91 = fp_mul(i81, i90)
    i92 = fp_mul(i83, i91)
    i93 = fp_mul(i66, i92)
    i94 = fp_mul(i79, i93)
    i95 = fp_mul(i85, i94)
    i96 = fp_mul(i91, i95)
    i97 = fp_mul(i95, i96)
    i98 = fp_mul(i89, i97)
    i99 = fp_mul(i74, i98)
    i100 = fp_mul(i90, i99)
    i101 = fp_mul(i84, i100)
    i102 = fp_mul(i86, i101)
    i103 = fp_mul(i101, i102)
    i104 = fp_mul(i93, i103)
    i105 = fp_mul(i94, i104)
    i106 = fp_mul(i103, i105)
    i107 = fp_mul(i96, i106)
    i108 = fp_mul(i100, i107)
    i109 = fp_mul(i104, i108)
    i110 = fp_mul(i102, i109)
    i111 = fp_mul(i99, i110)
    i112 = fp_mul(i106, i111)
    i113 = fp_mul(i110, i112)
    i114 = fp_mul(i109, i113)
    i115 = fp_mul(i97, i114)
    i116 = fp_mul(i111, i115)
    i117 = fp_mul(i112, i116)
    i118 = fp_mul(i105, i117)
    i119 = fp_mul(i113, i118)
    i120 = fp_mul(i92, i119)
    i121 = fp_mul(i98, i120)
    i122 = fp_mul(i107, i121)
    i123 = fp_mul(i114, i122)
    i124 = fp_mul(i120, i123)
    i125 = fp_mul(i122, i124)
    i126 = fp_mul(i115, i125)
    i127 = fp_mul(i118, i126)
    i128 = fp_mul(i123, i127)
    i129 = fp_mul(i116, i128)
    i130 = fp_mul(i121, i129)
    i131 = fp_mul(i108, i130)
    i132 = fp_mul(i119, i131)
    i133 = fp_mul(i126, i132)
    i134 = fp_mul(i125, i133)
    i135 = fp_mul(i128, i134)
    i136 = fp_mul(i130, i135)
    i137 = fp_mul(i131, i136)
    i138 = fp_mul(i124, i137)
    i139 = fp_mul(i134, i138)
    i140 = fp_mul(i136, i139)
    i141 = fp_mul(i117, i140)
    i142 = fp_mul(i127, i141)
    i143 = fp_mul(i135, i142)
    i144 = fp_mul(i133, i143)
    i145 = fp_mul(i142, i144)
    i146 = fp_mul(i139, i145)
    i147 = fp_mul(i140, i146)
    i148 = fp_mul(i132, i147)
    i150 = fp_mul(fp_sqr(i148), i141)
    i151 = fp_mul(i129, i150)
    i152 = fp_mul(i143, i151)
    i153 = fp_mul(i137, i152)
    i154 = fp_mul(i144, i153)
    i155 = fp_mul(i145, i154)
    i156 = fp_mul(i138, i155)
    i157 = fp_mul(i148, i156)
    i158 = fp_mul(i147, i157)
    i159 = fp_mul(i153, i158)
    i160 = fp_mul(i152, i159)
    i161 = fp_mul(i158, i160)
    i162 = fp_mul(i151, i161)
    x53 = fp_mul(i150, i162)
    i164 = fp_mul(i146, x53)
    i165 = fp_mul(i154, i164)
    i166 = fp_mul(i157, i165)
    i167 = fp_mul(i155, i166)
    i168 = fp_mul(i165, i167)
    i169 = fp_mul(i161, i168)
    i170 = fp_mul(i159, i169)
    i172 = fp_mul(fp_sqr(i170), i166)
    i173 = fp_mul(i160, i172)
    i174 = fp_mul(i156, i173)
    i175 = fp_mul(i168, i174)
    i176 = fp_mul(i167, i175)
    i177 = fp_mul(i162, i176)
    i178 = fp_mul(i172, i177)
    i179 = fp_mul(i174, i178)
    i180 = fp_mul(i170, i179)
    i181 = fp_mul(i173, i180)
    i182 = fp_mul(i176, i181)
    i183 = fp_mul(i169, i182)
    i184 = fp_mul(i180, i183)
    i185 = fp_mul(i182, i184)
    i186 = fp_mul(i177, i185)
    i187 = fp_mul(i178, i186)
    i188 = fp_mul(i181, i187)
    i189 = fp_mul(i179, i188)
    i190 = fp_mul(i188, i189)
    i191 = fp_mul(i164, i190)
    i192 = fp_mul(i189, i191)
    i193 = fp_mul(i186, i192)
    i194 = fp_mul(i187, i193)
    i195 = fp_mul(i184, i194)
    i196 = fp_mul(i175, i195)
    i197 = fp_mul(i190, i196)
    x64 = fp_mul(i185, i197)
    i394 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i194, 1152921504606846976), i183), 1),
                    295147905179352825856), i193), 1), 73786976294838206464)
    i531 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(i197, i394), 1),
                           36893488147419103232), i192), 1),
            590295810358705651712), i196)
    i727 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i531, 36893488147419103232), i191),
                           1), 36893488147419103232), i195), 1),
        18446744073709551616)
    i858 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i727), 1), 18446744073709551616),
                    x64), 1), 18446744073709551616), x64)
    i1052 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i858, 18446744073709551616), x64), 1),
                    18446744073709551616), x64), 1), 18446744073709551616)
    i1183 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i1052), 1),
                           18446744073709551616), x64), 1),
            18446744073709551616), x64)
    i1377 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i1183, 18446744073709551616), x64),
                           1), 18446744073709551616), x64), 1),
        18446744073709551616)
    i1508 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i1377), 1),
                           18446744073709551616), x64), 1),
            18446744073709551616), x64)
    i1702 = fp_exp(
        fp_exp(
            fp_mul(
                fp_exp(
                    fp_exp(fp_mul(fp_exp(i1508, 18446744073709551616), x64),
                           1), 18446744073709551616), x64), 1),
        18446744073709551616)
    i1833 = fp_mul(
        fp_exp(
            fp_exp(
                fp_mul(
                    fp_exp(fp_exp(fp_mul(x64, i1702), 1),
                           18446744073709551616), x64), 1),
            18446744073709551616), x64)
    return fp_mul(
        fp_exp(fp_exp(fp_mul(fp_exp(i1833, 18446744073709551616), x64), 1),
               9007199254740992), x53)