Lemmas for the algebra tactic. #
theorem
Mathlib.Tactic.Algebra.isInt_negOfNat_eq
{R : Type u_1}
{A : Type u_2}
[CommRing R]
[CommRing A]
[Algebra R A]
{a : A}
{lit : ℕ}
(h : Meta.NormNum.IsInt a (Int.negOfNat lit))
:
theorem
Mathlib.Tactic.Algebra.isNNRat_eq_rawCast
{R : Type u_1}
{A : Type u_2}
[Semifield R]
[Semifield A]
[Algebra R A]
{a : A}
{n d : ℕ}
(h : Meta.NormNum.IsNNRat a n d)
:
theorem
Mathlib.Tactic.Algebra.isRat_eq_rawCast
{R : Type u_1}
{A : Type u_2}
[Field R]
[Field A]
[Algebra R A]
{a : A}
{n d : ℕ}
(h : Meta.NormNum.IsRat a (Int.negOfNat n) d)
:
theorem
Mathlib.Tactic.Algebra.isNat_zero_eq
{A : Type u_2}
[sA : CommSemiring A]
{a : A}
(h : Meta.NormNum.IsNat a 0)
:
theorem
Mathlib.Tactic.Algebra.isNat_eq_rawCast
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{a : A}
{lit : ℕ}
(h : Meta.NormNum.IsNat a lit)
:
theorem
Mathlib.Tactic.Algebra.nat_rawCast_2
{R : Type u_1}
[sR : CommSemiring R]
{n : ℕ}
[n.AtLeastTwo]
:
theorem
Mathlib.Tactic.Algebra.ofNat_smul
{n : ℕ}
{R : Type u_3}
{A : Type u_4}
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[n.AtLeastTwo]
{a : A}
:
theorem
Mathlib.Tactic.Algebra.neg_ofNat_smul
{n : ℕ}
{R : Type u_3}
{A : Type u_4}
[CommRing R]
[CommRing A]
[Algebra R A]
{a : A}
[n.AtLeastTwo]
:
theorem
Mathlib.Tactic.Algebra.nnRat_ofNat_smul_1
{d : ℕ}
{R : Type u_3}
{A : Type u_4}
[Semifield R]
[Semifield A]
[Algebra R A]
{a : A}
[d.AtLeastTwo]
:
theorem
Mathlib.Tactic.Algebra.nnRat_ofNat_smul_2
{n d : ℕ}
{R : Type u_3}
{A : Type u_4}
[Semifield R]
[Semifield A]
[Algebra R A]
{a : A}
[n.AtLeastTwo]
[d.AtLeastTwo]
:
theorem
Mathlib.Tactic.Algebra.rat_ofNat_smul_1
{d : ℕ}
{R : Type u_3}
{A : Type u_4}
[Field R]
[Field A]
[Algebra R A]
{a : A}
[d.AtLeastTwo]
:
theorem
Mathlib.Tactic.Algebra.rat_ofNat_smul_2
{n d : ℕ}
{R : Type u_3}
{A : Type u_4}
[Field R]
[Field A]
[Algebra R A]
{a : A}
[n.AtLeastTwo]
[d.AtLeastTwo]
:
theorem
Mathlib.Tactic.Algebra.smul_one_eq_zero
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{r : R}
(h : r = 0)
:
theorem
Mathlib.Tactic.Algebra.add_eq_zero
{A : Type u_2}
[sA : CommSemiring A]
{a b : A}
(ha : a = 0)
(hb : b = 0)
:
theorem
Mathlib.Tactic.Algebra.smul_one_eq_smul_one'
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{r s : R}
(h : r = s)
:
theorem
Mathlib.Tactic.Algebra.add_eq_of_zero_add
{A : Type u_2}
[sA : CommSemiring A]
{a₁ a₂ b₁ b₂ : A}
(ha₁ : a₁ = 0)
(ha₂ : a₂ = b₁ + b₂)
:
theorem
Mathlib.Tactic.Algebra.add_eq_of_add_zero
{A : Type u_2}
[sA : CommSemiring A]
{a₁ a₂ b₁ b₂ : A}
(hb₁ : b₁ = 0)
(ha : a₁ + a₂ = b₂)
:
theorem
Mathlib.Tactic.Algebra.add_eq_of_eq_eq
{A : Type u_2}
[sA : CommSemiring A]
{a₁ a₂ b₁ b₂ : A}
(ha : a₁ = b₁)
(hb : a₂ = b₂)
:
theorem
Mathlib.Tactic.Algebra.mul_eq_mul_of_eq
{A : Type u_2}
[sA : CommSemiring A]
{c a b : A}
(h : a = b)
:
theorem
Mathlib.Tactic.Algebra.add_algebraMap
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{r s t : R}
(h : r + s = t)
:
theorem
Mathlib.Tactic.Algebra.add_algebraMap_isNat_zero
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{r s : R}
(h : r + s = 0)
:
Meta.NormNum.IsNat ((algebraMap R A) r + (algebraMap R A) s) 0
theorem
Mathlib.Tactic.Algebra.cast_smul_eq_mul
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{R' : Type u_3}
[HSMul R' A A]
{r' : R'}
{r r'' : R}
(hr : r = r'')
(h_smul : ∀ (a : A), r • a = r' • a)
(a : A)
:
theorem
Mathlib.Tactic.Algebra.pow_algebraMap
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{r s : R}
{b : ℕ}
(h : r ^ b = s)
:
theorem
Mathlib.Tactic.Algebra.isOne_algebraMap
{R : Type u_1}
{A : Type u_2}
[sR : CommSemiring R]
[sA : CommSemiring A]
[sAlg : Algebra R A]
{r : R}
(h : Meta.NormNum.IsNat r 1)
:
Meta.NormNum.IsNat ((algebraMap R A) (r + 0)) 1