ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Algebra.lsmul_injective
theorem lsmul_injective [NoZeroSMulDivisors A M] {x : A} (hx : x ≠ 0) :
    Function.Injective (lsmul R B M x) 
Arguments: (R : Type u) (A : Type w) (B : Type u₁) (M : Type v₁) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] [AddCommGroup M] [Module R M] [Module A M] [Module B M] [IsScalarTower R A M] [IsScalarTower R B M] [SMulCommClass A B M] [NoZeroSMulDivisors A M] {x : A} (hx : x ≠ 0)
Goal: Function.Injective ⇑((Algebra.lsmul R B M) x)
-- AddHom.mulLeft_apply
@[simps (config := .asFn)]
def mulLeft [Distrib R] (r : R) : AddHom R R 
Arguments: {R : Type u_1} [Distrib R] (r : R)
Goal: ⇑(AddHom.mulLeft r) = fun x => r * x
-- AddHom.mulRight_apply
@[simps (config := .asFn)]
def mulRight [Distrib R] (r : R) : AddHom R R 
Arguments: {R : Type u_1} [Distrib R] (r : R)
Goal: ⇑(AddHom.mulRight r) = fun a => a * r
-- AddMonoidHom.coe_mulLeft
@[simp]
theorem coe_mulLeft [NonUnitalNonAssocSemiring R] (r : R) :
    (mulLeft r : R → R) = HMul.hMul r 
Arguments: {R : Type u_1} [NonUnitalNonAssocSemiring R] (r : R)
Goal: ⇑(AddMonoidHom.mulLeft r) = HMul.hMul r
-- AddMonoidHom.coe_mulRight
@[simp]
theorem coe_mulRight [NonUnitalNonAssocSemiring R] (r : R) :
    (mulRight r) = (· * r) 
Arguments: {R : Type u_1} [NonUnitalNonAssocSemiring R] (r : R)
Goal: ⇑(AddMonoidHom.mulRight r) = fun x => x * r
-- AddMonoidHom.mulRight_apply
theorem mulRight_apply [NonUnitalNonAssocSemiring R] (a r : R) :
    mulRight r a = a * r 
Arguments: {R : Type u_1} [NonUnitalNonAssocSemiring R] (a r : R)
Goal: (AddMonoidHom.mulRight r) a = a * r
-- inv_neg'
@[simp]
theorem inv_neg' (a : α) : (-a)⁻¹ = -a⁻¹ 
Arguments: {α : Type u_2} [Group α] [HasDistribNeg α] (a : α)
Goal: (-a)⁻¹ = -a⁻¹
-- vieta_formula_quadratic
theorem vieta_formula_quadratic {b c x : α} (h : x * x - b * x + c = 0) :
    ∃ y : α, y * y - b * y + c = 0 ∧ x + y = b ∧ x * y = c 
Arguments: {α : Type u_2} [NonUnitalCommRing α] {b c x : α} (h : x * x - b * x + c = 0)
Goal: ∃ y, y * y - b * y + c = 0 ∧ x + y = b ∧ x * y = c
-- succ_ne_self
theorem succ_ne_self {α : Type*} [NonAssocRing α] [Nontrivial α] (a : α) : a + 1 ≠ a 
Arguments: {α : Type u_2} [NonAssocRing α] [Nontrivial α] (a : α)
Goal: a + 1 ≠ a
-- pred_ne_self
theorem pred_ne_self {α : Type*} [NonAssocRing α] [Nontrivial α] (a : α) : a - 1 ≠ a 
Arguments: {α : Type u_2} [NonAssocRing α] [Nontrivial α] (a : α)
Goal: a - 1 ≠ a
-- IsLeftCancelMulZero.to_noZeroDivisors
lemma IsLeftCancelMulZero.to_noZeroDivisors [NonUnitalNonAssocRing α] [IsLeftCancelMulZero α] :
    NoZeroDivisors α 
Arguments: (α : Type u_2) [NonUnitalNonAssocRing α] [IsLeftCancelMulZero α]
Goal: NoZeroDivisors α
-- IsRightCancelMulZero.to_noZeroDivisors
lemma IsRightCancelMulZero.to_noZeroDivisors [NonUnitalNonAssocRing α] [IsRightCancelMulZero α] :
    NoZeroDivisors α 
