|
47 | 47 | sage: E = EllipticCurve('43a'); P = E.heegner_point(-7)
|
48 | 48 | sage: P.x_poly_exact()
|
49 | 49 | x
|
50 |
| - sage: P.point_exact() |
51 |
| - (0 : 0 : 1) |
| 50 | + sage: z = P.point_exact(); z == E(0,0,1) or -z == E(0,0,1) |
| 51 | + True |
52 | 52 |
|
53 | 53 | sage: E = EllipticCurve('997a')
|
54 | 54 | sage: E.rank()
|
|
58 | 58 | sage: P = E.heegner_point(-19)
|
59 | 59 | sage: P.x_poly_exact()
|
60 | 60 | x - 141/49
|
61 |
| - sage: P.point_exact() |
62 |
| - (141/49 : -162/343 : 1) |
| 61 | + sage: z = P.point_exact(); z == E(141/49, -162/343, 1) or -z == E(141/49, -162/343, 1) |
| 62 | + True |
63 | 63 |
|
64 | 64 | Here we find that the Heegner point generates a subgroup of index 3::
|
65 | 65 |
|
66 | 66 | sage: E = EllipticCurve('92b1')
|
67 | 67 | sage: E.heegner_discriminants_list(1)
|
68 | 68 | [-7]
|
69 |
| - sage: P = E.heegner_point(-7); z = P.point_exact(); z |
70 |
| - (0 : 1 : 1) |
| 69 | + sage: P = E.heegner_point(-7) |
| 70 | + sage: z = P.point_exact(); z == E(0, 1, 1) or -z == E(0, 1, 1) |
| 71 | + True |
71 | 72 | sage: E.regulator()
|
72 | 73 | 0.0498083972980648
|
73 | 74 | sage: z.height()
|
@@ -6421,8 +6422,8 @@ def ell_heegner_point(self, D, c=ZZ(1), f=None, check=True):
|
6421 | 6422 | [-7, -11, -40, -47, -67, -71, -83, -84, -95, -104]
|
6422 | 6423 | sage: P = E.heegner_point(-7); P # indirect doctest
|
6423 | 6424 | Heegner point of discriminant -7 on elliptic curve of conductor 37
|
6424 |
| - sage: P.point_exact() |
6425 |
| - (0 : 0 : 1) |
| 6425 | + sage: z = P.point_exact(); z == E(0, 0, 1) or -z == E(0, 0, 1) |
| 6426 | + True |
6426 | 6427 | sage: P.curve()
|
6427 | 6428 | Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field
|
6428 | 6429 | sage: P = E.heegner_point(-40).point_exact(); P
|
@@ -7139,14 +7140,15 @@ def heegner_sha_an(self, D, prec=53):
|
7139 | 7140 | 2.3 in [GZ1986]_ page 311, then that conjecture is
|
7140 | 7141 | false, as the following example shows::
|
7141 | 7142 |
|
7142 |
| - sage: E = EllipticCurve('65a') # long time |
7143 |
| - sage: E.heegner_sha_an(-56) # long time |
| 7143 | + sage: # long time |
| 7144 | + sage: E = EllipticCurve('65a') |
| 7145 | + sage: E.heegner_sha_an(-56) |
7144 | 7146 | 1.00000000000000
|
7145 |
| - sage: E.torsion_order() # long time |
| 7147 | + sage: E.torsion_order() |
7146 | 7148 | 2
|
7147 |
| - sage: E.tamagawa_product() # long time |
| 7149 | + sage: E.tamagawa_product() |
7148 | 7150 | 1
|
7149 |
| - sage: E.quadratic_twist(-56).rank() # long time |
| 7151 | + sage: E.quadratic_twist(-56).rank() |
7150 | 7152 | 2
|
7151 | 7153 | """
|
7152 | 7154 | # check conditions, then return from cache if possible.
|
|
0 commit comments