Skip to content

Commit cbd8040

Browse files
committed
a curve has dimension 1 by definition
1 parent 7f71494 commit cbd8040

File tree

2 files changed

+21
-5
lines changed

2 files changed

+21
-5
lines changed

src/sage/schemes/curves/affine_curve.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -908,11 +908,7 @@ def projection(self, indices, AS=None):
908908
To: Affine Space of dimension 3 over Rational Field
909909
Defn: Defined on coordinates by sending (x, y, z, w) to
910910
(x, y, z),
911-
Closed subscheme of Affine Space of dimension 3 over Rational Field
912-
defined by:
913-
c - 1,
914-
b - 3,
915-
a - 2)
911+
Affine Curve over Rational Field defined by c - 1, b - 3, a - 2)
916912
917913
::
918914

src/sage/schemes/curves/curve.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@
3838
from sage.schemes.generic.divisor_group import DivisorGroup
3939
from sage.schemes.generic.divisor import Divisor_curve
4040

41+
from sage.rings.integer import Integer
42+
4143
class Curve_generic(AlgebraicScheme_subscheme):
4244
r"""
4345
Generic curve class.
@@ -113,6 +115,24 @@ def _latex_(self):
113115
polys = ', '.join(f'${latex(p)}$' for p in self.defining_polynomials())
114116
return fr"\text{{{ambient_type} curve over ${ring}$ defined by {polys}}}"
115117

118+
def dimension(self):
119+
r"""
120+
Return the dimension of the curve.
121+
122+
Curves have dimension one by definition.
123+
124+
EXAMPLES::
125+
126+
sage: x = polygen(QQ)
127+
sage: C = HyperellipticCurve(x^7 + x^4 + x)
128+
sage: C.dimension()
129+
1
130+
sage: from sage.schemes.projective.projective_subscheme import AlgebraicScheme_subscheme_projective
131+
sage: AlgebraicScheme_subscheme_projective.dimension(C)
132+
1
133+
"""
134+
return Integer(1)
135+
116136
def defining_polynomial(self):
117137
"""
118138
Return the defining polynomial of the curve.

0 commit comments

Comments
 (0)