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 betweenK
andL
.Subalgebra.to_intermediateField
: turns a subalgebra closed under⁻¹
into an intermediate fieldSubfield.to_intermediateField
: turns a subfield containing the image ofK
into an intermediate fieldIntermediateField.map
: map an intermediate field along anAlgHom
IntermediateField.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
- carrier : Set L
- one_mem' : 1 ∈ s.carrier
- zero_mem' : 0 ∈ s.carrier
- algebraMap_mem' : ∀ (r : K), ↑(algebraMap K L) r ∈ s.carrier
S : IntermediateField K L
is a subset of L
such that there is a field
tower L / S / K
.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Reinterpret an IntermediateField
as a Subfield
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Two intermediate fields are equal if they have the same elements.
Copy of an intermediate field with a new carrier
equal to the old one. Useful to fix
definitional equalities.
Equations
- One or more equations did not get rendered due to their size.
Instances For
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.
An intermediate field contains the image of the smaller field.
An intermediate field contains the ring's 1.
An intermediate field contains the ring's 0.
Product of a multiset of elements in an intermediate field is in the intermediate_field.
Sum of a multiset of elements in an IntermediateField
is in the IntermediateField
.
Product of elements of an intermediate field indexed by a Finset
is in the intermediate_field.
Sum of elements in an IntermediateField
indexed by a Finset
is in the IntermediateField
.
Turn a subalgebra closed under inverses into an intermediate field
Equations
- One or more equations did not get rendered due to their size.
Instances For
Turn a subalgebra satisfying IsField
into an intermediate_field
Equations
- Subalgebra.toIntermediateField' S hS = Subalgebra.toIntermediateField S (_ : ∀ (x : L), x ∈ S → x⁻¹ ∈ S)
Instances For
Turn a subfield of L
containing the image of K
into an intermediate field
Equations
- One or more equations did not get rendered due to their size.
Instances For
An intermediate field inherits a field structure
Equations
IntermediateField
s inherit structure from their Subalgebra
coercions.
Equations
- IntermediateField.module' S = Subalgebra.module' S.toSubalgebra
Equations
- IntermediateField.module S = inferInstanceAs (Module K { x // x ∈ S.toSubsemiring })
Equations
- IntermediateField.algebra' S = Subalgebra.algebra' S.toSubalgebra
Equations
- IntermediateField.algebra S = inferInstanceAs (Algebra K { x // x ∈ S.toSubsemiring })
Equations
- IntermediateField.toAlgebra S = Subalgebra.toAlgebra S.toSubalgebra
Specialize is_scalar_tower_mid
to the common case where the top field is L
If f : L →+* L'
fixes K
, S.map f
is the intermediate field between L'
and K
such that x ∈ S ↔ f x ∈ S.map f
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given an equivalence e : L ≃ₐ[K] L'
of K
-field extensions and an intermediate
field E
of L/K
, intermediate_field_equiv_map e E
is the induced equivalence
between E
and E.map e
Equations
- IntermediateField.intermediateFieldMap e E = AlgEquiv.subalgebraMap e E.toSubalgebra
Instances For
The range of an algebra homomorphism, as an intermediate field.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The embedding from an intermediate field of L / K
to L
.
Equations
- IntermediateField.val S = Subalgebra.val S.toSubalgebra
Instances For
Equations
- IntermediateField.AlgHom.inhabited S = { default := IntermediateField.val S }
The map E → F
when E
is an intermediate field contained in the intermediate field F
.
This is the intermediate field version of Subalgebra.inclusion
.
Equations
Instances For
Lift an intermediate_field of an intermediate_field
Equations
Instances For
Equations
- IntermediateField.hasLift = { coe := IntermediateField.lift }
Given a tower L / ↥E / L' / K
of field extensions, where E
is an L'
-intermediate field of
L
, reinterpret E
as a K
-intermediate field of L
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If L/K
is algebraic, the K
-subalgebras of L
are all fields.
Equations
- One or more equations did not get rendered due to their size.