Algebraic elements and algebraic extensions #
An element of an R-algebra is algebraic over R if it is the root of a nonzero polynomial. An R-algebra is algebraic over R if and only if all its elements are algebraic over R. The main result in this file proves transitivity of algebraicity: a tower of algebraic field extensions is algebraic.
An element of an R-algebra is algebraic over R if it is a root of a nonzero polynomial with coefficients in R.
Equations
- IsAlgebraic R x = ∃ (p : Polynomial R), p ≠ 0 ∧ (Polynomial.aeval x) p = 0
Instances For
An element of an R-algebra is transcendental over R if it is not algebraic over R.
Equations
- Transcendental R x = ¬IsAlgebraic R x
Instances For
An element x
is transcendental over R
if and only if for any polynomial p
,
Polynomial.aeval x p = 0
implies p = 0
. This is similar to algebraicIndependent_iff
.
If E / F
is a field extension, x
is an element of E
transcendental over F
,
then {(x - a)⁻¹ | a : F}
is linearly independent over F
.
A subalgebra is algebraic if all its elements are algebraic.
Equations
- S.IsAlgebraic = ∀ x ∈ S, IsAlgebraic R x
Instances For
An algebra is algebraic if all its elements are algebraic.
- isAlgebraic : ∀ (x : A), IsAlgebraic R x
Instances
An algebra is transcendental if some element is transcendental.
- transcendental : ∃ (x : A), Transcendental R x
Instances
A subalgebra is algebraic if and only if it is algebraic as an algebra.
An algebra is algebraic if and only if it is algebraic as a subalgebra.
An element x
is transcendental over R
if and only if the map Polynomial.aeval x
is injective. This is similar to algebraicIndependent_iff_injective_aeval
.
An element x
is transcendental over R
if and only if the kernel of the ring homomorphism
Polynomial.aeval x
is the zero ideal. This is similar to algebraicIndependent_iff_ker_eq_bot
.
An integral element of an algebra is algebraic.
Equations
- ⋯ = ⋯
An element of R
is algebraic, when viewed as an element of the R
-algebra A
.
This is slightly more general than IsAlgebraic.algebraMap
in that it
allows noncommutative intermediate rings A
.
Transfer Algebra.IsAlgebraic
across an AlgEquiv
.
Alias of the reverse direction of IsAlgebraic.inv_iff
.
An element of an algebra over a field is algebraic if and only if it is integral.
Alias of the forward direction of isAlgebraic_iff_isIntegral
.
An element of an algebra over a field is algebraic if and only if it is integral.
This used to be an alias
of Algebra.isAlgebraic_iff_isIntegral
but that would make
Algebra.IsAlgebraic K A
an explicit parameter instead of instance implicit.
Equations
- ⋯ = ⋯
If x is algebraic over R, then x is algebraic over S when S is an extension of R,
and the map from R
to S
is injective.
If A is an algebraic algebra over R, then A is algebraic over S when S is an extension of R,
and the map from R
to S
is injective.
If x is algebraic over K, then x is algebraic over L when L is an extension of K
If A is an algebraic algebra over K, then A is algebraic over L when L is an extension of K
A field extension is algebraic if it is finite.
Equations
- ⋯ = ⋯
If L is an algebraic field extension of K and A is an algebraic algebra over L, then A is algebraic over K.
Bijection between algebra equivalences and algebra homomorphisms
Equations
- Algebra.IsAlgebraic.algEquivEquivAlgHom K L = { toFun := fun (ϕ : L ≃ₐ[K] L) => ↑ϕ, invFun := fun (ϕ : L →ₐ[K] L) => AlgEquiv.ofBijective ϕ ⋯, left_inv := ⋯, right_inv := ⋯, map_mul' := ⋯ }
Instances For
Bijection between algebra equivalences and algebra homomorphisms
Equations
Instances For
A fraction (a : S) / (b : S)
can be reduced to (c : S) / (d : R)
,
if S
is the integral closure of R
in an algebraic extension L
of R
.
In an algebraic extension L/K, an intermediate subalgebra is a field.
This is not an instance as it forms a diamond with Pi.instSMul
.
See the instance_diamonds
test for details.
Equations
- Polynomial.hasSMulPi R' S' = { smul := fun (p : Polynomial R') (f : R' → S') (x : R') => Polynomial.eval x p • f x }
Instances For
This is not an instance as it forms a diamond with Pi.instSMul
.
See the instance_diamonds
test for details.
Equations
- Polynomial.hasSMulPi' R' S' T' = { smul := fun (p : Polynomial R') (f : S' → T') (x : S') => (Polynomial.aeval x) p • f x }
Instances For
This is not an instance for the same reasons as Polynomial.hasSMulPi'
.
Equations
- One or more equations did not get rendered due to their size.