Attachment 'lp_teichmuller.sage'
Download 1 # code to compute the series representation
2
3 E = EllipticCurve('11a1')
4
5 n=10; prec=10
6 Lserie = E.padic_lseries(5)
7 alp = Lserie.alpha(prec)
8 MSP = E.modular_symbol()
9 MSM = E.modular_symbol(sign=-1)
10
11 p = Lserie._p
12 bounds = Lserie._prec_bounds(n,prec)
13 padic_prec = max(bounds[1:]) + 5
14 res_series_prec=min(p**(n-1),prec)
15
16 K = QQ
17 gamma = K(1+p)
18 R = PowerSeriesRing(K,'T',res_series_prec)
19 T = R(R.gen(),res_series_prec)
20 L = R(0) #going to be the L-series eventually
21 one_plus_T_factor = R(1)
22 gamma_power = K(1)
23 teich = Lserie.teichmuller(padic_prec)
24 pt = 2 # the power of Teichmuller
25 p_power = p**(n-1)
26
27 for j in range(p_power):
28 s = K(0)
29 for a in range(1,p):
30 b = teich[a]*gamma_power
31 if pt & 2 == 0:
32 s += teich[a]^pt * ( (1/alp)^n * MSP((b)/(p^n) ) -
33 (1/alp)^(n+1) * MSP((b)/(p^(n-1))) ) # mu(b + p^nZ_p)
34 else:
35 s += teich[a]^pt * ( (1/alp)^n * MSM((b)/(p^n) ) -
36 (1/alp)^(n+1) * MSM((b)/(p^(n-1))) )
37 L += s * one_plus_T_factor
38 one_plus_T_factor *= (1+T)
39 gamma_power *= gamma
40
41 print 'L before p-adic approx is %s' % L
42
43 K = Qp(p,padic_prec,print_mode='series')
44 R = PowerSeriesRing(K,'T',res_series_prec)
45 Lprime = R(L,res_series_prec)
46 print 'Lprime is %s' % Lprime
47 aj = Lprime.list()
48 if len(aj) > 0:
49 aj = [aj[0].add_bigoh(padic_prec-2)] +
50 [aj[j].add_bigoh(bounds[j]) for j in range(1,len(aj))]
51 L = R(aj,res_series_prec )
52 if pt & 2 == 0:
53 L = L / Lserie._E.real_components()
54 else:
55 L = L
56
57 print 'The 5-adic L-function of 11A1 twisted by the (pt)-th power of
58 the Teichmuller character is %s ' % L
Attached Files
To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.You are not allowed to attach a file to this page.