"Source: Text/Ring/RngPowAlg.text";
"Line: 411";
"Date: Fri Sep 26 12:10:11 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Ring/RngPowAlg.text, line: 411
// Example: H53E2 ()
print "Example: H53E2";
ei := GetEchoInput();
SetEchoInput(true);
Q := Rationals(); Qs<s> := FunctionField(Q);
Qxy<x,y> := PolynomialRing(Q, 2, "glex");
Qxyz<z> := PolynomialRing(Qxy);
Qst<t> := PolynomialRing(Qs, 1, "glex");
Qstu<u> := PolynomialRing(Qst);
defpol := (1+5*y+10*y^3+10*y^2+5*y^4+y^5)*z^5+(-20*y^3*x-
 30*y^2*x-5*y^4*x-5*x-20*y*x)*z^4+(10*x^2+30*y^2*x^2+10*y^3*x^2+
 30*x^2*y)*z^3+(-20*y*x^3-10*x^3-10*y^2*x^3)*z^2+
 (5*y*x^4+5*x^4)*z-x^5-x^2*y;
Gamma := Lattice(RMatrixSpace(Integers(), 2, 2) ! [1,-2, 2,1]);
init := x^2*y;
s2 := AlgebraicPowerSeries(defpol, init, Gamma, 5);
X := AlgebraicPowerSeries(u^3-t+s*t^2, t, StandardLattice(1), 3);
Y := PolyToSeries(t);
duals := [RSpace(Integers(), 2) | [1, 3], [2, 1]];
s3 := EvaluationPowerSeries(s2, duals, [X, Y]);
Domain(s3);
ExponentLattice(s3);
DefiningPolynomial(s3);
Order(s3);
assert $1 eq 4;
SetEchoInput(ei);
