Canonical normalField_cast_morphism := Morphism normalField_castM.

(* Specifications: *)
Lemma normalField_ker : 'ker normalField_cast = 'Gal(E / M).
Lemma normalField_normal : 'Gal(E / M) <| 'Gal(E / K).
Lemma normalField_isom :
{f : {morphism ('Gal(E / K) / 'Gal(E / M)) >-> gal_of M} |
isom ('Gal(E / K) / 'Gal (E / M)) 'Gal(M / K) f
& (forall A, f @* (A / 'Gal(E / M)) = normalField_cast @* A)
/\ {in 'Gal(E / K) & M, forall x, f (coset 'Gal (E / M) x) =1 x} }%g.
Lemma normalField_isog : 'Gal(E / K) / 'Gal(E / M) \isog 'Gal(M / K).
End IntermediateGroup.