Subfields #
Let K
be a division ring, for example a field.
This file defines the "bundled" subfield type Subfield K
, a type
whose terms correspond to subfields of K
. Note we do not require the "subfields" to be
commutative, so they are really sub-division rings / skew fields. This is the preferred way to talk
about subfields in mathlib. Unbundled subfields (s : Set K
and IsSubfield s
)
are not in this file, and they will ultimately be deprecated.
We prove that subfields are a complete lattice, and that you can map
(pushforward) and
comap
(pull back) them along ring homomorphisms.
We define the closure
construction from Set K
to Subfield K
, sending a subset of K
to the subfield it generates, and prove that it is a Galois insertion.
Main definitions #
Notation used here:
(K : Type u) [DivisionRing K] (L : Type u) [DivisionRing L] (f g : K →+* L)
(A : Subfield K) (B : Subfield L) (s : Set K)
Subfield K
: the type of subfields of a division ringK
.
Implementation notes #
A subfield is implemented as a subring which is closed under ⁻¹
.
Lattice inclusion (e.g. ≤
and ⊓
) is used rather than set notation (⊆
and ∩
), although
∈
is defined as membership of a subfield's underlying set.
Tags #
subfield, subfields
SubfieldClass S K
states S
is a type of subsets s ⊆ K
closed under field operations.
Instances
A subfield contains 1
, products and inverses.
Be assured that we're not actually proving that subfields are subgroups:
SubgroupClass
is really an abbreviation of SubgroupWithOrWithoutZeroClass
.
A subfield inherits a division ring structure
Equations
- One or more equations did not get rendered due to their size.
A subfield of a field inherits a field structure
Equations
- One or more equations did not get rendered due to their size.
Subfield R
is the type of subfields of R
. A subfield of R
is a subset s
that is a
multiplicative submonoid and an additive subgroup. Note in particular that it shares the
same 0 and 1 as R.
A subfield is closed under multiplicative inverses.
Instances For
Two subfields are equal if they have the same elements.
Copy of a subfield with a new carrier
equal to the old one. Useful to fix definitional
equalities.
Equations
Instances For
A Subring
containing inverses is a Subfield
.
Equations
- s.toSubfield hinv = { toSubring := s, inv_mem' := hinv }
Instances For
A subfield contains the field's 1.
A subfield contains the field's 0.
A subfield is closed under multiplication.
A subfield is closed under addition.
A subfield is closed under negation.
A subfield is closed under subtraction.
A subfield is closed under inverses.
A subfield is closed under division.
Equations
Equations
A subfield inherits a field structure
Equations
- s.toField = SubfieldClass.toField (Subfield K) s
The embedding from a subfield of the field K
to K
.
Equations
- s.subtype = { toFun := Subtype.val, map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯ }