{{{id=1|
K.=NumberField(x^2-x-1)
from psage.ellcurve.minmodel.sqrt5 import canonical_model,f_map
import nosqlite
db=nosqlite.Client('/home/psharaba/EC').db
///
}}}
{{{id=64|
from psage.number_fields.sqrt5.prime import Prime
///
}}}
{{{id=63|
def galois_conjugate(alpha):
if isinstance(alpha, Integer):
return alpha
return alpha[0]+alpha[1]*(1-a)
///
}}}
{{{id=69|
temp=db('select weq1,weq2 from N1k ORDER BY N,eta,R,V,U')
for r in temp:
E1=EllipticCurve(K,eval(r[0]))
F1=str(list(canonical_model(E1).ainvs())).replace(' ','')
E2 = EllipticCurve(K, [galois_conjugate(K(alpha)) for alpha in E1.ainvs()])
F2 = str(list(canonical_model(E2).ainvs())).replace(' ','')
db.N1k.update({'weq1': F1, 'weq2': F2}, weq1=r[0])
///
WARNING: Output truncated!
full_output.txt
False
False
False
False
False
False
False
False
True
True
False
False
True
True
False
False
False
False
True
True
True
True
True
True
False
False
False
False
True
True
False
False
False
False
True
True
False
False
True
True
True
True
True
True
False
False
False
False
False
False
True
True
False
False
True
True
True
True
False
...
True
True
False
False
False
False
False
False
False
False
True
True
False
False
False
False
False
False
True
True
False
False
False
False
True
True
True
True
True
True
True
True
False
False
False
False
False
False
True
True
True
True
False
False
False
False
True
True
False
False
True
True
True
True
False
False
False
False
False
False
}}}
{{{id=71|
db.
///
}}}
{{{id=62|
temp=db('select cond,weq from sqrt5 ORDER BY N,c_lbl,R,V,U')
for r in temp:
C1=K(eval(r[0]))
if C1[0] < 0:
C1=C1*(-1)
db.sqrt5.update({'cond': str(C1).replace(' ','')},weq=r[1])
///
Traceback (most recent call last):
File "", line 1, in
File "_sage_input_6.py", line 10, in
exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("dGVtcD1kYignc2VsZWN0IGNvbmQsd2VxIGZyb20gc3FydDUgT1JERVIgQlkgTixjX2xibCxSLFYsVScpCmZvciByIGluIHRlbXA6CiAgICBDMT1LKGV2YWwoclswXSkpCiAgICBpZiBDMVswXSA8IDA6CiAgICAgICAgQzE9QzEqKC0xKQogICAgZGIuc3FydDUudXBkYXRlKHsnY29uZCc6IHN0cihDMSkucmVwbGFjZSgnICcsJycpfSx3ZXE9clsxXSk="),globals())+"\\n"); execfile(os.path.abspath("___code___.py"))' + '\n', '', 'single')
File "", line 1, in
File "/tmp/tmpAo8v8m/___code___.py", line 4, in
exec compile(u"for r in temp:\n C1=K(eval(r[_sage_const_0 ]))\n if C1[_sage_const_0 ] < _sage_const_0 :\n C1=C1*(-_sage_const_1 )\n db.sqrt5.update({'cond': str(C1).replace(' ','')},weq=r[_sage_const_1 ])" + '\n', '', 'single')
File "", line 5, in
File "/home/wstein/nosqlite/nosqlite.py", line 940, in update
self.database(cmd, t)
File "/home/wstein/nosqlite/nosqlite.py", line 592, in __call__
return self.client(cmds, t, file=self.name, many=many, coerce=coerce)
File "/home/wstein/nosqlite/nosqlite.py", line 467, in __call__
return self.server.execute(cmd, t, file, many)
File "/home/wstein/nosqlite/nosqlite.py", line 352, in execute
db.commit()
KeyboardInterrupt
__SAGE__
}}}
{{{id=2|
temp=db('select b_lbl,weq1,weq2,rank,T,s,ordD,ordj,c_p,K from N1k WHERE a_lbl="209a" and b_lbl LIKE "b%" ORDER BY N,eta,R,V,U')
///
}}}
{{{id=8|
def deal(s):
if not s:
return '0'
ret = str(s[0]) if s[0] else ''
if not s[1]:
return ret
if s[1] == 1:
if s[0]: ret += '+'
return ret+r'\varphi'
if s[1] == -1:
return ret+r'-\varphi'
if s[1] > 0:
if s[0]: ret += '+'
return ret+str(s[1])+r'\varphi'
return ret+str(s[1])+r'\varphi'
def ko_de(s):
L = str(s).split(',')
for i,t in enumerate(L):
end = '^*' if t.endswith('*') else ''
t = t.strip('*')
if t in ['II','III','IV'] :
L[i] = r'\text{'+t+'}'+end
else:
L[i] = r'\text{I}_{'+t[1:]+'}'+end
return ','.join(L)
///
}}}
{{{id=3|
def row(temp):
ret = r' &&\mkcoll{\text{'+r'}\cr \text{'.join([str(c[0]) for c in temp])+'}\\cr}\n &'
for i in range(5):
L = [K(eval(c[1])[i]) for c in temp]
ret += r'&\mkcolr{'+r'\cr '.join([deal(e) for e in L])+'\\cr}\n '
ret += '&'
for i in (2,3):
ret += r'&\mkcol{'+r'\cr '.join([str(c[i]) for c in temp])+'\\cr}\n &'
ret += r'&\mkcol{'+r'\cr '.join([str(c[4]).replace(',',r'\ ') for c in temp])+'\\cr}\n '
for i in (5,6,7):
ret += r'&\mkcol{'+r'\cr '.join([str(c[i]) for c in temp])+'\\cr}\n &'
ret += r'&\mkcol{'+r'\cr '.join([ko_de(c[8]) for c in temp])+'\\cr}\n &&'
ret += '%graph stuff here\n '
ret += r'&\cr'+'\n '
return ret
///
}}}
{{{id=65|
factor(145)
///
5 * 29
}}}
{{{id=16|
get_iso_str = lambda n: '%s isogeny class'%n+('es' if n>1 else '')
def hack_cmp(left, right):
if left.norm() == right.norm():
return -cmp(left.integral_basis()[1][0],right.integral_basis()[1][0])
return cmp(left.norm(),right.norm())
sage.rings.number_field.number_field_ideal.NumberFieldFractionalIdeal.__cmp__ = hack_cmp
def compiler(bound):
file = open('table.tex','w')
file.write(r"""\documentclass[letterpaper]{article}
\usepackage{/Users/sharaba/Desktop/pdfstuff/table1}
\usepackage[margin=.5in,landscape]{geometry}
\begin{document}
""")
lb = 0
thing = True
for n in range(bound):
t=db('select distinct a_lbl,cond from sqrt5 WHERE N=%s ORDER BY N,c_lbl,R,V,U'%n)
for cond in t:
lb += 2
t2 = list(db('select distinct R from sqrt5 WHERE a_lbl="%s" ORDER BY N,c_lbl,R,V,U'%str(cond[0])))
num_iso = len(t2)
for i,iso in enumerate(t2):
temp = list(db('select b_lbl,weq,rank,T,s,ordD,ordj,c_p,K from sqrt5 WHERE a_lbl="%s" and R=%s ORDER BY N,c_lbl,R,V,U'%(str(cond[0]),str(iso[0]))))
lb += len(temp)
fac = r'\cdot '.join([str(Prime(p))+('^{'+str(e)+'}' if e > 1 else '') for p,e in K.ideal(str(cond[1])).factor()])
if lb > 42:
file.write('\\endlevel\n }\n \\tablepage\n \\def\\tablebody{\n ')
file.write(' \\newlevel{%s}{%s}{%s}\n '%(str(cond[0]),fac,get_iso_str(num_iso)))
lb = 2+len(temp)
elif i == 0:
if thing:
file.write(' \\def\\tablebody{\n \\newlevel{%s}{%s}{%s}\n '%(str(cond[0]),fac,get_iso_str(num_iso)))
thing = False
else:
file.write('\\endlevel\n \\newlevel{%s}{%s}{%s}\n '%(str(cond[0]),fac,get_iso_str(num_iso)))
else:
file.write('\\classgap\n ')
file.write(row(temp))
file.write(r'''\endlevel}
\tablepage
\end{document}''')
file.close()
os.system('pdflatex table.tex < /dev/null 1>/dev/null')
///
}}}
{{{id=70|
db.N1kU.columns()
///
[u'K', u'ordD', u'b_lbl', u'L', u'rank', u'N', u'c_p', u'cond', u'T', u'omega', u'ordj', u's', u'weq', u'real1', u'found', u'real2', u'adj', u'a_lbl', u'adj_order', u'remove', u'a_p', u'R', u'U', u'V', u'c_lbl', u'd_lbl']
}}}
{{{id=77|
compiler(500)
///
}}}
{{{id=28|
compiler(500)
///
}}}
{{{id=26|
compiler(2000)
///
}}}
{{{id=19|
for i,c in enumerate(db('select weq1,weq2 from N1k where N=45')):
if i < 9:
E = EllipticCurve(K,eval(c[0]))
else:
F = EllipticCurve(K,eval(c[0]))
print E.is_isomorphic(F)
///
False
}}}
{{{id=21|
canonical_model(E)
///
Elliptic Curve defined by y^2 + x*y + (a+1)*y = x^3 + a*x^2 + (-4976733*a-3075797)*x + (-6393196918*a-3951212998) over Number Field in a with defining polynomial x^2 - x - 1
}}}
{{{id=17|
E = EllipticCurve(K,[1,1,1,-80,242])
///
}}}
{{{id=15|
E.conductor().norm()
///
45
}}}
{{{id=7|
for s in strings: print s
///
\mkcol{\text{b1}\cr \text{b2}\cr \text{b3}\cr \text{b4}\cr \text{b5}\cr \text{b6}}
}}}
{{{id=4|
for c in temp: print c[5]
///
[1,a+1,a+1,-250*a-165,2099*a+1308]
[a+1,-a+1,a+1,-2*a,-a]
[a+1,-a+1,a+1,-2*a-5,1]
[a+1,-a+1,a+1,3*a-15,14*a-26]
[a+1,-a+1,a+1,-47*a,-67*a-159]
[a+1,-a+1,a+1,133*a-190,851*a-1361]
}}}
{{{id=72|
temp=db('select a_lbl,b_lbl,weq,R,V,U from sqrt5 ORDER BY N,c_lbl,R,V,U')
///
}}}
{{{id=75|
temp[1]
///
(u'31a', u'a5', u'[1,-a-1,a,-30*a-45,-111*a-117]', 61, 1.6096512410167698, 350)
}}}
{{{id=76|
db.sqrt5.find_one()
///
{u'ordD': u'6', u'rank': 1, u'cond': u'32', u'a_lbl': u'1024a', u'ordj': u'0', u'weq': u'[0,-1,0,a-2,-a+2]', u'adj': u'matrix(4,[0,2,2,2,2,0,0,0,2,0,0,0,2,0,0,0])', u'K': u'III', u'b_lbl': u'b2', u'L': 1.4747956633999999, u'N': 1024, u'c_p': u'2', u'R': 874, u'U': 139, u'T': 4, u'V': 34.762695501364732, u'omega': 34.762695501364732, u'c_lbl': u'a', u's': u'+,+', u'real1': 5.0657356932128677, u'found': u'NA', u'real2': 6.862319237843419}
}}}
{{{id=73|
for r in temp:
print r[0], r[1], r[2], r[3], r[4], r[5]
///
WARNING: Output truncated!
full_output.txt
31a a1 [1,-a-1,a,0,0] 61 0.0194141433894 357
31a a2 [a+1,-a-1,a,15*a-27,-40*a+64] 61 0.0388282867788 1203
31a a3 [a,-1,a,1786*a-2891,-44002*a+71196] 61 0.0776565735575 892
31a a4 [1,-a-1,a,-40*a-30,-130*a-76] 61 0.155313147115 349
31a a5 [1,-a-1,a,-30*a-45,-111*a-117] 61 0.62125258846 350
31a a6 [a+1,a+1,a+1,-32196*a-19898,-3371682*a-2083814] 61 0.62125258846 1610
31b a1 [1,a+1,a,a,0] 55 0.0194141433894 767
31b a2 [a,-1,a+1,-17*a-11,39*a+24] 55 0.0388282867788 897
31b a3 [a+1,-a-1,a+1,-1788*a-1105,44001*a+27194] 55 0.0776565735575 1206
31b a4 [1,a+1,a,41*a-70,170*a-276] 55 0.155313147115 765
31b a5 [1,a+1,a,31*a-75,141*a-303] 55 0.62125258846 761
31b a6 [a,a,a+1,32197*a-52096,3319586*a-5371204] 55 0.62125258846 1122
36a a1 [a+1,a,a,0,0] 271 0.0225735561997 1552
36a a2 [a+1,a,a,-10*a-10,10*a+10] 271 0.0225735561997 1546
36a a3 [a+1,a,a,-165*a-165,-1683*a-1221] 271 0.564338904993 1544
36a a4 [a+1,a,a,-5*a-5,-51*a-37] 271 0.564338904993 1548
41a a1 [0,a-1,a+1,0,-a] 215 0.0216165371929 229
41a a2 [0,a-1,a+1,-10*a-30,-32*a-82] 215 1.05921032245 225
41b a1 [0,-a,a,0,0] 217 0.0216165371929 59
41b a2 [0,-a,a,10*a-40,31*a-113] 217 1.05921032245 58
45a a1 [1,1,1,-80,242] 151 0.0318603018896 653
45a a2 [1,1,1,-5,2] 151 0.0318603018896 656
45a a3 [1,1,1,0,0] 151 0.0318603018896 659
45a a4 [1,1,1,-10,-10] 151 0.127441207558 655
45a a5 [1,1,1,-135,-660] 151 0.509764830233 651
45a a6 [1,1,1,35,-28] 151 0.509764830233 663
45a a7 [1,1,1,-2160,-39540] 151 2.03905932093 650
45a a8 [1,1,1,-110,-880] 151 2.03905932093 652
45a a9 [1,-a+1,a,4976732*a-8052529,6393196917*a-10344409915] 151 8.15623728373 500
45a a10 [1,a,a+1,-4976733*a-3075797,-6393196918*a-3951212998] 151 8.15623728373 729
49a a1 [0,-a+1,1,1,0] 724 0.0382611020547 131
49a a2 [0,-a+1,1,-30*a-29,-102*a-84] 724 0.956527551366 129
55a a1 [1,a,1,a-1,0] 426 0.0251672670109 708
55a a2 [1,a,1,6*a-11,-10*a+16] 426 0.0251672670109 704
55a a3 [a+1,-1,1,698*a-1131,-10856*a+17565] 426 0.0503345340218 1284
55a a4 [a,-a+1,a,-96*a-60,537*a+333] 426 0.0503345340218 938
55a a5 [1,a,1,21*a-46,54*a-112] 426 0.226505403098 702
55a a6 [1,a,1,26*a-41,70*a-114] 426 0.226505403098 709
55a a7 [1,a,1,-54*a+54,374*a-572] 426 0.453010806197 700
55a a8 [a,-a+1,a,-601*a-405,-8817*a-5400] 426 0.453010806197 937
55b a1 [1,-a+1,1,-a,0] 418 0.0251672670109 485
55b a2 [1,-a+1,1,-6*a-5,10*a+6] 418 0.0251672670109 482
55b a3 [a,-a,1,-699*a-432,10856*a+6709] 418 0.0503345340218 825
55b a4 [a+1,0,a+1,94*a-156,-538*a+870] 418 0.0503345340218 1419
55b a5 [1,-a+1,1,-21*a-25,-54*a-58] 418 0.226505403098 480
55b a6 [1,-a+1,1,-26*a-15,-70*a-44] 418 0.226505403098 481
55b a7 [1,-a+1,1,54*a,-374*a-198] 418 0.453010806197 488
55b a8 [a+1,0,a+1,599*a-1006,8816*a-14217] 418 0.453010806197 1416
64a a1 [0,a-1,0,-a,0] 751 0.0260697190491 210
64a a2 [0,-a,0,11*a-16,-17*a+27] 751 0.0521394380982 51
64a a3 [0,a-1,0,-11*a-5,17*a+10] 751 0.0521394380982 202
64a a4 [0,a-1,0,-6*a-5,-11*a-7] 751 0.104278876196 203
64a a5 [0,-a,0,106*a-171,647*a-1050] 751 0.417115504786 49
64a a6 [0,a-1,0,-106*a-65,-647*a-403] 751 0.417115504786 199
71a a1 [a+1,a-1,1,0,0] 478 0.0223332061013 1441
71a a2 [a+1,a-1,1,-5*a,2*a] 478 0.0446664122026 1436
71a a3 [a+1,a-1,1,15*a-20,22*a-34] 478 0.200998854911 1442
71a a4 [a+1,a-1,1,5*a-25,12*a-46] 478 0.401997709823 1434
71b a1 [a,a+1,a,a,0] 482 0.0223332061013 1167
...
1984a a3 [0,-1,0,-383*a-300,-4763*a-2728] 884 0.35045131967 103
1984a a4 [0,a+1,0,216*a-352,1856*a-3024] 884 0.700902639341 461
1984a b1 [0,a,0,-a+1,0] 1057 0.0444084162365 412
1984a b2 [0,a,0,4*a-4,4] 1057 0.088816832473 417
1984a c1 [0,0,0,-4*a-3,-4*a-2] 1099 0.0688594600414 255
1984a c2 [0,0,0,41*a-63,-144*a+230] 1099 0.137718920083 277
1984a d1 [0,a-1,0,-2*a-41,81*a-27] 1110 0.148217534853 307
1984a d2 [0,a-1,0,-2*a-1,a-3] 1110 0.148217534853 316
1984a e1 [0,-1,0,-2*a-1,2*a+2] 1181 0.0339743098587 128
1984a e2 [0,-1,0,3*a-11,-9*a+17] 1181 0.0679486197174 124
1984a e3 [0,a+1,0,641*a-1045,-9345*a+15100] 1181 0.135897239435 457
1984a e4 [0,-1,0,23*a-11,3*a-11] 1181 0.27179447887 152
1984a f1 [0,-a-1,0,337*a-557,-3687*a+5968] 1233 0.126343628618 19
1984a f2 [0,1,0,-33*a-27,-139*a-81] 1233 0.126343628618 341
1984a g1 [0,-1,0,-4*a-4,8*a+4] 1237 0.113865411071 121
1984a g2 [0,a+1,0,106*a-169,633*a-1021] 1237 0.227730822142 468
1984b a1 [0,-1,0,3*a-3,-a+1] 910 0.0876128299176 142
1984b a2 [0,-1,0,23*a-43,67*a-107] 910 0.175225659835 125
1984b a3 [0,-1,0,383*a-683,4763*a-7491] 910 0.35045131967 107
1984b a4 [0,-a-1,0,-214*a-137,-1641*a-1031] 910 0.700902639341 4
1984b b1 [0,-a+1,0,a,0] 1049 0.0444084162365 209
1984b b2 [0,-a+1,0,-4*a,4] 1049 0.088816832473 197
1984b c1 [0,0,0,4*a-7,4*a-6] 1096 0.0688594600414 270
1984b c2 [0,0,0,-41*a-22,144*a+86] 1096 0.137718920083 237
1984b d1 [0,-a,0,2*a-43,-81*a+54] 1108 0.148217534853 74
1984b d2 [0,-a,0,2*a-3,-a-2] 1108 0.148217534853 87
1984b e1 [0,-1,0,2*a-3,-2*a+4] 1193 0.0339743098587 141
1984b e2 [0,-1,0,-3*a-8,9*a+8] 1193 0.0679486197174 120
1984b e3 [0,-a-1,0,-639*a-405,9985*a+6160] 1193 0.135897239435 3
1984b e4 [0,-1,0,-23*a+12,-3*a-8] 1193 0.27179447887 117
1984b f1 [0,a+1,0,-335*a-221,3351*a+2060] 1235 0.126343628618 436
1984b f2 [0,1,0,33*a-60,139*a-220] 1235 0.126343628618 351
1984b g1 [0,-1,0,4*a-8,-8*a+12] 1239 0.113865411071 133
1984b g2 [0,-a-1,0,-104*a-64,-528*a-324] 1239 0.227730822142 7
1984b h1 [a+1,a+1,a,-271*a-323,-3796*a-3115] 1886 0.81516544175 2038
1984b h2 [a,a-1,0,-257364*a-159063,-75257037*a-46511406] 1886 1.63033088349 1337
1991a a1 [1,-a+1,0,-a+1,0] 556 0.0622706900783 702
1991a a2 [1,-a+1,0,4*a-4,5*a-9] 556 0.124541380157 703
1991b a1 [1,a,0,a,0] 540 0.0622706900783 969
1991b a2 [1,a,0,-4*a,-5*a-4] 540 0.124541380157 964
1991c a1 [0,-a-1,a,6*a-8,-8*a+12] 136 0.0334880145401 57
1991c b1 [a,-1,1,-a-1,-1] 624 0.110918019391 1208
1991c b2 [a,-1,1,9*a-16,14*a-25] 624 0.221836038782 1210
1991c c1 [0,-1,a,-a,a-1] 1904 0.0845258993907 170
1991c c2 [0,-1,a,9*a-80,42*a-252] 1904 0.760733094516 165
1991d a1 [0,a+1,a+1,-4*a-3,2*a+1] 135 0.0334880145401 492
1991d b1 [a+1,-a-1,1,-2,-1] 652 0.110918019391 1579
1991d b2 [a+1,-a-1,1,-10*a-7,-14*a-11] 652 0.221836038782 1573
1991d c1 [0,-1,a+1,a-1,-2*a] 1906 0.0845258993907 184
1991d c2 [0,-1,a+1,-9*a-71,-43*a-210] 1906 0.760733094516 178
1996a a1 [a+1,a+1,0,2*a-4,-4*a-8] 282 0.434749015143 2012
1996b a1 [a,a,1,a-6,-a-7] 281 0.434749015143 1470
1999a a1 [1,-a+1,0,-5*a-2,6*a+4] 550 0.0295476815357 697
1999a a2 [a+1,0,a,-a+4,23*a-32] 550 0.265929133821 1818
1999a b1 [1,a-1,a+1,-8*a-5,-15*a-9] 1790 0.0605301874797 854
1999a b2 [a+1,a,0,27*a-42,-84*a+133] 1790 0.121060374959 1958
1999b a1 [1,a,0,5*a-7,-6*a+10] 532 0.0295476815357 968
1999b a2 [a,-a+1,a+1,-a+4,-24*a-9] 532 0.265929133821 1275
1999b b1 [1,-a,a,7*a-12,14*a-23] 1788 0.0605301874797 607
1999b b2 [a,a-1,1,-26*a-17,67*a+40] 1788 0.121060374959 1355
}}}
{{{id=74|
///
}}}