- Timestamp:
- 06/01/07 17:48:43 (6 years ago)
- Branch:
- default
- Parents:
- 4787:5c83249decc4 (diff), 4794:26f9e712ff3d (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - Files:
-
- 2 edited
-
sage/schemes/elliptic_curves/padic_lseries.py (modified) (10 diffs)
-
sage/schemes/elliptic_curves/padic_lseries.py (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
sage/schemes/elliptic_curves/padic_lseries.py
r4784 r4795 507 507 508 508 class pAdicLseriesSupersingular(pAdicLseries): 509 def series(self, n= 2, prec=5):509 def series(self, n=3, prec=5): 510 510 r""" 511 511 Return the $n$-th approximation to the $p$-adic $L$-series as a … … 513 513 $\gamma=1+p$ as a generator of $1+p\mathbb{Z}_p$). Each 514 514 coefficient is a $p$-adic number whose precision is probably 515 {\em not} correct. 516 517 WARNING: ** The output precision is not as high as claimed! ** 515 correct. 518 516 519 517 INPUT: 520 n -- (default: 2) a positive integer518 n -- (default: 3) a positive integer 521 519 prec -- (default: 5) maxima number of terms of the series 522 520 to compute; to compute as many as possible just … … 537 535 (O(3^1))*alpha + (O(3^2)) + ((O(3^-1))*alpha + (2*3^-1 + O(3^0)))*T + ((O(3^-1))*alpha + (2*3^-1 + O(3^0)))*T^2 + ((O(3^-2))*alpha + (O(3^-1)))*T^3 + ((O(3^-1))*alpha + (3^-1 + O(3^0)))*T^4 + O(T^5) 538 536 sage: L.alpha(2).parent() 539 Univariate Quotient Polynomial Ring in alpha over 3-adic Field with capped relative precision 2 with modulus (1 + O(3^2))*x^2 + (3 + O(3^3))*x + (3 + O(3^3)) 537 Univariate Quotient Polynomial Ring in alpha over 3-adic Field with capped 538 relative precision 2 with modulus (1 + O(3^2))*x^2 + (3 + O(3^3))*x + (3 + O(3^3)) 540 539 """ 541 540 n = ZZ(n) … … 599 598 600 599 601 def Dp_valued_series(self, n= 2, prec=5):600 def Dp_valued_series(self, n=3, prec=5): 602 601 r""" 603 602 Returns a vector of two components which are p-adic power series. … … 612 611 \end{verbatim} 613 612 614 WARNING: ** The output precision is not as high as claimed! ** 613 WARNING: ** Currently the normalisation of the Frobenius is not chosen 614 correctly and hence only mod p the function satisfies the padic BSD ** 615 615 616 616 INPUT: 617 n -- (default: 2) a positive integer617 n -- (default: 3) a positive integer 618 618 prec -- (default: 5) a positive integer 619 619 … … 631 631 R = lps.base_ring().base_ring() # Qp 632 632 QpT , T = PowerSeriesRing(R,'T',prec).objgen() 633 G = sum([R(lps[n][0])*T**n for n in range(0,lps.prec())]) 634 H = sum([R(lps[n][1])*T**n for n in range(0,lps.prec())]) 635 633 G = QpT([lps[n][0] for n in range(0,lps.prec())], prec) 634 H = QpT([lps[n][1] for n in range(0,lps.prec())], prec) 635 #print G,H 636 636 637 # now compute phi 637 phi = self.geometric_frob_on_Dp( p)638 phi = self.geometric_frob_on_Dp() 638 639 phi_omega_0 = phi[0,0] 639 640 phi_omega_1 = phi[1,0] 641 #print phi 640 642 R = phi_omega_0.parent() 641 643 lpv = vector([G + R(E.ap(p))*H - R(p) * phi_omega_0* H , - R(p)*phi_omega_1*H]) # this is L_p 644 #print lpv 642 645 eps = (1-phi)**(-2) 643 646 resu = lpv*eps.transpose() … … 647 650 def geometric_frob_on_Dp(self, prec=20): 648 651 r""" 649 This returns thegeometric Frobenius $\varphi$ on the Diedonne module $D_p(E)$652 This returns a geometric Frobenius $\varphi$ on the Diedonne module $D_p(E)$ 650 653 with respect to the basis $\omega$, the invariant differential and $\eta=x\omega$. 651 654 It satisfies $phi^2 - a_p/p*phi + 1/p = 0$. 655 656 It is not clear what normalisation we use here. 652 657 653 658 EXAMPLES: 654 659 sage: E = EllipticCurve('14a') 655 660 sage: L = E.padic_lseries(5) 656 sage: F= L.geometric_frob_on_Dp(5)657 sage: F661 sage: phi = L.geometric_frob_on_Dp(5) 662 sage: phi 658 663 [ 3 + 4*5 + 3*5^2 + 4*5^3 + O(5^4) 2*5^-1 + 1 + 3*5 + 3*5^3 + O(5^4)] 659 664 [ 2 + 4*5 + 5^2 + 5^4 + O(5^5) 2 + 5^2 + 5^4 + O(5^5)] 660 sage: F^2 - E.ap(5)/5 * F+ 1/5665 sage: phi^2 - E.ap(5)/5 * phi + 1/5 661 666 [O(5^4) O(5^3)] 662 667 [O(5^4) O(5^4)] … … 711 716 712 717 def Dp_valued_height(self,prec=20): 713 """718 r""" 714 719 Returns the canonical $p$-adic height with values in the Dieudonne module $D_p(E)$. 715 720 It is defined to be … … 717 722 where $h_{\eta}$ is made out of the sigma function of Bernardi and 718 723 $h_{\omega}$ is $-log^2$. 724 725 EXAMPLES: 726 sage: E = EllipticCurve('53a') 727 sage: L = E.padic_lseries(5) 728 sage: h = L.Dp_valued_height(7) 729 sage: h(E.gens()[0]) 730 (2*5 + 3*5^2 + 2*5^3 + 5^4 + 3*5^6 + 3*5^7 + O(5^8), 731 4*5^2 + 4*5^3 + 4*5^5 + 4*5^6 + 2*5^7 + 5^8 + O(5^9)) 719 732 """ 720 733 E = self._E … … 755 768 Returns the canonical $p$-adic regulator with values in the Dieudonne module $D_p(E)$ 756 769 as defined by Perrin-Riou using the canonical $p$-adic height. 770 771 EXAMPLES: 772 sage: E = EllipticCurve('43a') 773 sage: L = E.padic_lseries(7) 774 sage: L.Dp_valued_regulator(7) 775 (2*7 + 2*7^2 + 5*7^3 + 7^4 + 7^5 + 4*7^6 + 2*7^7 + O(7^8), 776 2*7^2 + 4*7^3 + 2*7^5 + 3*7^6 + 6*7^7 + O(7^8)) 757 777 """ 758 778 -
sage/schemes/elliptic_curves/padic_lseries.py
r4794 r4795 50 50 51 51 EXAMPLES: 52 A superingular example:53 sage: e = EllipticCurve('37a')54 sage: L = e.padic_lseries(3); L55 3-adic L-series of Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field56 sage: L.series(2)57 ((3^-1 + O(3^2))*alpha + (2*3^-1 + O(3^2)))*T + ((3^-1 + O(3^2))*alpha + (2*3^-1 + O(3^2)))*T^2 + O(T^3)58 59 52 An ordinary example: 60 53 sage: e = EllipticCurve('389a') … … 74 67 sage: L = EllipticCurve('11a').padic_lseries(5) 75 68 sage: L.series(1) 76 5 + 4*5^2 + O(5^3) + O(T)69 5 + O(5^2) + O(T) 77 70 sage: L.series(2) 78 5 + 4*5^2 + 4*5^3 + O(5^4) + O(5^1)*T + O(5^1)*T^2 + O(5^1)*T^3 + O(5^1)*T^4 + O(T^5)71 5 + 4*5^2 + O(5^3) + O(5^0)*T + O(5^0)*T^2 + O(5^0)*T^3 + O(5^0)*T^4 + O(T^5) 79 72 sage: L.series(3) 80 5 + 4*5^2 + 4*5^3 + O(5^ 5) + (4*5 + O(5^2))*T + (5 + O(5^2))*T^2 + (4*5 + O(5^2))*T^3 + (3*5 + O(5^2))*T^4 + O(T^5)73 5 + 4*5^2 + 4*5^3 + O(5^4) + O(5^1)*T + O(5^1)*T^2 + O(5^1)*T^3 + O(5^1)*T^4 + O(T^5) 81 74 """ 82 75 def __init__(self, E, p, normalize): … … 209 202 (1 + O(3^10))*alpha 210 203 sage: alpha^2 - E.ap(3)*alpha + 3 211 0204 (O(3^10))*alpha^2 + (O(3^11))*alpha + (O(3^11)) 212 205 213 206 A reducible prime: … … 533 526 534 527 EXAMPLES: 535 sage: L = EllipticCurve('37a').padic_lseries(3) 536 sage: L.series(4) 537 (O(3^1))*alpha + (O(3^2)) + ((O(3^-1))*alpha + (2*3^-1 + O(3^0)))*T + 538 ((O(3^-1))*alpha + (2*3^-1 + O(3^0)))*T^2 + ((O(3^-2))*alpha + (O(3^-1)))*T^3 + 539 ((O(3^-1))*alpha + (3^-1 + O(3^0)))*T^4 + O(T^5) 528 A superingular example, where we must compute to higher precision to see anything. 529 sage: e = EllipticCurve('37a') 530 sage: L = e.padic_lseries(3); L 531 3-adic L-series of Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field 532 sage: L.series(2) 533 O(T^3) 534 sage: L.series(4) # takes a long time (several seconds) 535 (O(3^1))*alpha + (O(3^2)) + ((O(3^-1))*alpha + (2*3^-1 + O(3^0)))*T + ((O(3^-1))*alpha + (2*3^-1 + O(3^0)))*T^2 + ((O(3^-2))*alpha + (O(3^-1)))*T^3 + ((O(3^-1))*alpha + (3^-1 + O(3^0)))*T^4 + O(T^5) 540 536 sage: L.alpha(2).parent() 541 537 Univariate Quotient Polynomial Ring in alpha over 3-adic Field with capped … … 625 621 sage: E = EllipticCurve('14a') 626 622 sage: L = E.padic_lseries(5) 627 sage: L.Dp_valued_series(4) 628 (4 + 4*5^2 + O(5^4) + (1 + O(5))*T + (4 + O(5))*T^2 + (1 + O(5))*T^3 + (2 + O(5))*T^4 + O(T^5), 629 O(5^4) + O(5^1)*T + O(5^1)*T^2 + O(5^1)*T^3 + (1 + O(5))*T^4 + O(T^5)) 623 sage: L.Dp_valued_series(2) 624 (4 + 4*5^2 + O(5^3), 0) 630 625 """ 631 626 E = self._E
Note: See TracChangeset
for help on using the changeset viewer.
