def absolute_igusa_invariants_kohel(self): r""" Return the three absolute Igusa invariants used by Kohel [K]_. .. SEEALSO:: :meth:`sage.schemes.hyperelliptic_curves.invariants` EXAMPLES:: sage: R.<x> = QQ[] sage: HyperellipticCurve(x^5 - 1).absolute_igusa_invariants_kohel() (0, 0, 0) sage: HyperellipticCurve(x^5 - x + 1, x^2).absolute_igusa_invariants_kohel() (-1030567/178769, 259686400/178769, 20806400/178769) sage: HyperellipticCurve((x^5 - x + 1)(3*x + 1), (x^2)(3*x + 1)).absolute_igusa_invariants_kohel() (-1030567/178769, 259686400/178769, 20806400/178769) """ f, h = self.hyperelliptic_polynomials() return invariants.absolute_igusa_invariants_kohel(4 * f + h ** 2)
def absolute_igusa_invariants_kohel(self): r""" Return the three absolute Igusa invariants used by Kohel [K]_. .. SEEALSO:: :meth:`sage.schemes.hyperelliptic_curves.invariants` EXAMPLES:: sage: R.<x> = QQ[] sage: HyperellipticCurve(x^5 - 1).absolute_igusa_invariants_kohel() (0, 0, 0) sage: HyperellipticCurve(x^5 - x + 1, x^2).absolute_igusa_invariants_kohel() (-1030567/178769, 259686400/178769, 20806400/178769) sage: HyperellipticCurve((x^5 - x + 1)(3*x + 1), (x^2)(3*x + 1)).absolute_igusa_invariants_kohel() (-1030567/178769, 259686400/178769, 20806400/178769) """ f, h = self.hyperelliptic_polynomials() return invariants.absolute_igusa_invariants_kohel(4 * f + h**2)