"Source: Text/Ring/FldFunRat.text";
"Line: 1264";
"Date: Fri Sep 26 12:10:11 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Ring/FldFunRat.text, line: 1264
// Example: H45E13 ()
print "Example: H45E13";
ei := GetEchoInput();
SetEchoInput(true);
S<u> := PowerSeriesRing(Rationals());
f := [1,u,-1-u^4-2*u^8+u^10+O(u^12),-u-u^5-u^9+u^10+O(u^12)];
dist := [2,2,3,3];
seq := MinimalVectorSequence(f,12: Distortion := dist);
[[MaximumDegree([w[i]])-dist[i]: i in [1..Degree(w)] ] : w in seq]; 
[Valuation(&+([(Q[i])*f[i]: i in [1..#f]]) ) : Q in seq];
[MaximumDegree([ &+([(Q[i])*f[i]: i in [1..#f]]) ]) : Q in seq];
p := 2;
seq := MinimalVectorSequence(f,12:Distortion:=[2,2,3,3],Power:=p);
seq;
[[MaximumDegree([w[i]])-dist[i]: i in [1..Degree(w)] ] : w in seq]; 
mp:= map<S->S|  x :-> (IsWeaklyZero(x) select 0 
    else  &+([Coefficient(x,i)*(S.1)^(p*i) :  i in Exponents(x)]))
      + (ISA(Type(v),RngIntElt) select O((S.1)^(p*v)) 
  else S!0 where v := AbsolutePrecision(x))>;
	  
[Valuation(&+([mp(Q[i])*f[i]: i in [1..#f]])) : Q in seq];		  
SetEchoInput(ei);
