Tomemos la curva en el artículo citado por Allan MacLeod en otra respuesta (la curva que aparece en la Buhler-Bruto-Zagier de papel), y calcular todos los invariantes que participan en el B-SD conjetura, el uso de la Salvia (de hecho, estoy usando Sage online, versión 5.2, para hacer esto... que puede ser lento a veces, pero por lo general funciona bien):
La curva en cuestión es dado por $E : y^2 = 4x^3-28x+25$. Esto no es un "estándar" de la forma más, así que primero transformar a $E : Y^2 = X^3 - 28X/4 + 25/4$ primera (donde$X=x$$y=2Y$). Definimos la curva de uso de la Salvia por
E = EllipticCurve([0,0,0,-28/4,25/4])
Si no te gusta esta curva, debido a los coeficientes racionales, puede borrar denominadores con una mayor transformación, o encontrar un modelo mínimo el uso de la Salvia:
E. minimal_model()
Curva elíptica definida por y^2 + y = x^3 - 7*x + 6 más Racional de Campo
Vamos a trabajar con el modelo de $E: y^2 + y = x^3 - 7x + 6$ en lugar, por lo que nos escriba
E=E. minimal_model()
Buhler-Bruto-Zagier mencionar que esta curva ha conductor de $5077$...
E. conductor (el)
5077
que verifica este hecho. Ok, eso es genial, tenemos la curva a la derecha. Vamos a empezar por calcular el rango, generadores, y su regulador:
E. rank()
3
E. gens()
[(-2 : 3 : 1), (-1 : 3 : 1), (0 : 2 : 1)]
R = E. regulador()
R
0.417143558758384
El número de puntos de torsión en $E$ también figuras en el B-SD fórmula, así que vamos a calcular la torsión del subgrupo:
E. torsion_subgroup()
Torsión Subgrupo isomorfo a Trivial grupo asociado a la Curva Elíptica definida por y^2 + y = x^3 - 7*x + 6 más Racional de Campo
Ahora calculamos $\Omega$, el doble del periodo real de $E$ (necesitamos dos veces el periodo real debido a $E(\mathbb{R})$ no está conectado):
2*E. period_lattice().real_period()
4.15168798308693
Necesitamos dos más refinado invariantes. El Tamagawa números de $c_p$ se calculan en primer lugar:
E. tamagawa_numbers()
1
Tenga en cuenta que nosotros también podrían haber utilizado "E. tamagawa_product()" en su lugar. Y entonces, para calcular Sha... no puedo. Ver este Sabio página de comandos para intentar calcular Sha, pero estos no logran cuando el rango es $>2$. Lo mejor que podemos hacer (como en el Buhler-Bruto-Zagier papel) es demostrar que la parte 2 es trivial:
S = E. sha()
S. two_selmer_bound()
0
lo que significa que, efectivamente, las dos parte es trivial. El uso de
E. heegner_sha_an(-7)
1.00000000000000
tenemos más evidencia de que el Sha es trivial.
Es la hora de calcular el Hasse-Weil $L$-función de $E/\mathbb{Q}$ y ver si todo está de acuerdo, como se supone que.
L = E. lseries().dokchitser()
Esto devuelve el Hasse-Weil L-función de E, calculada utilizando un método de Tim Dokchitser. Vamos a calcular el $L(E,1)$.
L(1)
0.000000000000000
Ahora la primera derivada:
L. derivados(1,1)
-5.63436295355417 e-22
Ahora la segunda derivada...
L. derivados(1,2)
2.08600476044446 e-21
Y la tercera...
L. derivados(1,3)
10.3910994007158
Ese es el primer "no-cero" valor " (el resto de los valores, donde muy, muy cerca de cero... pero no hemos de probar que tenían cero!!!). Ahora, B-SD dice que:
$$\frac{L^{(3)}(E,1)}{3!} = \frac{ |\text{Sha}| \cdot \Omega \cdot R \cdot \text{Tam} }{ |\text{torsion}|^2}$$
El lado izquierdo de la B-SD fórmula es (numérica):
L. derivados(1,3)/6
1.73184990011930
mientras que el lado derecho, asumiendo que el Sha es trivial es:
(1 * 4.15168798308693 * 0.417143558758384 * 1) / 1^2
1.73184990011930
de modo que ambos lados de la ecuación son iguales! (hasta el da de precisión...).