"Source: Text/Geometry/Scheme.text";
"Line: 3548";
"Date: Thu Sep 25 14:47:45 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Geometry/Scheme.text, line: 3548
// Example: H122E19 ()
print "Example: H122E19";
ei := GetEchoInput();
SetEchoInput(true);
Q := Rationals();
P<x,y,z> := PolynomialRing(Q,3,"grevlex");
f := z^8-3*z^7-3*x*z^5+3*y*z^5+z^6+3*x*z^4-3*y*z^4+2*y^4+3*x^2*z^2-6*x*y*z^2+
  3*y^2*z^2+x^3-3*x^2*y+7*x*y^2-y^3-4*y^2*z+2*x^2-4*x*z+2*z^2;
boo,f0,typ := NormalFormOfHypersurfaceSingularity(f);
boo; f0; typ;
_,_,_,mp := NormalFormOfHypersurfaceSingularity(f : get_trans := true, d := 8);
mp_err := mp(f)-f0;
Min([TotalDegree(t) : t in Terms(mp_err)]);
P<x,y> := PolynomialRing(Rationals(),2,"grevlex");
f :=  y^12-6*x*y^10+15*x^2*y^8+x^9+9*x^8*y+36*x^7*y^2+84*x^6*y^3+
 126*x^5*y^4+126*x^4*y^5+64*x^3*y^6+36*x^2*y^7+9*x*y^8+y^9+2*x^8+
 16*x^7*y+56*x^6*y^2+112*x^5*y^3+155*x^4*y^4+112*x^3*y^5+56*x^2*y^6+
 16*x*y^7+2*y^8-6*x^5*y^2-x^3*y^4-3*x^2*y^5-4*x*y^6-2*y^7+x^6+2*x^4*y^2+
 6*x^3*y^3+9*x^2*y^4+5*x*y^5-x^5-3*x^4*y-6*x^3*y^2-4*x^2*y^3+x^4+x^3*y;
IsIrreducible(f);
assert $1;
boo,f0,typ := Corank2Case(f);
boo; f0; typ;
P4<x,y,z,t,u> := ProjectiveSpace(Q,4);
X := Scheme(P4,[x^2+y*t+t^2,z^3+x*t*u+y^2*u-t*u^2]);
p := X![0,0,0,0,1];
_,f,_,fdat := IsHypersurfaceSingularity(p,3);
R<a,b,c> := Parent(f);
f;
NormalFormOfHypersurfaceSingularity(f);
assert not $1;
boo,f0,typ := NormalFormOfHypersurfaceSingularity(f : fData := [*fdat,3*]);
boo; f0; typ;
SetEchoInput(ei);