Arguments: (α : Type u_2) [NonUnitalNonAssocRing α] [IsRightCancelMulZero α]
Goal: NoZeroDivisors α
-- isCancelMulZero_iff_noZeroDivisors
lemma isCancelMulZero_iff_noZeroDivisors [NonUnitalNonAssocRing α] :
    IsCancelMulZero α ↔ NoZeroDivisors α 
Arguments: (α : Type u_2) [NonUnitalNonAssocRing α]
Goal: IsCancelMulZero α ↔ NoZeroDivisors α
-- NoZeroDivisors.to_isDomain
lemma NoZeroDivisors.to_isDomain [Ring α] [h : Nontrivial α] [NoZeroDivisors α] :
    IsDomain α 
Arguments: (α : Type u_2) [Ring α] [h : Nontrivial α] [NoZeroDivisors α]
Goal: IsDomain α
-- isDomain_iff_cancelMulZero_and_nontrivial
lemma isDomain_iff_cancelMulZero_and_nontrivial [Semiring α] :
    IsDomain α ↔ IsCancelMulZero α ∧ Nontrivial α 
Arguments: (α : Type u_2) [Semiring α]
Goal: IsDomain α ↔ IsCancelMulZero α ∧ Nontrivial α
-- isCancelMulZero_iff_isDomain_or_subsingleton
lemma isCancelMulZero_iff_isDomain_or_subsingleton [Semiring α] :
    IsCancelMulZero α ↔ IsDomain α ∨ Subsingleton α 
Arguments: (α : Type u_2) [Semiring α]
Goal: IsCancelMulZero α ↔ IsDomain α ∨ Subsingleton α
-- isDomain_iff_noZeroDivisors_and_nontrivial
lemma isDomain_iff_noZeroDivisors_and_nontrivial [Ring α] :
    IsDomain α ↔ NoZeroDivisors α ∧ Nontrivial α 
Arguments: (α : Type u_2) [Ring α]
Goal: IsDomain α ↔ NoZeroDivisors α ∧ Nontrivial α
-- noZeroDivisors_iff_isDomain_or_subsingleton
lemma noZeroDivisors_iff_isDomain_or_subsingleton [Ring α] :
    NoZeroDivisors α ↔ IsDomain α ∨ Subsingleton α 
