Ambient Spaces
AffineSpace(k,2) : Rng, RngIntElt -> Aff
ProjectiveSpace(k,2) : Rng,RngIntElt -> Prj
DirectProduct(A,B) : Prj,Prj -> PrjProd,SeqEnum
RuledSurface(k,n) : Rng,RngIntElt -> PrjScrl
CoordinateRing(A) : Sch -> RngMPol
FunctionField(A) : Aff -> FldFunRat
A ! [a,...] : Sch,[RngElt] -> Pt
Origin(A) : Aff -> Pt
Coordinates(p) : Pt -> SeqEnum
Example Crv_plane-points (H82E1)
Creation
Curve(A,f) : Sch, RngMPolElt -> Crv
Curve(A,I) : Sch, RngMPol -> Crv
Line(C,p,q) : Crv, Pt,Pt -> Crv
Conic(P,S) : Prj, Pt -> Crv
Union(C,D) : Sch,Sch -> Sch
Base Change
BaseChange(C,K) : Sch,Rng -> Sch
BaseChange(C,m) : Sch,Map -> Sch
BaseChange(C,A) : Sch,Sch -> Sch
BaseChange(C, n) : Sch, RngIntElt -> Sch
Example Crv_curve-base-change (H82E2)
Basic Attributes
AmbientSpace(C) : Sch -> Sch
BaseRing(C) : Sch -> Rng
DefiningEquation(C) : Sch -> RngMPolElt
Ideal(C) : Sch -> RngMPol
CoordinateRing(C) : Sch -> Rng
Curve(C) : Sch -> Crv
Degree(C) : Sch -> RngIntElt
JacobianIdeal(C) : Sch -> RngMPol
JacobianMatrix(C) : Sch -> ModMatRngElt
HessianMatrix(C) : Sch -> Mtrx
Example Crv_curve-hessian (H82E3)
Basic Invariants
IsReduced(C) : Sch -> BoolElt
IsReducible(C) : Sch -> BoolElt
IsIrreducible(C) : Sch -> BoolElt
IsSingular(C) : Sch -> BoolElt
IsNonsingular(C) : Sch -> BoolElt
Creation of Points on Curves
C ! [a,...] : Crv,[RngElt] -> Pt
C(L) ! [a,...] : SetPt,[RngElt] -> Pt
Curve(p) : Pt -> Crv
Curve(P) : SetPt -> Crv
Coordinates(p) : Pt -> SeqEnum
p[i] : Pt, RngIntElt -> RngElt
p eq q : Pt,Pt -> BoolElt
Operations at a Point
p in C : Pt,Sch -> BoolElt
IsNonsingular(p) : Sch,Pt -> BoolElt
IsSingular(p) : Sch,Pt -> BoolElt
IsInflectionPoint(p) : Sch,Pt -> BoolElt,RngIntElt
TangentLine(p) : Crv,Pt -> Crv
TangentCone(p) : Crv,Pt -> Crv
IsTangent(C,D,p) : Sch,Sch,Pt -> BoolElt
Singularity Analysis
Multiplicity(p) : Sch,Pt -> RngIntElt
IsDoublePoint(p) : Crv,Pt -> BoolElt
IsOrdinarySingularity(p) : Sch,Pt -> BoolElt
IsNode(p) : Crv,Pt -> BoolElt
IsCusp(p) : Crv,Pt -> BoolElt
IsAnalyticallyIrreducible(p) : Crv,Pt -> BoolElt
Example Crv_curve-iscusp (H82E4)
Resolution of Singularities
Blowup(C) : Crv -> Crv, Crv
Blowup(C,M) : Crv,Mtrx -> Crv, RngIntElt, RngIntElt
Example Crv_weighted-blowup (H82E5)
Local Intersection Theory
IsIntersection(C,D,p) : Sch,Sch,Pt -> BoolElt
IsTransverse(C,D,p) : Sch,Sch,Pt -> BoolElt
IntersectionNumber(C,D,p) : Sch,Sch,Pt -> RngIntElt
Example Crv_local-intersection-example (H82E6)
Genus and Singularities
Genus(C) : Crv -> RngIntElt
ArithmeticGenus(C) : Crv -> RngIntElt
NumberOfPunctures(C): Crv -> RngIntElt
SingularPoints(C) : Sch -> SeqEnum
HasSingularPointsOverExtension(C) : Sch -> BoolElt
Flexes(C) : Sch -> SeqEnum
C eq D : Sch,Sch -> BoolElt
C subset D : Sch,Sch -> BoolElt
Projective Closure and Affine Patches
ProjectiveClosure(A): Sch -> Sch
ProjectiveClosure(C) : Sch -> Sch
Example Crv_proj-cl-commutes (H82E7)
LineAtInfinity(A) : Aff -> Crv
PointsAtInfinity(C) : Crv -> SetEnum
AffinePatch(C,i) : Crv,RngIntElt -> SeqEnum
Example Crv_second-affine-patch (H82E8)
Maps and Curves
IdentityAutomorphism(A) : Sch -> AutSch
TranslationToInfinity(C,p) : Crv,Pt -> Crv,AutSch
Example Crv_translation-to-infinity (H82E9)
Special forms of Curves
IsEllipticWeierstrass(C) : Crv -> BoolElt
IsHyperellipticWeierstrass(C) : Crv -> BoolElt
EllipticCurve(C,p) : Crv, Pt -> CrvEll, Map, Map
WeierstrassForm(C,p) : Crv, Pt -> CrvEll, MapSch
Function Fields
FunctionField(C) : Crv -> FldFun
Curve(F) : FldFun -> Crv
Example Crv_ff-creation-example (H82E10)
Evaluate(f,p) : FldFunElt,Pt -> RngElt
Valuation(f,p) : FldFunElt,Pt -> RngIntElt
Valuation(p) : Pt -> Map
UniformizingParameter(p) : Pt -> FldFunRatMElt
Example Crv_ff-elements-example (H82E11)
Differential Space
DifferentialSpace(C) : Crv -> DiffFun
SpaceOfDifferentialsFirstKind(C) : Crv -> ModFld, Map
FunctionField(S) : DiffFun -> FldFun
DifferentialSpace(D) : DivCrvElt -> ModTup,Map
S eq T : DiffFun,DiffFun -> BoolElt
a in S : RngElt,DiffFun -> BoolElt
Operations on Differentials
Differential(a) : FldFunElt -> DiffFunElt
Identity(S) : DiffFun -> DiffFunElt
f * x : RngElt,DiffFunElt -> DiffFunElt
Cartier(a) : DiffFunElt -> DiffFunElt
IsExact(a) : DiffFunElt -> BoolElt
IsZero(a) : DiffFunElt -> BoolElt
a eq b : DiffFunElt,DiffFunElt -> BoolElt
FunctionField(a) : DiffFunElt -> FldFun
Example Crv_curve-differentials (H82E12)
Sets of Places
Places(C) : Crv -> PlcCrv
Curve(P) : PlcCrv -> Crv
P eq Q : PlcCrv,PlcCrv -> BoolElt
Places
Places(C,m) : Crv,RngIntElt -> SeqEnum
Place(C,m) : Crv,RngIntElt -> BoolElt,PlcCrvElt
Place(p) : Pt -> PlcCrvElt
Places(p) : Pt -> SeqEnum
Place(Q) : SeqEnum -> PlcCrvElt
RationalFunctions(P) : CrvPlcElt -> SeqEnum
Example Crv_place-equations (H82E13)
Zeros(C,f) : DivCrv, FldFunElt -> SeqEnum
Example Crv_zeros-and-poles (H82E14)
Curve(P) : PlcCrvElt -> Crv
RepresentativePoint(P) : PlcCrv -> Pt
P eq Q : PlcCrvElt, PlcCrvElt -> BoolElt
Valuation(f,P) : FldFunElt, PlcCrvElt -> RngIntElt
Valuation(P) : PlcCrvElt -> Map
Valuation(a,P) : DiffFunElt,PlcCrvElt -> RngIntElt
Residue(a,P) : DiffFunElt,PlcCrvElt -> RngElt
UniformizingParameter(P) : PlcCrvElt -> FldFunRatMElt
IsWeierstrassPlace(P) : PlcCrvElt -> BoolElt
Divisor Group
DivisorGroup(C) : Crv -> DivCrv
D ! 0 : DivCrv,RngIntElt -> DivCrvElt
Curve(Div) : DivCrv -> Crv
Div1 eq Div2 : DivCrv,DivCrv -> BoolElt
Creation of Divisors
DivisorGroup(D) : DivCrvElt -> DivCrv
Curve(D) : DivCrvElt -> Crv
Div ! 0 : DivCrv, RngIntElt -> DivCrvElt
Div ! p : DivCrv, PlcCrvElt -> DivCrvElt
Divisor(Q) : SeqEnum -> DivCrvElt
Example Crv_divisor-equations (H82E15)
Divisor(Div,S) : DivCrv, SeqEnum -> DivCrvElt
PrincipalDivisor(Div,f) : DivCrv, FldFunElt -> DivCrvElt
Divisor(Div,a) : DivCrv,DiffFunElt -> DivCrvElt
Divisor(Div,L) : DivCrv, Crv -> DivCrvElt
Divisor(Div,p,q) : DivCrv,Pt,Pt -> DivCrvElt
Support(D) : DivCrvElt -> SeqEnum
Example Crv_divisor1 (H82E16)
Valuation(D,p) : DivCrvElt, Pt -> DivCrvElt
ComplementaryDivisor(D,p) : DivCrvElt,Pt -> DivCrvElt
Coefficient Arithmetic
D + E : DivCrvElt,DivCrvElt -> DivCrvElt
Degree(D) : DivCrvElt -> RngIntElt
IsEffective(D) : DivCrvElt -> BoolElt
SignDecomposition(D) : DivCrvElt -> DivElt,DivElt
Example Crv_divisor2 (H82E17)
D eq E : DivCrvElt,DivCrvElt -> BoolElt
IsZero(D) : DivCrvElt -> BoolElt
IsCanonical(D) : DivCrvElt -> BoolElt,DiffFunElt
Example Crv_canonical_divisor (H82E18)
Abstract Function Fields
S ! P : PlcCrv, PlcFunElt -> PlcCrvElt
FunctionFieldPlace(P) : PlcCrvElt -> PlcFunElt
Div ! D : DivCrv, DivFunElt -> DivCrvElt
FunctionFieldDivisor(D) : DivCrvElt -> DivFunElt
Linear Equivalence of Divisors
Linear Equivalence and Class Group
IsPrincipal(D) : DivCrvElt -> BoolElt,FldFunRatMElt
IsLinearlyEquivalent(D1,D2) : DivCrvElt,DivCrvElt -> BoolElt
ClassGroup(C) : Crv -> GrpAb, Map
Example Crv_divisor-class-group-example (H82E19)
Riemann--Roch Spaces
RiemannRochSpace(D) : DivCrvElt -> ModTupFld,Map
Basis(D) : DivCrvElt -> SeqEnum
DifferentialBasis(D) : DivCrvElt -> SeqEnum
IndexOfSpeciality(D) : DivCrvElt -> RngIntElt
IsSpecial(D) : DivCrvElt -> BoolElt
GapNumbers(D) : DivCrvElt -> SeqEnum
GapNumbers(p) : Pt -> SeqEnum
WeierstrassPlaces(D) : DivCrvElt -> SeqEnum
WronskianOrders(D) : DivCrvElt -> SeqEnum
RamificationDivisor(D) : DivCrvElt -> DivCrvElt
DivisorMap(D) : DivCrvElt -> MapSch
CanonicalMap(C) : Crv -> MapSch
Example Crv_canonical-map (H82E20)