Plane quartic curves over a general ring¶
These are generic genus 3 curves, as distinct from hyperelliptic curves of genus 3.
EXAMPLES:
sage: PP.<X,Y,Z> = ProjectiveSpace(2, QQ)
sage: f = X^4 + Y^4 + Z^4 - 3*X*Y*Z*(X+Y+Z)
sage: C = QuarticCurve(f); C
Quartic Curve over Rational Field
defined by X^4 + Y^4 - 3*X^2*Y*Z - 3*X*Y^2*Z - 3*X*Y*Z^2 + Z^4
>>> from sage.all import *
>>> PP = ProjectiveSpace(Integer(2), QQ, names=('X', 'Y', 'Z',)); (X, Y, Z,) = PP._first_ngens(3)
>>> f = X**Integer(4) + Y**Integer(4) + Z**Integer(4) - Integer(3)*X*Y*Z*(X+Y+Z)
>>> C = QuarticCurve(f); C
Quartic Curve over Rational Field
defined by X^4 + Y^4 - 3*X^2*Y*Z - 3*X*Y^2*Z - 3*X*Y*Z^2 + Z^4
PP.<X,Y,Z> = ProjectiveSpace(2, QQ) f = X^4 + Y^4 + Z^4 - 3*X*Y*Z*(X+Y+Z) C = QuarticCurve(f); C
- class sage.schemes.plane_quartics.quartic_generic.QuarticCurve_generic(A, f, category=None)[source]¶
Bases:
ProjectivePlaneCurve
- genus()[source]¶
Return the genus of
self
.EXAMPLES:
sage: x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() sage: Q = QuarticCurve(x**4 + y**4 + z**4) sage: Q.genus() 3
>>> from sage.all import * >>> x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() >>> Q = QuarticCurve(x**Integer(4) + y**Integer(4) + z**Integer(4)) >>> Q.genus() 3
x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() Q = QuarticCurve(x**4 + y**4 + z**4) Q.genus()
- sage.schemes.plane_quartics.quartic_generic.is_QuarticCurve(C)[source]¶
Check whether
C
is a Quartic Curve.EXAMPLES:
sage: from sage.schemes.plane_quartics.quartic_generic import is_QuarticCurve sage: x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() sage: Q = QuarticCurve(x**4 + y**4 + z**4) sage: is_QuarticCurve(Q) doctest:warning... DeprecationWarning: The function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True
>>> from sage.all import * >>> from sage.schemes.plane_quartics.quartic_generic import is_QuarticCurve >>> x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() >>> Q = QuarticCurve(x**Integer(4) + y**Integer(4) + z**Integer(4)) >>> is_QuarticCurve(Q) doctest:warning... DeprecationWarning: The function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True
from sage.schemes.plane_quartics.quartic_generic import is_QuarticCurve x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() Q = QuarticCurve(x**4 + y**4 + z**4) is_QuarticCurve(Q)