Adjoining Elements to Fields #
In this file we introduce the notion of adjoining elements to fields.
This isn't quite the same as adjoining elements to rings.
For example, Algebra.adjoin K {x} might not include x⁻¹.
Main results #
adjoin_adjoin_left: adjoining S and then T is the same as adjoiningS ∪ T.bot_eq_top_of_rank_adjoin_eq_one: ifF⟮x⟯has dimension1overFfor everyxinEthenF = E
Notation #
F⟮α⟯: adjoin a single elementαtoF.
Galois insertion between adjoin and coe.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- IntermediateField.instCompleteLatticeIntermediateField = GaloisInsertion.liftCompleteLattice IntermediateField.gi
Construct an algebra isomorphism from an equality of intermediate fields
Equations
- One or more equations did not get rendered due to their size.
Instances For
The bottom intermediate_field is isomorphic to the field.
Equations
- IntermediateField.botEquiv F E = AlgEquiv.trans (Subalgebra.equivOfEq ⊥.toSubalgebra ⊥ (_ : ⊥.toSubalgebra = ⊥)) (Algebra.botEquiv F E)
Instances For
Equations
- IntermediateField.algebraOverBot = RingHom.toAlgebra ↑↑(IntermediateField.botEquiv F E)
The top IntermediateField is isomorphic to the field.
This is the intermediate field version of Subalgebra.topEquiv.
Equations
- IntermediateField.topEquiv = AlgEquiv.trans (Subalgebra.equivOfEq ⊤.toSubalgebra ⊤ (_ : ⊤.toSubalgebra = ⊤)) Subalgebra.topEquiv
Instances For
Equations
- IntermediateField.adjoin.fieldCoe F S = { coe := fun x => { val := ↑(algebraMap F E) x, property := (_ : ↑(algebraMap F E) x ∈ IntermediateField.adjoin F S) } }
Equations
- IntermediateField.adjoin.setCoe F S = { coe := fun x => { val := ↑x, property := (_ : ↑x ∈ ↑(IntermediateField.adjoin F S)) } }
F[S][T] = F[S ∪ T]
F[S][T] = F[T][S]
If x₁ x₂ ... xₙ : E then F⟮x₁,x₂,...,xₙ⟯ is the IntermediateField F E
generated by these elements.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
A compositum of splitting fields is a splitting field
Adjoining a finite subset is compact in the lattice of intermediate fields.
If F⟮x⟯ has dimension ≤1 over F for every x ∈ E then F = E.
algebra isomorphism between AdjoinRoot and F⟮α⟯
Equations
- One or more equations did not get rendered due to their size.
Instances For
The elements 1, x, ..., x ^ (d - 1) form a basis for K⟮x⟯,
where d is the degree of the minimal polynomial of x.
Equations
- IntermediateField.powerBasisAux hx = Basis.map (AdjoinRoot.powerBasis (_ : minpoly K x ≠ 0)).basis (AlgEquiv.toLinearEquiv (IntermediateField.adjoinRootEquivAdjoin K hx))
Instances For
The power basis 1, x, ..., x ^ (d - 1) for K⟮x⟯,
where d is the degree of the minimal polynomial of x.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Algebra homomorphism F⟮α⟯ →ₐ[F] K are in bijection with the set of roots
of minpoly α in K.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Fintype of algebra homomorphism F⟮α⟯ →ₐ[F] K
Equations
Instances For
An intermediate field S is finitely generated if there exists t : Finset E such that
IntermediateField.adjoin F t = S.
Equations
- IntermediateField.FG S = ∃ t, IntermediateField.adjoin F ↑t = S
Instances For
Equations
- IntermediateField.instPartialOrderLifts = PartialOrder.mk (_ : ∀ (a b : IntermediateField.Lifts F E K), a ≤ b → b ≤ a → a = b)
Equations
- One or more equations did not get rendered due to their size.
An upper bound on a chain of lifts
Equations
- One or more equations did not get rendered due to their size.
Instances For
The lift on the upper bound on a chain of lifts
Equations
- One or more equations did not get rendered due to their size.
Instances For
An upper bound on a chain of lifts
Equations
Instances For
Extend a lift x : Lifts F E K to an element s : E whose conjugates are all in K
Equations
- One or more equations did not get rendered due to their size.
Instances For
A compositum of algebraic extensions is algebraic
pb.equivAdjoinSimple is the equivalence between K⟮pb.gen⟯ and L itself.
Equations
- One or more equations did not get rendered due to their size.