"Source: Text/Geometry/CrvCon.text";
"Line: 298";
"Date: Thu Sep 25 14:47:45 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Geometry/CrvCon.text, line: 298
// Example: H130E2 ()
print "Example: H130E2";
ei := GetEchoInput();
SetEchoInput(true);
P2<x,y,z> := ProjectivePlane(FiniteField(71));
C := Curve(P2, (x^3 + y^2*z)^2 - x^5*z);
C;
ArithmeticGenus(C);
assert $1 eq 10;
Genus(C);
assert $1 eq 0;
#RationalPoints(C);
assert $1 eq 73;
Z := SingularSubscheme(C);
Degree(Z);
assert $1 eq 18;
cmps := IrreducibleComponents(Z);
[ Degree(X) : X in cmps ];
[ Degree(ReducedSubscheme(X)) : X in cmps ];
[ RationalPoints(X) : X in cmps ];
P1<u,v> := ProjectiveSpace(FiniteField(71), 1);
p := C![1, 0, 1];
m := Parametrization(C, Place(p), Curve(P1));
S1 := {@ m(q) : q in RationalPoints(P1) @};
#S1;
assert $1 eq 72;
[ q : q in RationalPoints(C) | q notin S1 ];
[ Degree(p) : p in Places(C![0, 1, 0]) ];
SetEchoInput(ei);
