"Source: Text/Ring/FldFunG.text";
"Line: 7089";
"Date: Fri Sep 26 13:15:42 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Ring/FldFunG.text, line: 7089
// Example: H46E39 ()
print "Example: H46E39";
ei := GetEchoInput();
SetEchoInput(true);
PF<x> := PolynomialRing(GF(13, 2));
P<y> := PolynomialRing(PF);
FF1<b> := ext<FieldOfFractions(PF) | y^2 - x>;
P<y> := PolynomialRing(FF1);
FF2<d> := ext<FF1 | y^3 - b>;
CanonicalDivisor(FF2);
IsCanonical($1);
assert $1;
D := Divisor(b) + Divisor(d);
E := Divisor(Random(FF2, 2)*MaximalOrderFinite(FF2), 
Random(FF2, 2)*MaximalOrderInfinite(FF2));
d := D + E;
d;
p, e := Support(d);
d;
g := GCD(D, E);
l := LCM(D, E);
g + l eq d;
assert $1;
g le D;
assert $1;
l ge E;
assert $1;
SetEchoInput(ei);
