"Source: Text/Geometry/Crv.text";
"Line: 2190";
"Date: Thu Sep 25 14:47:45 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Geometry/Crv.text, line: 2190
// Example: H124E10 ()
print "Example: H124E10";
ei := GetEchoInput();
SetEchoInput(true);
A<x,y> := AffineSpace(Rationals(),2);
C := Curve(A, y^2 - x^5);
D := Curve(A, y - x^2);
p := Origin(A);
IntersectionNumber(C,D,p);
assert $1 eq 4;
Multiplicity(C,p) * Multiplicity(D,p);
assert $1 eq 2;
RA := CoordinateRing(A);
I := ideal< RA | DefiningPolynomial(C), DefiningPolynomial(D) >;
Dimension(RA/I);
assert $1 eq 5;
IP := IntersectionPoints(C,D);
IP;
IsTransverse(C,D,IP[1]);
assert not $1;
IsTransverse(C,D,IP[2]);
assert $1;
SetEchoInput(ei);
