Idempotent elements of a ring #
This file proves result about idempotent elements of a ring, like:
IsIdempotentElem.one_sub_iff
: In a (non-associative) ring,a
is an idempotent if and only if1 - a
is an idempotent.
theorem
IsIdempotentElem.one_sub
{R : Type u_1}
[NonAssocRing R]
{a : R}
(h : IsIdempotentElem a)
:
IsIdempotentElem (1 - a)
@[simp]
theorem
IsIdempotentElem.one_sub_iff
{R : Type u_1}
[NonAssocRing R]
{a : R}
:
IsIdempotentElem (1 - a) ↔ IsIdempotentElem a
@[simp]
theorem
IsIdempotentElem.mul_one_sub_self
{R : Type u_1}
[NonAssocRing R]
{a : R}
(h : IsIdempotentElem a)
:
@[simp]
theorem
IsIdempotentElem.one_sub_mul_self
{R : Type u_1}
[NonAssocRing R]
{a : R}
(h : IsIdempotentElem a)
:
instance
IsIdempotentElem.instHasComplSubtype
{R : Type u_1}
[NonAssocRing R]
:
HasCompl { a : R // IsIdempotentElem a }
Equations
- IsIdempotentElem.instHasComplSubtype = { compl := fun (a : { a : R // IsIdempotentElem a }) => ⟨1 - ↑a, ⋯⟩ }
@[simp]
theorem
IsIdempotentElem.coe_compl
{R : Type u_1}
[NonAssocRing R]
(a : { a : R // IsIdempotentElem a })
:
@[simp]
theorem
IsIdempotentElem.compl_compl
{R : Type u_1}
[NonAssocRing R]
(a : { a : R // IsIdempotentElem a })
:
theorem
IsIdempotentElem.add_sub_mul_of_commute
{R : Type u_1}
[Ring R]
{a b : R}
(h : Commute a b)
(hp : IsIdempotentElem a)
(hq : IsIdempotentElem b)
:
IsIdempotentElem (a + b - a * b)
theorem
IsIdempotentElem.add_sub_mul
{R : Type u_1}
[CommRing R]
{a b : R}
(hp : IsIdempotentElem a)
(hq : IsIdempotentElem b)
:
IsIdempotentElem (a + b - a * b)