ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- AddMonoidHom.addSubgroupMap_surjective
@[to_additive]
theorem subgroupMap_surjective (f : G →* G') (H : Subgroup G) :
    Function.Surjective (f.subgroupMap H) 
Arguments: {G : Type u_1} {G' : Type u_2} [AddGroup G] [AddGroup G'] (f : G →+ G') (H : AddSubgroup G)
Goal: Function.Surjective ⇑(f.addSubgroupMap H)
-- MonoidHom.subgroupMap_surjective
@[to_additive]
theorem subgroupMap_surjective (f : G →* G') (H : Subgroup G) :
    Function.Surjective (f.subgroupMap H) 
Arguments: {G : Type u_1} {G' : Type u_2} [Group G] [Group G'] (f : G →* G') (H : Subgroup G)
Goal: Function.Surjective ⇑(f.subgroupMap H)
-- MulEquiv.subgroupCongr_apply
@[to_additive (attr := simp)]
lemma subgroupCongr_apply (h : H = K) (x) :
    (MulEquiv.subgroupCongr h x : G) = x 
Arguments: {G : Type u_1} [Group G] {H K : Subgroup G} (h : H = K) (x : ↥H)
Goal: ↑((MulEquiv.subgroupCongr h) x) = ↑x
-- AddEquiv.addSubgroupCongr_apply
@[to_additive (attr := simp)]
lemma subgroupCongr_apply (h : H = K) (x) :
    (MulEquiv.subgroupCongr h x : G) = x 
Arguments: {G : Type u_1} [AddGroup G] {H K : AddSubgroup G} (h : H = K) (x : ↥H)
Goal: ↑((AddEquiv.addSubgroupCongr h) x) = ↑x
-- AddEquiv.addSubgroupCongr_symm_apply
@[to_additive (attr := simp)]
lemma subgroupCongr_symm_apply (h : H = K) (x) :
    ((MulEquiv.subgroupCongr h).symm x : G) = x 
Arguments: {G : Type u_1} [AddGroup G] {H K : AddSubgroup G} (h : H = K) (x : ↥K)
Goal: ↑((AddEquiv.addSubgroupCongr h).symm x) = ↑x
-- MulEquiv.subgroupCongr_symm_apply
@[to_additive (attr := simp)]
lemma subgroupCongr_symm_apply (h : H = K) (x) :
    ((MulEquiv.subgroupCongr h).symm x : G) = x 
Arguments: {G : Type u_1} [Group G] {H K : Subgroup G} (h : H = K) (x : ↥K)
Goal: ↑((MulEquiv.subgroupCongr h).symm x) = ↑x
-- AddEquiv.coe_addSubgroupMap_apply
@[to_additive (attr := simp)]
theorem coe_subgroupMap_apply (e : G ≃* G') (H : Subgroup G) (g : H) :
    ((subgroupMap e H g : H.map (e : G →* G')) : G') = e g 
Arguments: {G : Type u_1} {G' : Type u_2} [AddGroup G] [AddGroup G'] (e : G ≃+ G') (H : AddSubgroup G) (g : ↥H)
Goal: ↑((e.addSubgroupMap H) g) = e ↑g
-- MulEquiv.coe_subgroupMap_apply
@[to_additive (attr := simp)]
theorem coe_subgroupMap_apply (e : G ≃* G') (H : Subgroup G) (g : H) :
    ((subgroupMap e H g : H.map (e : G →* G')) : G') = e g 
Arguments: {G : Type u_1} {G' : Type u_2} [Group G] [Group G'] (e : G ≃* G') (H : Subgroup G) (g : ↥H)
Goal: ↑((e.subgroupMap H) g) = e ↑g
-- AddEquiv.addSubgroupMap_symm_apply
@[to_additive (attr := simp)]
theorem subgroupMap_symm_apply (e : G ≃* G') (H : Subgroup G) (g : H.map (e : G →* G')) :
    (e.subgroupMap H).symm g = ⟨e.symm g, SetLike.mem_coe.1 <| Set.mem_image_equiv.1 g.2⟩ 
Arguments: {G : Type u_1} {G' : Type u_2} [AddGroup G] [AddGroup G'] (e : G ≃+ G') (H : AddSubgroup G) (g : ↥(AddSubgroup.map (↑e) H))
Goal: (e.addSubgroupMap H).symm g = ⟨e.symm ↑g, ⋯⟩
-- MulEquiv.subgroupMap_symm_apply
@[to_additive (attr := simp)]
theorem subgroupMap_symm_apply (e : G ≃* G') (H : Subgroup G) (g : H.map (e : G →* G')) :
    (e.subgroupMap H).symm g = ⟨e.symm g, SetLike.mem_coe.1 <| Set.mem_image_equiv.1 g.2⟩ 
Arguments: {G : Type u_1} {G' : Type u_2} [Group G] [Group G'] (e : G ≃* G') (H : Subgroup G) (g : ↥(Subgroup.map (↑e) H))
Goal: (e.subgroupMap H).symm g = ⟨e.symm ↑g, ⋯⟩
-- AddSubgroup.equivMapOfInjective_coe_addEquiv
@[to_additive (attr := simp)]
theorem equivMapOfInjective_coe_mulEquiv (H : Subgroup G) (e : G ≃* G') :
    H.equivMapOfInjective (e : G →* G') (EquivLike.injective e) = e.subgroupMap H 
Arguments: {G : Type u_1} {G' : Type u_2} [AddGroup G] [AddGroup G'] (H : AddSubgroup G) (e : G ≃+ G')
Goal: H.equivMapOfInjective ↑e ⋯ = e.addSubgroupMap H
-- Subgroup.equivMapOfInjective_coe_mulEquiv
@[to_additive (attr := simp)]
theorem equivMapOfInjective_coe_mulEquiv (H : Subgroup G) (e : G ≃* G') :
    H.equivMapOfInjective (e : G →* G') (EquivLike.injective e) = e.subgroupMap H 
Arguments: {G : Type u_1} {G' : Type u_2} [Group G] [Group G'] (H : Subgroup G) (e : G ≃* G')
Goal: H.equivMapOfInjective ↑e ⋯ = e.subgroupMap H
-- Subgroup.mem_sup
@[to_additive]
theorem mem_sup : x ∈ s ⊔ t ↔ ∃ y ∈ s, ∃ z ∈ t, y * z = x 
Arguments: {C : Type u_6} [CommGroup C] {s t : Subgroup C} {x : C}
Goal: x ∈ s ⊔ t ↔ ∃ y ∈ s, ∃ z ∈ t, y * z = x
-- AddSubgroup.mem_sup
@[to_additive]
theorem mem_sup : x ∈ s ⊔ t ↔ ∃ y ∈ s, ∃ z ∈ t, y * z = x 
Arguments: {C : Type u_6} [AddCommGroup C] {s t : AddSubgroup C} {x : C}
Goal: x ∈ s ⊔ t ↔ ∃ y ∈ s, ∃ z ∈ t, y + z = x
-- Subgroup.mem_sup'
@[to_additive]
theorem mem_sup' : x ∈ s ⊔ t ↔ ∃ (y : s) (z : t), (y : C) * z = x 
Arguments: {C : Type u_6} [CommGroup C] {s t : Subgroup C} {x : C}
Goal: x ∈ s ⊔ t ↔ ∃ y z, ↑y * ↑z = x
-- AddSubgroup.mem_sup'
@[to_additive]
theorem mem_sup' : x ∈ s ⊔ t ↔ ∃ (y : s) (z : t), (y : C) * z = x 
Arguments: {C : Type u_6} [AddCommGroup C] {s t : AddSubgroup C} {x : C}
Goal: x ∈ s ⊔ t ↔ ∃ y z, ↑y + ↑z = x
-- Subgroup.mem_closure_pair
@[to_additive]
theorem mem_closure_pair {x y z : C} :
    z ∈ closure ({x, y} : Set C) ↔ ∃ m n : ℤ, x ^ m * y ^ n = z 
Arguments: {C : Type u_6} [CommGroup C] {x y z : C}
Goal: z ∈ Subgroup.closure {x, y} ↔ ∃ m n, x ^ m * y ^ n = z
-- AddSubgroup.mem_closure_pair
@[to_additive]
theorem mem_closure_pair {x y z : C} :
    z ∈ closure ({x, y} : Set C) ↔ ∃ m n : ℤ, x ^ m * y ^ n = z 
Arguments: {C : Type u_6} [AddCommGroup C] {x y z : C}
Goal: z ∈ AddSubgroup.closure {x, y} ↔ ∃ m n, m • x + n • y = z
-- Subgroup.normal_subgroupOf_iff
@[to_additive]
theorem normal_subgroupOf_iff {H K : Subgroup G} (hHK : H ≤ K) :
    (H.subgroupOf K).Normal ↔ ∀ h k, h ∈ H → k ∈ K → k * h * k⁻¹ ∈ H 
Arguments: {G : Type u_1} [Group G] {H K : Subgroup G} (hHK : H ≤ K)
Goal: (H.subgroupOf K).Normal ↔ ∀ (h k : G), h ∈ H → k ∈ K → k * h * k⁻¹ ∈ H
-- AddSubgroup.normal_addSubgroupOf_iff
@[to_additive]
theorem normal_subgroupOf_iff {H K : Subgroup G} (hHK : H ≤ K) :
    (H.subgroupOf K).Normal ↔ ∀ h k, h ∈ H → k ∈ K → k * h * k⁻¹ ∈ H 
Arguments: {G : Type u_1} [AddGroup G] {H K : AddSubgroup G} (hHK : H ≤ K)
Goal: (H.addSubgroupOf K).Normal ↔ ∀ (h k : G), h ∈ H → k ∈ K → k + h + -k ∈ H
-- AddSubgroup.inf_addSubgroupOf_inf_normal_of_right
@[to_additive]
theorem inf_subgroupOf_inf_normal_of_right (A B' B : Subgroup G) (hB : B' ≤ B)
    [hN : (B'.subgroupOf B).Normal] : ((A ⊓ B').subgroupOf (A ⊓ B)).Normal 
Arguments: {G : Type u_1} [AddGroup G] (A B' B : AddSubgroup G) (hB : B' ≤ B) [hN : (B'.addSubgroupOf B).Normal]
Goal: ((A ⊓ B').addSubgroupOf (A ⊓ B)).Normal
-- Subgroup.inf_subgroupOf_inf_normal_of_right
@[to_additive]
theorem inf_subgroupOf_inf_normal_of_right (A B' B : Subgroup G) (hB : B' ≤ B)
    [hN : (B'.subgroupOf B).Normal] : ((A ⊓ B').subgroupOf (A ⊓ B)).Normal 
Arguments: {G : Type u_1} [Group G] (A B' B : Subgroup G) (hB : B' ≤ B) [hN : (B'.subgroupOf B).Normal]
Goal: ((A ⊓ B').subgroupOf (A ⊓ B)).Normal
-- Subgroup.inf_subgroupOf_inf_normal_of_left
@[to_additive]
theorem inf_subgroupOf_inf_normal_of_left {A' A : Subgroup G} (B : Subgroup G) (hA : A' ≤ A)
    [hN : (A'.subgroupOf A).Normal] : ((A' ⊓ B).subgroupOf (A ⊓ B)).Normal 
Arguments: {G : Type u_1} [Group G] {A' A : Subgroup G} (B : Subgroup G) (hA : A' ≤ A) [hN : (A'.subgroupOf A).Normal]
Goal: ((A' ⊓ B).subgroupOf (A ⊓ B)).Normal
-- AddSubgroup.inf_addSubgroupOf_inf_normal_of_left
@[to_additive]
theorem inf_subgroupOf_inf_normal_of_left {A' A : Subgroup G} (B : Subgroup G) (hA : A' ≤ A)
    [hN : (A'.subgroupOf A).Normal] : ((A' ⊓ B).subgroupOf (A ⊓ B)).Normal 
Arguments: {G : Type u_1} [AddGroup G] {A' A : AddSubgroup G} (B : AddSubgroup G) (hA : A' ≤ A) [hN : (A'.addSubgroupOf A).Normal]
Goal: ((A' ⊓ B).addSubgroupOf (A ⊓ B)).Normal
-- AddSubgroup.addSubgroupOf_sup
@[to_additive]
theorem subgroupOf_sup (A A' B : Subgroup G) (hA : A ≤ B) (hA' : A' ≤ B) :
    (A ⊔ A').subgroupOf B = A.subgroupOf B ⊔ A'.subgroupOf B 
Arguments: {G : Type u_1} [AddGroup G] (A A' B : AddSubgroup G) (hA : A ≤ B) (hA' : A' ≤ B)
Goal: (A ⊔ A').addSubgroupOf B = A.addSubgroupOf B ⊔ A'.addSubgroupOf B
-- Subgroup.subgroupOf_sup
@[to_additive]
theorem subgroupOf_sup (A A' B : Subgroup G) (hA : A ≤ B) (hA' : A' ≤ B) :
    (A ⊔ A').subgroupOf B = A.subgroupOf B ⊔ A'.subgroupOf B 
Arguments: {G : Type u_1} [Group G] (A A' B : Subgroup G) (hA : A ≤ B) (hA' : A' ≤ B)
Goal: (A ⊔ A').subgroupOf B = A.subgroupOf B ⊔ A'.subgroupOf B
-- AddSubgroup.SubgroupNormal.mem_comm
@[to_additive]
theorem SubgroupNormal.mem_comm {H K : Subgroup G} (hK : H ≤ K) [hN : (H.subgroupOf K).Normal]
    {a b : G} (hb : b ∈ K) (h : a * b ∈ H) : b * a ∈ H 
Arguments: {G : Type u_1} [AddGroup G] {H K : AddSubgroup G} (hK : H ≤ K) [hN : (H.addSubgroupOf K).Normal] {a b : G} (hb : b ∈ K) (h : a + b ∈ H)
Goal: b + a ∈ H
-- Subgroup.SubgroupNormal.mem_comm
@[to_additive]
theorem SubgroupNormal.mem_comm {H K : Subgroup G} (hK : H ≤ K) [hN : (H.subgroupOf K).Normal]
    {a b : G} (hb : b ∈ K) (h : a * b ∈ H) : b * a ∈ H 
Arguments: {G : Type u_1} [Group G] {H K : Subgroup G} (hK : H ≤ K) [hN : (H.subgroupOf K).Normal] {a b : G} (hb : b ∈ K) (h : a * b ∈ H)
Goal: b * a ∈ H
-- Subgroup.commute_of_normal_of_disjoint
@[to_additive "Elements of disjoint, normal subgroups commute."]
theorem commute_of_normal_of_disjoint (H₁ H₂ : Subgroup G) (hH₁ : H₁.Normal) (hH₂ : H₂.Normal)
    (hdis : Disjoint H₁ H₂) (x y : G) (hx : x ∈ H₁) (hy : y ∈ H₂) : Commute x y 
Arguments: {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) (hH₁ : H₁.Normal) (hH₂ : H₂.Normal) (hdis : Disjoint H₁ H₂) (x y : G) (hx : x ∈ H₁) (hy : y ∈ H₂)
Goal: Commute x y
-- AddSubgroup.addCommute_of_normal_of_disjoint
@[to_additive "Elements of disjoint, normal subgroups commute."]
theorem commute_of_normal_of_disjoint (H₁ H₂ : Subgroup G) (hH₁ : H₁.Normal) (hH₂ : H₂.Normal)
    (hdis : Disjoint H₁ H₂) (x y : G) (hx : x ∈ H₁) (hy : y ∈ H₂) : Commute x y 
Arguments: {G : Type u_1} [AddGroup G] (H₁ H₂ : AddSubgroup G) (hH₁ : H₁.Normal) (hH₂ : H₂.Normal) (hdis : Disjoint H₁ H₂) (x y : G) (hx : x ∈ H₁) (hy : y ∈ H₂)
Goal: AddCommute x y
-- AddSubgroup.disjoint_def
@[to_additive]
theorem disjoint_def {H₁ H₂ : Subgroup G} : Disjoint H₁ H₂ ↔ ∀ {x : G}, x ∈ H₁ → x ∈ H₂ → x = 1 
Arguments: {G : Type u_1} [AddGroup G] {H₁ H₂ : AddSubgroup G}
Goal: Disjoint H₁ H₂ ↔ ∀ {x : G}, x ∈ H₁ → x ∈ H₂ → x = 0
-- Subgroup.disjoint_def
@[to_additive]
theorem disjoint_def {H₁ H₂ : Subgroup G} : Disjoint H₁ H₂ ↔ ∀ {x : G}, x ∈ H₁ → x ∈ H₂ → x = 1 
Arguments: {G : Type u_1} [Group G] {H₁ H₂ : Subgroup G}
Goal: Disjoint H₁ H₂ ↔ ∀ {x : G}, x ∈ H₁ → x ∈ H₂ → x = 1
-- AddSubgroup.disjoint_def'
@[to_additive]
theorem disjoint_def' {H₁ H₂ : Subgroup G} :
    Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x = y → x = 1 
Arguments: {G : Type u_1} [AddGroup G] {H₁ H₂ : AddSubgroup G}
Goal: Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x = y → x = 0
-- Subgroup.disjoint_def'
@[to_additive]
theorem disjoint_def' {H₁ H₂ : Subgroup G} :
    Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x = y → x = 1 
Arguments: {G : Type u_1} [Group G] {H₁ H₂ : Subgroup G}
Goal: Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x = y → x = 1
-- Subgroup.disjoint_iff_mul_eq_one
@[to_additive]
theorem disjoint_iff_mul_eq_one {H₁ H₂ : Subgroup G} :
    Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x * y = 1 → x = 1 ∧ y = 1 
Arguments: {G : Type u_1} [Group G] {H₁ H₂ : Subgroup G}
Goal: Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x * y = 1 → x = 1 ∧ y = 1
-- AddSubgroup.disjoint_iff_add_eq_zero
@[to_additive]
theorem disjoint_iff_mul_eq_one {H₁ H₂ : Subgroup G} :
    Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x * y = 1 → x = 1 ∧ y = 1 
Arguments: {G : Type u_1} [AddGroup G] {H₁ H₂ : AddSubgroup G}
Goal: Disjoint H₁ H₂ ↔ ∀ {x y : G}, x ∈ H₁ → y ∈ H₂ → x + y = 0 → x = 0 ∧ y = 0
-- Subgroup.mul_injective_of_disjoint
@[to_additive]
theorem mul_injective_of_disjoint {H₁ H₂ : Subgroup G} (h : Disjoint H₁ H₂) :
    Function.Injective (fun g => g.1 * g.2 : H₁ × H₂ → G) 
Arguments: {G : Type u_1} [Group G] {H₁ H₂ : Subgroup G} (h : Disjoint H₁ H₂)
Goal: Function.Injective fun g => ↑g.1 * ↑g.2
-- AddSubgroup.add_injective_of_disjoint
@[to_additive]
theorem mul_injective_of_disjoint {H₁ H₂ : Subgroup G} (h : Disjoint H₁ H₂) :
    Function.Injective (fun g => g.1 * g.2 : H₁ × H₂ → G) 
Arguments: {G : Type u_1} [AddGroup G] {H₁ H₂ : AddSubgroup G} (h : Disjoint H₁ H₂)
Goal: Function.Injective fun g => ↑g.1 + ↑g.2
-- IsConj.normalClosure_eq_top_of
theorem normalClosure_eq_top_of {N : Subgroup G} [hn : N.Normal] {g g' : G} {hg : g ∈ N}
    {hg' : g' ∈ N} (hc : IsConj g g') (ht : normalClosure ({⟨g, hg⟩} : Set N) = ⊤) :
    normalClosure ({⟨g', hg'⟩} : Set N) = ⊤ 
Arguments: {G : Type u_1} [Group G] {N : Subgroup G} [hn : N.Normal] {g g' : G} {hg : g ∈ N} {hg' : g' ∈ N} (hc : IsConj g g') (ht : Subgroup.normalClosure {⟨g, hg⟩} = ⊤)
Goal: Subgroup.normalClosure {⟨g', hg'⟩} = ⊤
-- ConjClasses.mem_noncenter
@[simp] lemma mem_noncenter {G} [Monoid G] (g : ConjClasses G) :
  g ∈ noncenter G ↔ g.carrier.Nontrivial 
Arguments: {G : Type u_6} [Monoid G] (g : ConjClasses G)
Goal: g ∈ ConjClasses.noncenter G ↔ g.carrier.Nontrivial
-- Subsemiring.pointwise_smul_def
theorem pointwise_smul_def {a : M} (S : Subsemiring R) :
    a • S = S.map (MulSemiringAction.toRingHom _ _ a) 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] {a : M} (S : Subsemiring R)
Goal: a • S = Subsemiring.map (MulSemiringAction.toRingHom M R a) S
-- Subsemiring.coe_pointwise_smul
@[simp]
theorem coe_pointwise_smul (m : M) (S : Subsemiring R) : ↑(m • S) = m • (S : Set R) 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] (m : M) (S : Subsemiring R)
Goal: ↑(m • S) = m • ↑S
-- Subsemiring.pointwise_smul_toAddSubmonoid
@[simp]
theorem pointwise_smul_toAddSubmonoid (m : M) (S : Subsemiring R) :
    (m • S).toAddSubmonoid = m • S.toAddSubmonoid 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] (m : M) (S : Subsemiring R)
Goal: (m • S).toAddSubmonoid = m • S.toAddSubmonoid
-- Subsemiring.smul_mem_pointwise_smul
theorem smul_mem_pointwise_smul (m : M) (r : R) (S : Subsemiring R) : r ∈ S → m • r ∈ m • S 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] (m : M) (r : R) (S : Subsemiring R)
Goal: r ∈ S → m • r ∈ m • S
-- Subsemiring.mem_smul_pointwise_iff_exists
theorem mem_smul_pointwise_iff_exists (m : M) (r : R) (S : Subsemiring R) :
    r ∈ m • S ↔ ∃ s : R, s ∈ S ∧ m • s = r 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] (m : M) (r : R) (S : Subsemiring R)
Goal: r ∈ m • S ↔ ∃ s ∈ S, m • s = r
-- Subsemiring.smul_bot
@[simp]
theorem smul_bot (a : M) : a • (⊥ : Subsemiring R) = ⊥ 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] (a : M)
Goal: a • ⊥ = ⊥
-- Subsemiring.smul_sup
theorem smul_sup (a : M) (S T : Subsemiring R) : a • (S ⊔ T) = a • S ⊔ a • T 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] (a : M) (S T : Subsemiring R)
Goal: a • (S ⊔ T) = a • S ⊔ a • T
-- Subsemiring.smul_closure
theorem smul_closure (a : M) (s : Set R) : a • closure s = closure (a • s) 
Arguments: {M : Type u_1} {R : Type u_2} [Monoid M] [Semiring R] [MulSemiringAction M R] (a : M) (s : Set R)
Goal: a • Subsemiring.closure s = Subsemiring.closure (a • s)
-- Subsemiring.smul_mem_pointwise_smul_iff
@[simp]
theorem smul_mem_pointwise_smul_iff {a : M} {S : Subsemiring R} {x : R} : a • x ∈ a • S ↔ x ∈ S 
Arguments: {M : Type u_1} {R : Type u_2} [Group M] [Semiring R] [MulSemiringAction M R] {a : M} {S : Subsemiring R} {x : R}
Goal: a • x ∈ a • S ↔ x ∈ S
-- Subsemiring.mem_pointwise_smul_iff_inv_smul_mem
theorem mem_pointwise_smul_iff_inv_smul_mem {a : M} {S : Subsemiring R} {x : R} :
    x ∈ a • S ↔ a⁻¹ • x ∈ S 
Arguments: {M : Type u_1} {R : Type u_2} [Group M] [Semiring R] [MulSemiringAction M R] {a : M} {S : Subsemiring R} {x : R}
Goal: x ∈ a • S ↔ a⁻¹ • x ∈ S
-- Subsemiring.mem_inv_pointwise_smul_iff
theorem mem_inv_pointwise_smul_iff {a : M} {S : Subsemiring R} {x : R} : x ∈ a⁻¹ • S ↔ a • x ∈ S 
Arguments: {M : Type u_1} {R : Type u_2} [Group M] [Semiring R] [MulSemiringAction M R] {a : M} {S : Subsemiring R} {x : R}
Goal: x ∈ a⁻¹ • S ↔ a • x ∈ S
-- Subsemiring.pointwise_smul_le_pointwise_smul_iff
@[simp]
theorem pointwise_smul_le_pointwise_smul_iff {a : M} {S T : Subsemiring R} :
    a • S ≤ a • T ↔ S ≤ T 
Arguments: {M : Type u_1} {R : Type u_2} [Group M] [Semiring R] [MulSemiringAction M R] {a : M} {S T : Subsemiring R}
Goal: a • S ≤ a • T ↔ S ≤ T
-- Subsemiring.pointwise_smul_subset_iff
theorem pointwise_smul_subset_iff {a : M} {S T : Subsemiring R} : a • S ≤ T ↔ S ≤ a⁻¹ • T 
Arguments: {M : Type u_1} {R : Type u_2} [Group M] [Semiring R] [MulSemiringAction M R] {a : M} {S T : Subsemiring R}
Goal: a • S ≤ T ↔ S ≤ a⁻¹ • T
-- Subsemiring.subset_pointwise_smul_iff
theorem subset_pointwise_smul_iff {a : M} {S T : Subsemiring R} : S ≤ a • T ↔ a⁻¹ • S ≤ T 
Arguments: {M : Type u_1} {R : Type u_2} [Group M] [Semiring R] [MulSemiringAction M R] {a : M} {S T : Subsemiring R}
Goal: S ≤ a • T ↔ a⁻¹ • S ≤ T
-- Subsemiring.smul_mem_pointwise_smul_iff₀
@[simp]
theorem smul_mem_pointwise_smul_iff₀ {a : M} (ha : a ≠ 0) (S : Subsemiring R) (x : R) :
    a • x ∈ a • S ↔ x ∈ S 
Arguments: {M : Type u_1} {R : Type u_2} [GroupWithZero M] [Semiring R] [MulSemiringAction M R] {a : M} (ha : a ≠ 0) (S : Subsemiring R) (x : R)
Goal: a • x ∈ a • S ↔ x ∈ S
-- Subsemiring.mem_pointwise_smul_iff_inv_smul_mem₀
theorem mem_pointwise_smul_iff_inv_smul_mem₀ {a : M} (ha : a ≠ 0) (S : Subsemiring R) (x : R) :
    x ∈ a • S ↔ a⁻¹ • x ∈ S 
Arguments: {M : Type u_1} {R : Type u_2} [GroupWithZero M] [Semiring R] [MulSemiringAction M R] {a : M} (ha : a ≠ 0) (S : Subsemiring R) (x : R)
Goal: x ∈ a • S ↔ a⁻¹ • x ∈ S
-- Subsemiring.mem_inv_pointwise_smul_iff₀
theorem mem_inv_pointwise_smul_iff₀ {a : M} (ha : a ≠ 0) (S : Subsemiring R) (x : R) :
    x ∈ a⁻¹ • S ↔ a • x ∈ S 
Arguments: {M : Type u_1} {R : Type u_2} [GroupWithZero M] [Semiring R] [MulSemiringAction M R] {a : M} (ha : a ≠ 0) (S : Subsemiring R) (x : R)
Goal: x ∈ a⁻¹ • S ↔ a • x ∈ S
-- Subsemiring.pointwise_smul_le_pointwise_smul_iff₀
@[simp]
theorem pointwise_smul_le_pointwise_smul_iff₀ {a : M} (ha : a ≠ 0) {S T : Subsemiring R} :
    a • S ≤ a • T ↔ S ≤ T 
Arguments: {M : Type u_1} {R : Type u_2} [GroupWithZero M] [Semiring R] [MulSemiringAction M R] {a : M} (ha : a ≠ 0) {S T : Subsemiring R}
Goal: a • S ≤ a • T ↔ S ≤ T
-- Subsemiring.pointwise_smul_le_iff₀
theorem pointwise_smul_le_iff₀ {a : M} (ha : a ≠ 0) {S T : Subsemiring R} :
    a • S ≤ T ↔ S ≤ a⁻¹ • T 
Arguments: {M : Type u_1} {R : Type u_2} [GroupWithZero M] [Semiring R] [MulSemiringAction M R] {a : M} (ha : a ≠ 0) {S T : Subsemiring R}
Goal: a • S ≤ T ↔ S ≤ a⁻¹ • T
-- Subsemiring.le_pointwise_smul_iff₀
theorem le_pointwise_smul_iff₀ {a : M} (ha : a ≠ 0) {S T : Subsemiring R} :
    S ≤ a • T ↔ a⁻¹ • S ≤ T 
Arguments: {M : Type u_1} {R : Type u_2} [GroupWithZero M] [Semiring R] [MulSemiringAction M R] {a : M} (ha : a ≠ 0) {S T : Subsemiring R}
Goal: S ≤ a • T ↔ a⁻¹ • S ≤ T
-- Subalgebra.one_mem_toNonUnitalSubalgebra
theorem Subalgebra.one_mem_toNonUnitalSubalgebra (S : Subalgebra R A) :
    (1 : A) ∈ S.toNonUnitalSubalgebra 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] (S : Subalgebra R A)
Goal: 1 ∈ S.toNonUnitalSubalgebra
-- Subalgebra.toNonUnitalSubalgebra_toSubalgebra
theorem Subalgebra.toNonUnitalSubalgebra_toSubalgebra (S : Subalgebra R A) :
    S.toNonUnitalSubalgebra.toSubalgebra S.one_mem = S 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] (S : Subalgebra R A)
Goal: S.toNonUnitalSubalgebra.toSubalgebra ⋯ = S
-- NonUnitalSubalgebra.toSubalgebra_toNonUnitalSubalgebra
theorem NonUnitalSubalgebra.toSubalgebra_toNonUnitalSubalgebra (S : NonUnitalSubalgebra R A)
    (h1 : (1 : A) ∈ S) : (NonUnitalSubalgebra.toSubalgebra S h1).toNonUnitalSubalgebra = S 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] (S : NonUnitalSubalgebra R A) (h1 : 1 ∈ S)
Goal: (S.toSubalgebra h1).toNonUnitalSubalgebra = S
-- Algebra.adjoin_nonUnitalSubalgebra_eq_span
lemma Algebra.adjoin_nonUnitalSubalgebra_eq_span (s : NonUnitalSubalgebra R A) :
    Subalgebra.toSubmodule (adjoin R (s : Set A)) = span R {1} ⊔ s.toSubmodule 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] (s : NonUnitalSubalgebra R A)
Goal: Subalgebra.toSubmodule (Algebra.adjoin R ↑s) = Submodule.span R {1} ⊔ s.toSubmodule
-- NonUnitalAlgebra.adjoin_le_algebra_adjoin
lemma NonUnitalAlgebra.adjoin_le_algebra_adjoin (s : Set A) :
    adjoin R s ≤ (Algebra.adjoin R s).toNonUnitalSubalgebra 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] (s : Set A)
Goal: NonUnitalAlgebra.adjoin R s ≤ (Algebra.adjoin R s).toNonUnitalSubalgebra
-- Algebra.adjoin_nonUnitalSubalgebra
lemma Algebra.adjoin_nonUnitalSubalgebra (s : Set A) :
    adjoin R (NonUnitalAlgebra.adjoin R s : Set A) = adjoin R s 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] (s : Set A)
Goal: Algebra.adjoin R ↑(NonUnitalAlgebra.adjoin R s) = Algebra.adjoin R s
-- Unitization.lift_range_le
theorem lift_range_le {f : A →ₙₐ[R] C} {S : Subalgebra R C} :
    (lift f).range ≤ S ↔ NonUnitalAlgHom.range f ≤ S.toNonUnitalSubalgebra 
Arguments: {R : Type u_1} {A : Type u_2} {C : Type u_3} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [Semiring C] [Algebra R C] {f : A →ₙₐ[R] C} {S : Subalgebra R C}
Goal: (Unitization.lift f).range ≤ S ↔ NonUnitalAlgHom.range f ≤ S.toNonUnitalSubalgebra
-- Unitization.lift_range
theorem lift_range (f : A →ₙₐ[R] C) :
    (lift f).range = Algebra.adjoin R (NonUnitalAlgHom.range f : Set C) 
Arguments: {R : Type u_1} {A : Type u_2} {C : Type u_3} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [Semiring C] [Algebra R C] (f : A →ₙₐ[R] C)
Goal: (Unitization.lift f).range = Algebra.adjoin R ↑(NonUnitalAlgHom.range f)
-- NonUnitalSubalgebra.unitization_apply
@[simp]
theorem unitization_apply (x : Unitization R s) :
    unitization s x = algebraMap R A x.fst + x.snd 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [SetLike S A] [hSA : NonUnitalSubsemiringClass S A] [hSRA : SMulMemClass S R A] (s : S) (x : Unitization R ↥s)
Goal: (NonUnitalSubalgebra.unitization s) x = (algebraMap R A) x.fst + ↑x.snd
-- NonUnitalSubalgebra.unitization_range
theorem unitization_range : (unitization s).range = Algebra.adjoin R (s : Set A) 
Arguments: {R : Type u_1} {S : Type u_2} {A : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [SetLike S A] [hSA : NonUnitalSubsemiringClass S A] [hSRA : SMulMemClass S R A] (s : S)
Goal: (NonUnitalSubalgebra.unitization s).range = Algebra.adjoin R ↑s
-- AlgHomClass.unitization_injective'
theorem _root_.AlgHomClass.unitization_injective' {F R S A : Type*} [CommRing R] [Ring A]
    [Algebra R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A]
    (s : S) (h : ∀ r, r ≠ 0 → algebraMap R A r ∉ s)
    [FunLike F (Unitization R s) A] [AlgHomClass F R (Unitization R s) A]
    (f : F) (hf : ∀ x : s, f x = x) : Function.Injective f 
Arguments: {F : Type u_1} {R : Type u_2} {S : Type u_3} {A : Type u_4} [CommRing R] [Ring A] [Algebra R A] [SetLike S A] [hSA : NonUnitalSubringClass S A] [hSRA : SMulMemClass S R A] (s : S) (h : ∀ (r : R), r ≠ 0 → (algebraMap R A) r ∉ s) [FunLike F (Unitization R ↥s) A] [AlgHomClass F R (Unitization R ↥s) A] (f : F) (hf : ∀ (x : ↥s), f ↑x = ↑x)
Goal: Function.Injective ⇑f