#12880: Inconsistent domain, codomain and parent in EllipticCurveIsogeny
-------------------------------------+-------------------------------------
Reporter: nthiery | Owner: cremona
Type: defect | Status: needs_review
Priority: minor | Milestone: sage-6.2
Component: elliptic curves | Resolution:
Keywords: | Merged in:
Authors: Sébastien Besnier | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/sbesnier/ticket/12880 | b486f244b98a16b144cd45399eee3112ed5f824b
Dependencies: #11474 | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by pbruin):
Replying to [comment:10 sbesnier]:
> I've also make some modifications in order to make the composition
working (essentially, remove the overload of `_composition_').
This looks good to me overall. The main thing I am wondering about is if
it wouldn't make sense to keep the current version of `_composition_`
(raise a `NotImplementedError`) until we have real composition of
isogenies. What I mean is that with your change, we just get a "formal"
composition of two isogenies. Although this may be good enough for some
applications, what we really want is to compute the actual polynomials
defining the composed isogeny. From that perspective I wouldn't say that
removing the method "makes composition work".
The question is whether it is worth having a "formal" composition in the
(hopefully short!) time interval until we have "flesh-and-blood"
composition of isogenies. In other words, wouldn't it be reasonable to
just make the following doctest change instead of removing the
`_composition_()` method?
{{{
#!diff
diff --git a/src/sage/schemes/elliptic_curves/ell_curve_isogeny.py
b/src/sage/schemes/elliptic_
curves/ell_curve_isogeny.py
index 101b81e..8b18590 100644
--- a/src/sage/schemes/elliptic_curves/ell_curve_isogeny.py
+++ b/src/sage/schemes/elliptic_curves/ell_curve_isogeny.py
@@ -3342,21 +3301,12 @@ class EllipticCurveIsogeny(Morphism):
...
NotImplementedError
- The following should test that :meth:`_composition_` is called
- upon a product. However phi is currently improperly
- constructed (see :trac:`12880`), which triggers an assertion
- failure before the actual call ::
+ The following tests that :meth:`_composition_` is called upon
+ a product (see :trac:`12880`)::
sage: phi*phi
Traceback (most recent call last):
...
- TypeError: Elliptic Curve defined by y^2 = x^3 + 1 over
Finite Field of size 7 is not in Category of hom sets in Category of
Schemes
-
- Here would be the desired output::
-
- sage: phi*phi # not tested
- Traceback (most recent call last):
- ...
NotImplementedError
"""
raise NotImplementedError
}}}
Another small request: would it be possible to keep the doctests of
`domain()` and `codomain()` and move them to another place, instead of
deleting them together with the methods?
--
Ticket URL: <http://trac.sagemath.org/ticket/12880#comment:17>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.