Algebraic Closure #
In this file we construct the algebraic closure of a field
Main Definitions #
AlgebraicClosure k
is an algebraic closure ofk
(in the same universe). It is constructed by taking the polynomial ring generated by indeterminatesx_f
corresponding to monic irreducible polynomialsf
with coefficients ink
, and quotienting out by a maximal ideal containing everyf(x_f)
. Usually this needs to be repeated countably many times (see Exercise 1.13 in [AM69]), but using a theorem of Isaacs [Isa80], once is enough (see https://kconrad.math.uconn.edu/blurbs/galoistheory/algclosure.pdf).
Tags #
algebraic closure, algebraically closed
@[reducible, inline]
The subtype of monic irreducible polynomials
Equations
- AlgebraicClosure.MonicIrreducible k = { f : Polynomial k // f.Monic ∧ Irreducible f }
Instances For
Sends a monic irreducible polynomial f
to f(x_f)
where x_f
is a formal indeterminate.
Equations
- AlgebraicClosure.evalXSelf k f = Polynomial.eval₂ MvPolynomial.C (MvPolynomial.X f) ↑f
Instances For
The span of f(x_f)
across monic irreducible polynomials f
where x_f
is an
indeterminate.
Equations
Instances For
def
AlgebraicClosure.toSplittingField
(k : Type u)
[Field k]
(s : Finset (AlgebraicClosure.MonicIrreducible k))
:
MvPolynomial (AlgebraicClosure.MonicIrreducible k) k →ₐ[k] (∏ x ∈ s, ↑x).SplittingField
Given a finset of monic irreducible polynomials, construct an algebra homomorphism to the
splitting field of the product of the polynomials sending each indeterminate x_f
represented by
the polynomial f
in the finset to a root of f
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
AlgebraicClosure.toSplittingField_evalXSelf
(k : Type u)
[Field k]
{s : Finset (AlgebraicClosure.MonicIrreducible k)}
{f : AlgebraicClosure.MonicIrreducible k}
(hf : f ∈ s)
:
(AlgebraicClosure.toSplittingField k s) (AlgebraicClosure.evalXSelf k f) = 0
A random maximal ideal that contains spanEval k
Equations
Instances For
instance
AlgebraicClosure.maxIdeal.isMaximal
(k : Type u)
[Field k]
:
(AlgebraicClosure.maxIdeal k).IsMaximal
The canonical algebraic closure of a field, the direct limit of adding roots to the field for each polynomial over the field.
Equations
Instances For
Equations
- AlgebraicClosure.instInhabited k = { default := 37 }
instance
AlgebraicClosure.instSMulOfIsScalarTower
(k : Type u)
[Field k]
{S : Type u_1}
[DistribSMul S k]
[IsScalarTower S k k]
:
SMul S (AlgebraicClosure k)
instance
AlgebraicClosure.instAlgebra
(k : Type u)
[Field k]
{R : Type u_1}
[CommSemiring R]
[Algebra R k]
:
Algebra R (AlgebraicClosure k)
Equations
instance
AlgebraicClosure.instIsScalarTower
(k : Type u)
[Field k]
{R : Type u_1}
{S : Type u_2}
[CommSemiring R]
[CommSemiring S]
[Algebra R S]
[Algebra S k]
[Algebra R k]
[IsScalarTower R S k]
:
IsScalarTower R S (AlgebraicClosure k)
Equations
- AlgebraicClosure.instGroupWithZero k = GroupWithZero.mk ⋯ Field.zpow ⋯ ⋯ ⋯ ⋯ ⋯
Equations
- AlgebraicClosure.instField k = Field.mk ⋯ GroupWithZero.zpow ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ (fun (x1 : ℚ≥0) (x2 : AlgebraicClosure k) => x1 • x2) ⋯ ⋯ (fun (x1 : ℚ) (x2 : AlgebraicClosure k) => x1 • x2) ⋯
instance
AlgebraicClosure.instIsAlgClosure
(k : Type u)
[Field k]
:
IsAlgClosure k (AlgebraicClosure k)
instance
AlgebraicClosure.instCharP
(k : Type u)
[Field k]
{p : ℕ}
[CharP k p]
:
CharP (AlgebraicClosure k) p
instance
AlgebraicClosure.instIsAlgClosureOfIsAlgebraic
(k : Type u)
{L : Type u_1}
[Field k]
[Field L]
[Algebra k L]
[Algebra.IsAlgebraic k L]
:
IsAlgClosure k (AlgebraicClosure L)