I know nothing about hyperelliptic curves. From the code, it seems possible that `self._names` is not taken into account properly.
In jacobian_morphism.py, we have class JacobianMorphism_divisor_class_field(AdditiveGroupElement, SchemeMorphism): [...] def __init__(self, parent, polys, check=True): [...] f, h = C.hyperelliptic_polynomials() a, b = polys if not (b**2 + h*b - f) % a == 0: and in your case, C.hyperelliptic_polynomials() gives sage: C.hyperelliptic_polynomials() (u^5 + u + 23, 0) However, the caller JacobianHomset_divisor_classes.__call__ in jacobian_homset.py does the follwing: def __call__(self, P): [...] R = PolynomialRing(self.value_ring(), 'x') P1 = R(P1) P2 = R(P2) return JacobianMorphism_divisor_class_field(self, (P1, P2)) i.e., it converts your input to polynomials in `x`. So that cannot work. Martin On Wednesday 31 July 2024 at 17:03:36 UTC+2 Georgi Guninski wrote: > Why the following doesn't work? > > Session: > #Author: Georgi Guninski > K.<u>=QQ[] > C=HyperellipticCurve(u^5+u+5^2-2); > J=C.jacobian(); > print("J=",J); > P=J(1,5); > #output > J= Jacobian of Hyperelliptic Curve over Rational Field defined by y^2 > = x^5 + x + 23 > > --------------------------------------------------------------------------- > TypeError: unsupported operand parent(s) for *: 'Univariate Polynomial > Ring in u over Rational Field' and 'Univariate Polynomial Ring in x > over Rational Field' > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/865652f5-c874-444c-bb86-0c31b7f816f9n%40googlegroups.com.