Skip to content

Commit 6493ad1

Browse files
committed
add explicit formulas to documentation of WeierstrassIsomorphism
1 parent 6a4667b commit 6493ad1

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

src/sage/schemes/elliptic_curves/weierstrass_morphism.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -372,6 +372,24 @@ def _isomorphisms(E, F):
372372
class WeierstrassIsomorphism(EllipticCurveHom, baseWI):
373373
r"""
374374
Class representing a Weierstrass isomorphism between two elliptic curves.
375+
376+
Explicitly, the isomorphism defined by `(u,r,s,t)` maps a point `(x,y)`
377+
to the point
378+
379+
.. MATH::
380+
381+
((x-r) / u^2, \; (y - s(x-r) - t) / u^3) .
382+
383+
If the domain `E` has Weierstrass coefficients `[a_1,a_2,a_3,a_4,a_6]`,
384+
the codomain `F` is given by
385+
386+
.. MATH::
387+
388+
a_1' &= (a_1 + 2s) / u \\
389+
a_2' &= (a_2 - a_1s + 3r - s^2) / u^2 \\
390+
a_3' &= (a_3 + a_1r + 2t) / u^3 \\
391+
a_4' &= (a_4 + 2a_2r - a_1(rs+t) - a_3s + 3r^2 - 2st) / u^4 \\
392+
a_6' &= (a_6 - a_1rt + a_2r^2 - a_3t + a_4r + r^3 - t^2) / u^6 .
375393
"""
376394
def __init__(self, E=None, urst=None, F=None):
377395
r"""

0 commit comments

Comments
 (0)