@@ -171,11 +171,7 @@ def _isogeny_determine_algorithm(E, kernel):
171
171
172
172
raise ValueError ("invalid parameters to EllipticCurveIsogeny constructor" )
173
173
174
-
175
- from sage .misc .superseded import deprecated_function_alias
176
- isogeny_determine_algorithm = deprecated_function_alias (33619 , _isogeny_determine_algorithm )
177
-
178
- def isogeny_codomain_from_kernel (E , kernel , degree = None ):
174
+ def isogeny_codomain_from_kernel (E , kernel ):
179
175
r"""
180
176
Compute the isogeny codomain given a kernel.
181
177
@@ -210,28 +206,13 @@ def isogeny_codomain_from_kernel(E, kernel, degree=None):
210
206
Elliptic Curve defined by y^2 + x*y + y = x^3 + 5*x + 2
211
207
over Finite Field of size 7
212
208
209
+ sage: # needs sage.rings.finite_rings
213
210
sage: E = EllipticCurve(GF(19), [1,2,3,4,5])
214
211
sage: kernel_list = [E((15,10)), E((10,3)), E((6,5))]
215
212
sage: isogeny_codomain_from_kernel(E, kernel_list)
216
213
Elliptic Curve defined by y^2 + x*y + 3*y = x^3 + 2*x^2 + 3*x + 15
217
214
over Finite Field of size 19
218
-
219
- TESTS:
220
-
221
- Test deprecation warning for obsolete argument::
222
-
223
- sage: isogeny_codomain_from_kernel(E, kernel_list, degree=4)
224
- doctest:warning
225
- ...
226
- DeprecationWarning: The "degree" argument to isogeny_codomain_from_kernel() does nothing and will be removed.
227
- ...
228
- Elliptic Curve defined by y^2 + x*y + 3*y = x^3 + 2*x^2 + 3*x + 15
229
- over Finite Field of size 19
230
215
"""
231
- if degree is not None :
232
- from sage .misc .superseded import deprecation
233
- deprecation (33619 , 'The "degree" argument to isogeny_codomain_from_kernel() does nothing and will be removed.' )
234
-
235
216
algorithm = _isogeny_determine_algorithm (E , kernel )
236
217
237
218
if algorithm == 'velu' :
@@ -3456,47 +3437,6 @@ def compute_isogeny_stark(E1, E2, ell):
3456
3437
from sage .misc .superseded import deprecated_function_alias
3457
3438
compute_isogeny_starks = deprecated_function_alias (34871 , compute_isogeny_stark )
3458
3439
3459
- def split_kernel_polynomial (poly ):
3460
- r"""
3461
- Obsolete internal helper function formerly used by
3462
- :func:`compute_isogeny_kernel_polynomial`.
3463
-
3464
- Use
3465
- :meth:`~sage.rings.polynomial.polynomial_element.Polynomial.radical`
3466
- instead.
3467
-
3468
- INPUT:
3469
-
3470
- - ``poly`` -- a nonzero univariate polynomial
3471
-
3472
- OUTPUT:
3473
-
3474
- The maximum separable divisor of ``poly``. If the input is a full
3475
- kernel polynomial where the roots which are `x`-coordinates of
3476
- points of order greater than 2 have multiplicity 1, the output
3477
- will be a polynomial with the same roots, all of multiplicity 1.
3478
-
3479
- EXAMPLES:
3480
-
3481
- Check that this behaves identically to ``.radical()``::
3482
-
3483
- sage: # needs sage.rings.finite_rings
3484
- sage: from sage.schemes.elliptic_curves.ell_curve_isogeny import split_kernel_polynomial
3485
- sage: q = next_prime(randrange(3,10^3))
3486
- sage: e = randrange(1,5)
3487
- sage: R = GF(q^e,'a')['x']
3488
- sage: f = R.random_element(randrange(10,100)).monic()
3489
- sage: split_kernel_polynomial(f) == f.radical()
3490
- doctest:warning ...
3491
- DeprecationWarning: ...
3492
- True
3493
- """
3494
- from sage .misc .superseded import deprecation
3495
- deprecation (33619 , 'The split_kernel_polynomial() function is obsolete. '
3496
- 'Use .radical() instead.' )
3497
- from sage .misc .misc_c import prod
3498
- return prod ([p for p ,e in poly .squarefree_decomposition ()])
3499
-
3500
3440
def compute_isogeny_kernel_polynomial (E1 , E2 , ell , algorithm = "stark" ):
3501
3441
r"""
3502
3442
Return the kernel polynomial of an isogeny of degree ``ell``
0 commit comments