"Source: Text/Ring/FldFunAb.text";
"Line: 1199";
"Date: Fri Sep 26 12:10:11 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Ring/FldFunAb.text, line: 1199
// Example: H47E5 ()
print "Example: H47E5";
ei := GetEchoInput();
SetEchoInput(true);
Fq<w> := GF(4);
k<t> := RationalFunctionField(Fq);
R<T> := TwistedPolynomials(k:q := 4);
p := t^2+t+w;
P := CarlitzModule(R, p);
F := Polynomial(P);
Factorisation(F);
K := FunctionField($1[2][1]);
a := Support(DifferentDivisor(K));
a[1];
[ IsFinite(x) : x in a];
RamificationIndex(a[1]);
assert $1 eq 15;
q, mq := quo<Integers(k)|p>;
au := func<X|Evaluate(Polynomial(CarlitzModule(R, X)), K.1)>;
[ <IsUnit(x), Evaluate(DefiningPolynomial(K), au(x@@mq)) eq 0>
                  : x in q];
D, U := NormGroup(K);
Conductor(D, U);
A := AbelianExtension(D, U);
F := FunctionField(A);
F;
HasRoot(Polynomial(K, DefiningPolynomials(F)[1]));
HasRoot(Polynomial(K, DefiningPolynomials(F)[2]));
SetEchoInput(ei);
