An element is said to be nilpotent if some natural-number-power of it equals zero.
Note that we require only the bare minimum assumptions for the definition to make sense. Even
monoid_with_zero
is too strong since nilpotency is important in the study of rings that are only
power-associative.
Equations
- is_nilpotent x = ∃ (n : ℕ), x ^ n = 0
@[simp]
theorem
is_nilpotent.map
{R S : Type u}
[monoid_with_zero R]
[monoid_with_zero S]
{r : R}
{F : Type u_1}
[monoid_with_zero_hom_class F R S]
(hr : is_nilpotent r)
(f : F) :
is_nilpotent (⇑f r)
@[class]
- eq_zero : ∀ (x : R), is_nilpotent x → x = 0
A structure that has zero and pow is reduced if it has no nonzero nilpotent elements.
@[protected, instance]
@[protected, instance]
theorem
is_nilpotent.eq_zero
{R : Type u}
{x : R}
[has_zero R]
[has_pow R ℕ]
[is_reduced R]
(h : is_nilpotent x) :
x = 0
@[simp]
theorem
is_nilpotent_iff_eq_zero
{R : Type u}
{x : R}
[monoid_with_zero R]
[is_reduced R] :
is_nilpotent x ↔ x = 0
theorem
is_reduced_of_injective
{R S : Type u}
[monoid_with_zero R]
[monoid_with_zero S]
{F : Type u_1}
[monoid_with_zero_hom_class F R S]
(f : F)
(hf : function.injective ⇑f)
[is_reduced S] :
theorem
commute.is_nilpotent_add
{R : Type u}
{x y : R}
[semiring R]
(h_comm : commute x y)
(hx : is_nilpotent x)
(hy : is_nilpotent y) :
is_nilpotent (x + y)
theorem
commute.is_nilpotent_mul_left
{R : Type u}
{x y : R}
[semiring R]
(h_comm : commute x y)
(h : is_nilpotent x) :
is_nilpotent (x * y)
theorem
commute.is_nilpotent_mul_right
{R : Type u}
{x y : R}
[semiring R]
(h_comm : commute x y)
(h : is_nilpotent y) :
is_nilpotent (x * y)
theorem
commute.is_nilpotent_sub
{R : Type u}
{x y : R}
[ring R]
(h_comm : commute x y)
(hx : is_nilpotent x)
(hy : is_nilpotent y) :
is_nilpotent (x - y)
The nilradical of a commutative semiring is the ideal of nilpotent elements.
Equations
- nilradical R = 0.radical
theorem
nilradical_eq_Inf
(R : Type u_1)
[comm_semiring R] :
nilradical R = Inf {J : ideal R | J.is_prime}
theorem
nilpotent_iff_mem_prime
{R : Type u}
{x : R}
[comm_semiring R] :
is_nilpotent x ↔ ∀ (J : ideal R), J.is_prime → x ∈ J
theorem
nilradical_le_prime
{R : Type u}
[comm_semiring R]
(J : ideal R)
[H : J.is_prime] :
nilradical R ≤ J
@[simp]
@[simp]
theorem
algebra.is_nilpotent_lmul_left_iff
(R : Type u)
{A : Type v}
[comm_semiring R]
[semiring A]
[algebra R A]
(a : A) :
is_nilpotent (algebra.lmul_left R a) ↔ is_nilpotent a
@[simp]
theorem
algebra.is_nilpotent_lmul_right_iff
(R : Type u)
{A : Type v}
[comm_semiring R]
[semiring A]
[algebra R A]
(a : A) :
is_nilpotent (algebra.lmul_right R a) ↔ is_nilpotent a
theorem
module.End.is_nilpotent.mapq
{R : Type u}
{M : Type v}
[ring R]
[add_comm_group M]
[module R M]
{f : module.End R M}
{p : submodule R M}
(hp : p ≤ submodule.comap f p)
(hnp : is_nilpotent f) :
is_nilpotent (p.mapq p f hp)