Consider the following MAGMA-Code:
R<x> := PolynomialRing(Rationals());
F := NumberField(x^2 + 1);
E := ext<F | x^2 - 2>;
f := DefiningPolynomial(AbsoluteField(E));
K := NumberField(f);
a := Roots(f, E)[1][1];
Embed(K, E, a);
IsSubfield(K, E);
M := RelativeField(K, E);
BaseField(M);
Executed with the MAGMA calculator Running Magma V2.27-7. Seed: 3598054538
The MAGMA Manual defines the Function RelativeField(F, L) as "Given number fields L and F such that Magma knows that F is a subfield of L, return an isomorphic number field M defined as an extension over F."
Since IsSubfield(K, E) above return true
, Magma certainly knows that K is a subfield of E.
Why is M defined over the Rationals and not over K? How can I actually get M defined over K?
Note: Changing the definition of f
to (e.g.) x^2 - 2
or x-1
yields the results I would expect.
Something behaves differently when K and E are Isomorphic.