Module docstring
{"# Intermediate fields
Let L / K be a field extension, given as an instance Algebra K L.
This file defines the type of fields in between K and L, IntermediateField K L.
An IntermediateField K L is a subfield of L which contains (the image of) K,
i.e. it is a Subfield L and a Subalgebra K L.
Main definitions
IntermediateField K L: the type of intermediate fields betweenKandL.Subalgebra.to_intermediateField: turns a subalgebra closed under⁻¹into an intermediate fieldSubfield.to_intermediateField: turns a subfield containing the image ofKinto an intermediate fieldIntermediateField.map: map an intermediate field along anAlgHomIntermediateField.restrict_scalars: restrict the scalars of an intermediate field to a smaller field in a tower of fields.
Implementation notes
Intermediate fields are defined with a structure extending Subfield and Subalgebra.
A Subalgebra is closed under all operations except ⁻¹,
Tags
intermediate field, field extension ","### Lemmas inherited from more general structures
The declarations in this section derive from the fact that an IntermediateField is also a
subalgebra or subfield. Their use should be replaceable with the corresponding lemma from a
subobject class.
","IntermediateFields inherit structure from their Subfield coercions.
","IntermediateFields inherit structure from their Subalgebra coercions. "}