Arguments: (α : Type u_2) [Ring α]
Goal: NoZeroDivisors α ↔ IsDomain α ∨ Subsingleton α
-- Subalgebra.coe_iSup_of_directed
theorem coe_iSup_of_directed (dir : Directed (· ≤ ·) K) : ↑(iSup K) = ⋃ i, (K i : Set A) 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] {ι : Type u_4} [Nonempty ι] {K : ι → Subalgebra R A} (dir : Directed (fun x x_1 => x ≤ x_1) K)
Goal: ↑(iSup K) = ⋃ i, ↑(K i)
-- Subalgebra.iSupLift_inclusion
@[simp]
theorem iSupLift_inclusion {dir : Directed (· ≤ ·) K} {f : ∀ i, K i →ₐ[R] B}
    {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (inclusion h)}
    {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (x : K i) (h : K i ≤ T) :
    iSupLift K dir f hf T hT (inclusion h x) = f i x 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ι : Type u_4} [Nonempty ι] (K : ι → Subalgebra R A) {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (x : ↥(K i)) (h : K i ≤ T)
Goal: (Subalgebra.iSupLift K dir f hf T hT) ((Subalgebra.inclusion h) x) = (f i) x
-- Subalgebra.iSupLift_comp_inclusion
@[simp]
theorem iSupLift_comp_inclusion {dir : Directed (· ≤ ·) K} {f : ∀ i, K i →ₐ[R] B}
    {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (inclusion h)}
    {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (h : K i ≤ T) :
    (iSupLift K dir f hf T hT).comp (inclusion h) = f i 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ι : Type u_4} [Nonempty ι] (K : ι → Subalgebra R A) {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (h : K i ≤ T)
Goal: (Subalgebra.iSupLift K dir f hf T hT).comp (Subalgebra.inclusion h) = f i
-- Subalgebra.iSupLift_mk
@[simp]
theorem iSupLift_mk {dir : Directed (· ≤ ·) K} {f : ∀ i, K i →ₐ[R] B}
    {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (inclusion h)}
    {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (x : K i) (hx : (x : A) ∈ T) :
    iSupLift K dir f hf T hT ⟨x, hx⟩ = f i x 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ι : Type u_4} [Nonempty ι] (K : ι → Subalgebra R A) {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (x : ↥(K i)) (hx : ↑x ∈ T)
Goal: (Subalgebra.iSupLift K dir f hf T hT) ⟨↑x, hx⟩ = (f i) x
-- Subalgebra.iSupLift_of_mem
theorem iSupLift_of_mem {dir : Directed (· ≤ ·) K} {f : ∀ i, K i →ₐ[R] B}
    {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (inclusion h)}
    {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (x : T) (hx : (x : A) ∈ K i) :
    iSupLift K dir f hf T hT x = f i ⟨x, hx⟩ 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ι : Type u_4} [Nonempty ι] (K : ι → Subalgebra R A) {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T = iSup K} {i : ι} (x : ↥T) (hx : ↑x ∈ K i)
Goal: (Subalgebra.iSupLift K dir f hf T hT) x = (f i) ⟨↑x, hx⟩
-- Units.mem_posSubgroup
@[simp]
theorem Units.mem_posSubgroup {R : Type*} [LinearOrderedSemiring R] (u : Rˣ) :
    u ∈ Units.posSubgroup R ↔ (0 : R) < u 
Arguments: {R : Type u_1} [LinearOrderedSemiring R] (u : Rˣ)
Goal: u ∈ Units.posSubgroup R ↔ 0 < ↑u
-- Algebra.algebraMap_pUnit
@[simp]
theorem algebraMap_pUnit (r : R) : algebraMap R PUnit r = PUnit.unit 
Arguments: {R : Type u} [CommSemiring R] (r : R)
Goal: (algebraMap R PUnit.{u_2 + 1}) r = PUnit.unit
-- ULift.algebraMap_eq
theorem _root_.ULift.algebraMap_eq (r : R) :
    algebraMap R (ULift A) r = ULift.up (algebraMap R A r) 
Arguments: {R : Type u} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] (r : R)
Goal: (algebraMap R (ULift.{u_2, w} A)) r = { down := (algebraMap R A) r }
-- ULift.down_algebraMap
@[simp]
theorem _root_.ULift.down_algebraMap (r : R) : (algebraMap R (ULift A) r).down = algebraMap R A r 
Arguments: {R : Type u} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] (r : R)
Goal: ((algebraMap R (ULift.{u_2, w} A)) r).down = (algebraMap R A) r
-- Algebra.algebraMap_ofSubsemiring
theorem algebraMap_ofSubsemiring (S : Subsemiring R) :
    (algebraMap S R : S →+* R) = Subsemiring.subtype S 
Arguments: {R : Type u} [CommSemiring R] (S : Subsemiring R)
Goal: algebraMap (↥S) R = S.subtype
-- Algebra.coe_algebraMap_ofSubsemiring
theorem coe_algebraMap_ofSubsemiring (S : Subsemiring R) : (algebraMap S R : S → R) = Subtype.val 
Arguments: {R : Type u} [CommSemiring R] (S : Subsemiring R)
Goal: ⇑(algebraMap (↥S) R) = Subtype.val
-- Algebra.algebraMap_ofSubsemiring_apply
theorem algebraMap_ofSubsemiring_apply (S : Subsemiring R) (x : S) : algebraMap S R x = x 
Arguments: {R : Type u} [CommSemiring R] (S : Subsemiring R) (x : ↥S)
Goal: (algebraMap (↥S) R) x = ↑x
-- Algebra.algebraMap_ofSubring
theorem algebraMap_ofSubring {R : Type*} [CommRing R] (S : Subring R) :
    (algebraMap S R : S →+* R) = Subring.subtype S 
Arguments: {R : Type u_2} [CommRing R] (S : Subring R)
Goal: algebraMap (↥S) R = S.subtype
-- Algebra.coe_algebraMap_ofSubring
theorem coe_algebraMap_ofSubring {R : Type*} [CommRing R] (S : Subring R) :
    (algebraMap S R : S → R) = Subtype.val 
Arguments: {R : Type u_2} [CommRing R] (S : Subring R)
Goal: ⇑(algebraMap (↥S) R) = Subtype.val
-- Algebra.algebraMap_ofSubring_apply
theorem algebraMap_ofSubring_apply {R : Type*} [CommRing R] (S : Subring R) (x : S) :
    algebraMap S R x = x 
Arguments: {R : Type u_2} [CommRing R] (S : Subring R) (x : ↥S)
Goal: (algebraMap (↥S) R) x = ↑x
-- Algebra.mem_algebraMapSubmonoid_of_mem
theorem mem_algebraMapSubmonoid_of_mem {S : Type*} [Semiring S] [Algebra R S] {M : Submonoid R}
    (x : M) : algebraMap R S x ∈ algebraMapSubmonoid S M 
Arguments: {R : Type u} [CommSemiring R] {S : Type u_2} [Semiring S] [Algebra R S] {M : Submonoid R} (x : ↥M)
Goal: (algebraMap R S) ↑x ∈ Algebra.algebraMapSubmonoid S M
-- Algebra.mul_sub_algebraMap_commutes
theorem mul_sub_algebraMap_commutes [Ring A] [Algebra R A] (x : A) (r : R) :
    x * (x - algebraMap R A r) = (x - algebraMap R A r) * x 
Arguments: {R : Type u} {A : Type w} [CommSemiring R] [Ring A] [Algebra R A] (x : A) (r : R)
Goal: x * (x - (algebraMap R A) r) = (x - (algebraMap R A) r) * x
-- Algebra.mul_sub_algebraMap_pow_commutes
theorem mul_sub_algebraMap_pow_commutes [Ring A] [Algebra R A] (x : A) (r : R) (n : ℕ) :
    x * (x - algebraMap R A r) ^ n = (x - algebraMap R A r) ^ n * x 
Arguments: {R : Type u} {A : Type w} [CommSemiring R] [Ring A] [Algebra R A] (x : A) (r : R) (n : ℕ)
Goal: x * (x - (algebraMap R A) r) ^ n = (x - (algebraMap R A) r) ^ n * x
-- Module.algebraMap_end_eq_smul_id
theorem algebraMap_end_eq_smul_id (a : R) : algebraMap R (End S M) a = a • LinearMap.id 
Arguments: (R : Type u) (S : Type v) (M : Type w) [CommSemiring R] [Semiring S] [AddCommMonoid M] [Module R M] [Module S M] [SMulCommClass S R M] [SMul R S] [IsScalarTower R S M] (a : R)
Goal: (algebraMap R (Module.End S M)) a = a • LinearMap.id
-- Module.algebraMap_end_apply
@[simp]
theorem algebraMap_end_apply (a : R) (m : M) : algebraMap R (End S M) a m = a • m 
Arguments: (R : Type u) (S : Type v) (M : Type w) [CommSemiring R] [Semiring S] [AddCommMonoid M] [Module R M] [Module S M] [SMulCommClass S R M] [SMul R S] [IsScalarTower R S M] (a : R) (m : M)
Goal: ((algebraMap R (Module.End S M)) a) m = a • m
-- Module.ker_algebraMap_end
@[simp]
theorem ker_algebraMap_end (K : Type u) (V : Type v) [Field K] [AddCommGroup V] [Module K V] (a : K)
    (ha : a ≠ 0) : LinearMap.ker ((algebraMap K (End K V)) a) = ⊥ 
Arguments: (K : Type u) (V : Type v) [Field K] [AddCommGroup V] [Module K V] (a : K) (ha : a ≠ 0)
Goal: LinearMap.ker ((algebraMap K (Module.End K V)) a) = ⊥
-- Module.End_algebraMap_isUnit_inv_apply_eq_iff
theorem End_algebraMap_isUnit_inv_apply_eq_iff {x : R}
    (h : IsUnit (algebraMap R (Module.End S M) x)) (m m' : M) :
    (↑(h.unit⁻¹) : Module.End S M) m = m' ↔ m = x • m' 
Arguments: {R : Type u} (S : Type v) {M : Type w} [CommSemiring R] [Semiring S] [AddCommMonoid M] [Module R M] [Module S M] [SMulCommClass S R M] [SMul R S] [IsScalarTower R S M] {x : R} (h : IsUnit ((algebraMap R (Module.End S M)) x)) (m m' : M)
Goal: ↑h.unit⁻¹ m = m' ↔ m = x • m'
-- Module.End_algebraMap_isUnit_inv_apply_eq_iff'
theorem End_algebraMap_isUnit_inv_apply_eq_iff' {x : R}
    (h : IsUnit (algebraMap R (Module.End S M) x)) (m m' : M) :
    m' = (↑h.unit⁻¹ : Module.End S M) m ↔ m = x • m' 
Arguments: {R : Type u} (S : Type v) {M : Type w} [CommSemiring R] [Semiring S] [AddCommMonoid M] [Module R M] [Module S M] [SMulCommClass S R M] [SMul R S] [IsScalarTower R S M] {x : R} (h : IsUnit ((algebraMap R (Module.End S M)) x)) (m m' : M)
Goal: m' = ↑h.unit⁻¹ m ↔ m = x • m'
-- LinearMap.map_algebraMap_mul
theorem map_algebraMap_mul (f : A →ₗ[R] B) (a : A) (r : R) :
    f (algebraMap R A r * a) = algebraMap R B r * f a 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₗ[R] B) (a : A) (r : R)
Goal: f ((algebraMap R A) r * a) = (algebraMap R B) r * f a
-- LinearMap.map_mul_algebraMap
theorem map_mul_algebraMap (f : A →ₗ[R] B) (a : A) (r : R) :
    f (a * algebraMap R A r) = f a * algebraMap R B r 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₗ[R] B) (a : A) (r : R)
Goal: f (a * (algebraMap R A) r) = f a * (algebraMap R B) r
-- algebraMap_int_eq
@[simp]
theorem algebraMap_int_eq : algebraMap ℤ R = Int.castRingHom R 
Arguments: (R : Type u_1) [Ring R]
Goal: algebraMap ℤ R = Int.castRingHom R
-- NoZeroSMulDivisors.of_algebraMap_injective
theorem of_algebraMap_injective [CommSemiring R] [Semiring A] [Algebra R A] [NoZeroDivisors A]
    (h : Function.Injective (algebraMap R A)) : NoZeroSMulDivisors R A 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] [NoZeroDivisors A] (h : Function.Injective ⇑(algebraMap R A))
Goal: NoZeroSMulDivisors R A
-- NoZeroSMulDivisors.algebraMap_injective
theorem algebraMap_injective [CommRing R] [Ring A] [Nontrivial A] [Algebra R A]
    [NoZeroSMulDivisors R A] : Function.Injective (algebraMap R A) 
Arguments: (R : Type u_1) (A : Type u_2) [CommRing R] [Ring A] [Nontrivial A] [Algebra R A] [NoZeroSMulDivisors R A]
Goal: Function.Injective ⇑(algebraMap R A)
-- NeZero.of_noZeroSMulDivisors
theorem _root_.NeZero.of_noZeroSMulDivisors (n : ℕ) [CommRing R] [NeZero (n : R)] [Ring A]
    [Nontrivial A] [Algebra R A] [NoZeroSMulDivisors R A] : NeZero (n : A) 
Arguments: (R : Type u_1) (A : Type u_2) (n : ℕ) [CommRing R] [NeZero ↑n] [Ring A] [Nontrivial A] [Algebra R A] [NoZeroSMulDivisors R A]
Goal: NeZero ↑n
-- NoZeroSMulDivisors.iff_algebraMap_injective
theorem iff_algebraMap_injective [CommRing R] [Ring A] [IsDomain A] [Algebra R A] :
    NoZeroSMulDivisors R A ↔ Function.Injective (algebraMap R A) 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [Ring A] [IsDomain A] [Algebra R A]
Goal: NoZeroSMulDivisors R A ↔ Function.Injective ⇑(algebraMap R A)
-- algebra_compatible_smul
theorem algebra_compatible_smul (r : R) (m : M) : r • m = (algebraMap R A) r • m 
Arguments: {R : Type u_1} [CommSemiring R] (A : Type u_2) [Semiring A] [Algebra R A] {M : Type u_3} [AddCommMonoid M] [Module A M] [Module R M] [IsScalarTower R A M] (r : R) (m : M)
Goal: r • m = (algebraMap R A) r • m
-- algebraMap_smul
@[simp]
theorem algebraMap_smul (r : R) (m : M) : (algebraMap R A) r • m = r • m 
Arguments: {R : Type u_1} [CommSemiring R] (A : Type u_2) [Semiring A] [Algebra R A] {M : Type u_3} [AddCommMonoid M] [Module A M] [Module R M] [IsScalarTower R A M] (r : R) (m : M)
Goal: (algebraMap R A) r • m = r • m
-- NoZeroSMulDivisors.trans
theorem NoZeroSMulDivisors.trans (R A M : Type*) [CommRing R] [Ring A] [IsDomain A] [Algebra R A]
    [AddCommGroup M] [Module R M] [Module A M] [IsScalarTower R A M] [NoZeroSMulDivisors R A]
    [NoZeroSMulDivisors A M] : NoZeroSMulDivisors R M 
Arguments: (R : Type u_5) (A : Type u_6) (M : Type u_7) [CommRing R] [Ring A] [IsDomain A] [Algebra R A] [AddCommGroup M] [Module R M] [Module A M] [IsScalarTower R A M] [NoZeroSMulDivisors R A] [NoZeroSMulDivisors A M]
Goal: NoZeroSMulDivisors R M
-- smul_algebra_smul_comm
theorem smul_algebra_smul_comm (r : R) (a : A) (m : M) : a • r • m = r • a • m 
Arguments: {R : Type u_1} [CommSemiring R] {A : Type u_2} [Semiring A] [Algebra R A] {M : Type u_3} [AddCommMonoid M] [Module A M] [Module R M] [IsScalarTower R A M] (r : R) (a : A) (m : M)
Goal: a • r • m = r • a • m
-- LinearMap.ker_restrictScalars
@[simp]
theorem LinearMap.ker_restrictScalars (f : M →ₗ[S] N) :
    LinearMap.ker (f.restrictScalars R) = f.ker.restrictScalars R 
Arguments: (R : Type u_1) {S : Type u_2} {M : Type u_3} {N : Type u_4} [Semiring R] [Semiring S] [SMul R S] [AddCommMonoid M] [Module R M] [Module S M] [IsScalarTower R S M] [AddCommMonoid N] [Module R N] [Module S N] [IsScalarTower R S N] (f : M →ₗ[S] N)
Goal: LinearMap.ker (↑R f) = Submodule.restrictScalars R (LinearMap.ker f)
-- IsUnit.algebraMap_of_algebraMap
lemma IsUnit.algebraMap_of_algebraMap (f : A →ₗ[R] B) (hf : f 1 = 1) {r : R}
    (h : IsUnit (algebraMap R A r)) : IsUnit (algebraMap R B r) 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A →ₗ[R] B) (hf : f 1 = 1) {r : R} (h : IsUnit ((algebraMap R A) r))
Goal: IsUnit ((algebraMap R B) r)
-- injective_algebraMap_of_linearMap
theorem injective_algebraMap_of_linearMap (hb : Function.Injective b) :
    Function.Injective (algebraMap F E) 
Arguments: {F : Type u_1} {E : Type u_2} [CommSemiring F] [Semiring E] [Algebra F E] (b : F →ₗ[F] E) (hb : Function.Injective ⇑b)
Goal: Function.Injective ⇑(algebraMap F E)
-- surjective_algebraMap_of_linearMap
theorem surjective_algebraMap_of_linearMap (hb : Function.Surjective b) :
    Function.Surjective (algebraMap F E) 
Arguments: {F : Type u_1} {E : Type u_2} [CommSemiring F] [Semiring E] [Algebra F E] (b : F →ₗ[F] E) (hb : Function.Surjective ⇑b)
Goal: Function.Surjective ⇑(algebraMap F E)
-- bijective_algebraMap_of_linearMap
theorem bijective_algebraMap_of_linearMap (hb : Function.Bijective b) :
    Function.Bijective (algebraMap F E) 
Arguments: {F : Type u_1} {E : Type u_2} [CommSemiring F] [Semiring E] [Algebra F E] (b : F →ₗ[F] E) (hb : Function.Bijective ⇑b)
Goal: Function.Bijective ⇑(algebraMap F E)
-- bijective_algebraMap_of_linearEquiv
theorem bijective_algebraMap_of_linearEquiv (b : F ≃ₗ[F] E) :
    Function.Bijective (algebraMap F E) 
Arguments: {F : Type u_1} {E : Type u_2} [CommSemiring F] [Semiring E] [Algebra F E] (b : F ≃ₗ[F] E)
Goal: Function.Bijective ⇑(algebraMap F E)
-- LinearMap.extendScalarsOfSurjective_apply
@[simp]
lemma LinearMap.extendScalarsOfSurjective_apply (l : M →ₗ[R] N) (x) :
    l.extendScalarsOfSurjective h x = l x 
Arguments: {R : Type u_1} {S : Type u_4} [CommSemiring R] [Semiring S] [Algebra R S] {M : Type u_2} {N : Type u_3} [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module S M] [IsScalarTower R S M] [Module R N] [Module S N] [IsScalarTower R S N] (h : Function.Surjective ⇑(algebraMap R S)) (l : M →ₗ[R] N) (x : M)
Goal: (LinearMap.extendScalarsOfSurjective h l) x = l x
-- LinearEquiv.extendScalarsOfSurjective_apply
@[simp]
lemma LinearEquiv.extendScalarsOfSurjective_apply (f : M ≃ₗ[R] N) (x) :
    f.extendScalarsOfSurjective h x = f x 
Arguments: {R : Type u_1} {S : Type u_4} [CommSemiring R] [Semiring S] [Algebra R S] {M : Type u_2} {N : Type u_3} [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module S M] [IsScalarTower R S M] [Module R N] [Module S N] [IsScalarTower R S N] (h : Function.Surjective ⇑(algebraMap R S)) (f : M ≃ₗ[R] N) (x : M)
Goal: (LinearEquiv.extendScalarsOfSurjective h f) x = f x
-- LinearEquiv.extendScalarsOfSurjective_symm
@[simp]
lemma LinearEquiv.extendScalarsOfSurjective_symm (f : M ≃ₗ[R] N) :
    (f.extendScalarsOfSurjective h).symm = f.symm.extendScalarsOfSurjective h 
Arguments: {R : Type u_1} {S : Type u_4} [CommSemiring R] [Semiring S] [Algebra R S] {M : Type u_2} {N : Type u_3} [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module S M] [IsScalarTower R S M] [Module R N] [Module S N] [IsScalarTower R S N] (h : Function.Surjective ⇑(algebraMap R S)) (f : M ≃ₗ[R] N)
Goal: (LinearEquiv.extendScalarsOfSurjective h f).symm = LinearEquiv.extendScalarsOfSurjective h f.symm
-- RingEquiv.piFinTwo_symm_apply
@[simps]
def RingEquiv.piFinTwo (R : Fin 2 → Type*) [∀ i, Semiring (R i)] :
    (∀ i : Fin 2, R i) ≃+* R 0 × R 1 
Arguments: (R : Fin 2 → Type u_1) [(i : Fin 2) → Semiring (R i)]
Goal: ∀ (a : R 0 × R 1) (i : Fin 2), (RingEquiv.piFinTwo R).symm a i = (piFinTwoEquiv R).invFun a i
-- RingEquiv.piFinTwo_apply
@[simps]
def RingEquiv.piFinTwo (R : Fin 2 → Type*) [∀ i, Semiring (R i)] :
    (∀ i : Fin 2, R i) ≃+* R 0 × R 1 
Arguments: (R : Fin 2 → Type u_1) [(i : Fin 2) → Semiring (R i)] (a : (i : Fin 2) → R i)
Goal: (RingEquiv.piFinTwo R) a = (piFinTwoEquiv R) a
-- Subring.op_toSubsemiring
@[simps toSubsemiring]
protected def op (S : Subring R) : Subring Rᵐᵒᵖ 
Arguments: {R : Type u_2} [Ring R] (S : Subring R)
Goal: S.op.toSubsemiring = S.op
-- Subring.op_coe
@[simp, norm_cast]
theorem op_coe (S : Subring R) : S.op = MulOpposite.unop ⁻¹' (S : Set R) 
Arguments: {R : Type u_2} [Ring R] (S : Subring R)
Goal: ↑S.op = MulOpposite.unop ⁻¹' ↑S
-- Subring.mem_op
@[simp]
theorem mem_op {x : Rᵐᵒᵖ} {S : Subring R} : x ∈ S.op ↔ x.unop ∈ S 
Arguments: {R : Type u_2} [Ring R] {x : Rᵐᵒᵖ} {S : Subring R}
Goal: x ∈ S.op ↔ MulOpposite.unop x ∈ S
-- Subring.unop_toSubsemiring
@[simps toSubsemiring]
protected def unop (S : Subring Rᵐᵒᵖ) : Subring R 
Arguments: {R : Type u_2} [Ring R] (S : Subring Rᵐᵒᵖ)
Goal: S.unop.toSubsemiring = S.unop
-- Subring.unop_coe
@[simp, norm_cast]
theorem unop_coe (S : Subring Rᵐᵒᵖ) : S.unop = MulOpposite.op ⁻¹' (S : Set Rᵐᵒᵖ) 
Arguments: {R : Type u_2} [Ring R] (S : Subring Rᵐᵒᵖ)
Goal: ↑S.unop = MulOpposite.op ⁻¹' ↑S
-- Subring.mem_unop
@[simp]
theorem mem_unop {x : R} {S : Subring Rᵐᵒᵖ} : x ∈ S.unop ↔ MulOpposite.op x ∈ S 
Arguments: {R : Type u_2} [Ring R] {x : R} {S : Subring Rᵐᵒᵖ}
Goal: x ∈ S.unop ↔ MulOpposite.op x ∈ S
-- Subring.unop_op
@[simp]
theorem unop_op (S : Subring R) : S.op.unop = S 
Arguments: {R : Type u_2} [Ring R] (S : Subring R)
Goal: S.op.unop = S
-- Subring.op_unop
@[simp]
theorem op_unop (S : Subring Rᵐᵒᵖ) : S.unop.op = S 
Arguments: {R : Type u_2} [Ring R] (S : Subring Rᵐᵒᵖ)
Goal: S.unop.op = S
-- Subring.op_le_iff
theorem op_le_iff {S₁ : Subring R} {S₂ : Subring Rᵐᵒᵖ} : S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop 
Arguments: {R : Type u_2} [Ring R] {S₁ : Subring R} {S₂ : Subring Rᵐᵒᵖ}
Goal: S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop
-- Subring.le_op_iff
theorem le_op_iff {S₁ : Subring Rᵐᵒᵖ} {S₂ : Subring R} : S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂ 
Arguments: {R : Type u_2} [Ring R] {S₁ : Subring Rᵐᵒᵖ} {S₂ : Subring R}
Goal: S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂
-- Subring.op_le_op_iff
@[simp]
theorem op_le_op_iff {S₁ S₂ : Subring R} : S₁.op ≤ S₂.op ↔ S₁ ≤ S₂ 
Arguments: {R : Type u_2} [Ring R] {S₁ S₂ : Subring R}
Goal: S₁.op ≤ S₂.op ↔ S₁ ≤ S₂
-- Subring.unop_le_unop_iff
@[simp]
theorem unop_le_unop_iff {S₁ S₂ : Subring Rᵐᵒᵖ} : S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂ 
Arguments: {R : Type u_2} [Ring R] {S₁ S₂ : Subring Rᵐᵒᵖ}
Goal: S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂
-- Subring.opEquiv_apply
@[simps]
def opEquiv : Subring R ≃o Subring Rᵐᵒᵖ 
Arguments: {R : Type u_2} [Ring R] (S : Subring R)
Goal: Subring.opEquiv S = S.op