You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# not explicitly cached here since .as_EllipticCurveIsogeny() and EllipticCurveIsogeny.dual() already cache their results
1075
1108
defdual(self):
1076
1109
r"""
1077
1110
Return the dual of this square-root Vélu
@@ -1082,6 +1115,10 @@ def dual(self):
1082
1115
The dual is computed by :class:`EllipticCurveIsogeny`,
1083
1116
hence it does not benefit from the square-root Vélu speedup.
1084
1117
1118
+
ALGORITHM: In the separable case, similar to :meth:`EllipticCurveIsogeny.dual`.
1119
+
In the inseparable case, converts to an :class:`EllipticCurveIsogeny` using
1120
+
:meth:`as_EllipticCurveIsogeny`, then runs :meth:`EllipticCurveIsogeny.dual`.
1121
+
1085
1122
EXAMPLES::
1086
1123
1087
1124
sage: E = EllipticCurve(GF(101^2), [1, 1, 1, 1, 1])
@@ -1091,13 +1128,34 @@ def dual(self):
1091
1128
From: Elliptic Curve defined by y^2 + x*y + y = x^3 + x^2 + x + 1 over Finite Field in z2 of size 101^2
1092
1129
To: Elliptic Curve defined by y^2 = x^3 + 39*x + 40 over Finite Field in z2 of size 101^2
1093
1130
sage: phi.dual()
1094
-
Isogeny of degree 11 from Elliptic Curve defined by y^2 = x^3 + 39*x + 40 over Finite Field in z2 of size 101^2 to Elliptic Curve defined by y^2 + x*y + y = x^3 + x^2 + x + 1 over Finite Field in z2 of size 101^2
1131
+
Isogeny of degree 11
1132
+
from Elliptic Curve defined by y^2 = x^3 + 39*x + 40 over Finite Field in z2 of size 101^2
1133
+
to Elliptic Curve defined by y^2 + x*y + y = x^3 + x^2 + x + 1 over Finite Field in z2 of size 101^2
0 commit comments