ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- AddSubgroup.iSup_induction
@[to_additive (attr := elab_as_elim) " An induction principle for elements of `⨆ i, S i`.
If `C` holds for `0` and all elements of `S i` for all `i`, and is preserved under addition,
then it holds for all elements of the supremum of `S`. "]
theorem iSup_induction {ι : Sort*} (S : ι → Subgroup G) {C : G → Prop} {x : G} (hx : x ∈ ⨆ i, S i)
    (mem : ∀ (i), ∀ x ∈ S i, C x) (one : C 1) (mul : ∀ x y, C x → C y → C (x * y)) : C x 
Arguments: {G : Type u_2} [AddGroup G] {ι : Sort u_5} (S : ι → AddSubgroup G) {C : G → Prop} {x : G} (hx : x ∈ ⨆ i, S i) (mem : ∀ (i : ι), ∀ x ∈ S i, C x) (one : C 0) (mul : ∀ (x y : G), C x → C y → C (x + y))
Goal: C x
-- Subgroup.iSup_induction
@[to_additive (attr := elab_as_elim) " An induction principle for elements of `⨆ i, S i`.
If `C` holds for `0` and all elements of `S i` for all `i`, and is preserved under addition,
then it holds for all elements of the supremum of `S`. "]
theorem iSup_induction {ι : Sort*} (S : ι → Subgroup G) {C : G → Prop} {x : G} (hx : x ∈ ⨆ i, S i)
    (mem : ∀ (i), ∀ x ∈ S i, C x) (one : C 1) (mul : ∀ x y, C x → C y → C (x * y)) : C x 
Arguments: {G : Type u_2} [Group G] {ι : Sort u_5} (S : ι → Subgroup G) {C : G → Prop} {x : G} (hx : x ∈ ⨆ i, S i) (mem : ∀ (i : ι), ∀ x ∈ S i, C x) (one : C 1) (mul : ∀ (x y : G), C x → C y → C (x * y))
Goal: C x
-- Subgroup.iSup_induction'
@[to_additive (attr := elab_as_elim) "A dependent version of `AddSubgroup.iSup_induction`. "]
theorem iSup_induction' {ι : Sort*} (S : ι → Subgroup G) {C : ∀ x, (x ∈ ⨆ i, S i) → Prop}
    (hp : ∀ (i), ∀ x (hx : x ∈ S i), C x (mem_iSup_of_mem i hx)) (h1 : C 1 (one_mem _))
    (hmul : ∀ x y hx hy, C x hx → C y hy → C (x * y) (mul_mem ‹_› ‹_›)) {x : G}
    (hx : x ∈ ⨆ i, S i) : C x hx 
Arguments: {G : Type u_2} [Group G] {ι : Sort u_5} (S : ι → Subgroup G) {C : (x : G) → x ∈ ⨆ i, S i → Prop} (hp : ∀ (i : ι) (x : G) (hx : x ∈ S i), C x ⋯) (h1 : C 1 ⋯) (hmul : ∀ (x y : G) (hx : x ∈ ⨆ i, S i) (hy : y ∈ ⨆ i, S i), C x hx → C y hy → C (x * y) ⋯) {x : G} (hx : x ∈ ⨆ i, S i)
Goal: C x hx
-- AddSubgroup.iSup_induction'
@[to_additive (attr := elab_as_elim) "A dependent version of `AddSubgroup.iSup_induction`. "]
theorem iSup_induction' {ι : Sort*} (S : ι → Subgroup G) {C : ∀ x, (x ∈ ⨆ i, S i) → Prop}
    (hp : ∀ (i), ∀ x (hx : x ∈ S i), C x (mem_iSup_of_mem i hx)) (h1 : C 1 (one_mem _))
    (hmul : ∀ x y hx hy, C x hx → C y hy → C (x * y) (mul_mem ‹_› ‹_›)) {x : G}
    (hx : x ∈ ⨆ i, S i) : C x hx 
Arguments: {G : Type u_2} [AddGroup G] {ι : Sort u_5} (S : ι → AddSubgroup G) {C : (x : G) → x ∈ ⨆ i, S i → Prop} (hp : ∀ (i : ι) (x : G) (hx : x ∈ S i), C x ⋯) (h1 : C 0 ⋯) (hmul : ∀ (x y : G) (hx : x ∈ ⨆ i, S i) (hy : y ∈ ⨆ i, S i), C x hx → C y hy → C (x + y) ⋯) {x : G} (hx : x ∈ ⨆ i, S i)
Goal: C x hx
-- Subgroup.closure_mul_le
@[to_additive]
theorem closure_mul_le (S T : Set G) : closure (S * T) ≤ closure S ⊔ closure T 
Arguments: {G : Type u_2} [Group G] (S T : Set G)
Goal: Subgroup.closure (S * T) ≤ Subgroup.closure S ⊔ Subgroup.closure T
-- AddSubgroup.closure_add_le
@[to_additive]
theorem closure_mul_le (S T : Set G) : closure (S * T) ≤ closure S ⊔ closure T 
Arguments: {G : Type u_2} [AddGroup G] (S T : Set G)
Goal: AddSubgroup.closure (S + T) ≤ AddSubgroup.closure S ⊔ AddSubgroup.closure T
-- Subgroup.sup_eq_closure_mul
@[to_additive]
theorem sup_eq_closure_mul (H K : Subgroup G) : H ⊔ K = closure ((H : Set G) * (K : Set G)) 
Arguments: {G : Type u_2} [Group G] (H K : Subgroup G)
Goal: H ⊔ K = Subgroup.closure (↑H * ↑K)
-- AddSubgroup.sup_eq_closure_add
@[to_additive]
theorem sup_eq_closure_mul (H K : Subgroup G) : H ⊔ K = closure ((H : Set G) * (K : Set G)) 
Arguments: {G : Type u_2} [AddGroup G] (H K : AddSubgroup G)
Goal: H ⊔ K = AddSubgroup.closure (↑H + ↑K)
-- AddSubgroup.set_add_normal_comm
@[to_additive]
theorem set_mul_normal_comm (s : Set G) (N : Subgroup G) [hN : N.Normal] :
    s * (N : Set G) = (N : Set G) * s 
Arguments: {G : Type u_2} [AddGroup G] (s : Set G) (N : AddSubgroup G) [hN : N.Normal]
Goal: s + ↑N = ↑N + s
-- Subgroup.set_mul_normal_comm
@[to_additive]
theorem set_mul_normal_comm (s : Set G) (N : Subgroup G) [hN : N.Normal] :
    s * (N : Set G) = (N : Set G) * s 
Arguments: {G : Type u_2} [Group G] (s : Set G) (N : Subgroup G) [hN : N.Normal]
Goal: s * ↑N = ↑N * s
-- AddSubgroup.add_normal
@[to_additive "The carrier of `H ⊔ N` is just `↑H + ↑N` (pointwise set addition)
when `N` is normal."]
theorem mul_normal (H N : Subgroup G) [hN : N.Normal] : (↑(H ⊔ N) : Set G) = H * N 
Arguments: {G : Type u_2} [AddGroup G] (H N : AddSubgroup G) [hN : N.Normal]
Goal: ↑(H ⊔ N) = ↑H + ↑N
-- Subgroup.mul_normal
@[to_additive "The carrier of `H ⊔ N` is just `↑H + ↑N` (pointwise set addition)
when `N` is normal."]
theorem mul_normal (H N : Subgroup G) [hN : N.Normal] : (↑(H ⊔ N) : Set G) = H * N 
Arguments: {G : Type u_2} [Group G] (H N : Subgroup G) [hN : N.Normal]
Goal: ↑(H ⊔ N) = ↑H * ↑N
-- Subgroup.normal_mul
@[to_additive "The carrier of `N ⊔ H` is just `↑N + ↑H` (pointwise set addition)
when `N` is normal."]
theorem normal_mul (N H : Subgroup G) [N.Normal] : (↑(N ⊔ H) : Set G) = N * H 
Arguments: {G : Type u_2} [Group G] (N H : Subgroup G) [N.Normal]
Goal: ↑(N ⊔ H) = ↑N * ↑H
-- AddSubgroup.normal_add
@[to_additive "The carrier of `N ⊔ H` is just `↑N + ↑H` (pointwise set addition)
when `N` is normal."]
theorem normal_mul (N H : Subgroup G) [N.Normal] : (↑(N ⊔ H) : Set G) = N * H 
Arguments: {G : Type u_2} [AddGroup G] (N H : AddSubgroup G) [N.Normal]
Goal: ↑(N ⊔ H) = ↑N + ↑H
-- Subgroup.mul_inf_assoc
@[to_additive]
theorem mul_inf_assoc (A B C : Subgroup G) (h : A ≤ C) :
    (A : Set G) * ↑(B ⊓ C) = (A : Set G) * (B : Set G) ∩ C 
Arguments: {G : Type u_2} [Group G] (A B C : Subgroup G) (h : A ≤ C)
Goal: ↑A * ↑(B ⊓ C) = ↑A * ↑B ∩ ↑C
-- AddSubgroup.add_inf_assoc
@[to_additive]
theorem mul_inf_assoc (A B C : Subgroup G) (h : A ≤ C) :
    (A : Set G) * ↑(B ⊓ C) = (A : Set G) * (B : Set G) ∩ C 
Arguments: {G : Type u_2} [AddGroup G] (A B C : AddSubgroup G) (h : A ≤ C)
Goal: ↑A + ↑(B ⊓ C) = (↑A + ↑B) ∩ ↑C
-- AddSubgroup.inf_add_assoc
@[to_additive]
theorem inf_mul_assoc (A B C : Subgroup G) (h : C ≤ A) :
    ((A ⊓ B : Subgroup G) : Set G) * C = (A : Set G) ∩ (↑B * ↑C) 
Arguments: {G : Type u_2} [AddGroup G] (A B C : AddSubgroup G) (h : C ≤ A)
Goal: ↑(A ⊓ B) + ↑C = ↑A ∩ (↑B + ↑C)
-- Subgroup.inf_mul_assoc
@[to_additive]
theorem inf_mul_assoc (A B C : Subgroup G) (h : C ≤ A) :
    ((A ⊓ B : Subgroup G) : Set G) * C = (A : Set G) ∩ (↑B * ↑C) 
Arguments: {G : Type u_2} [Group G] (A B C : Subgroup G) (h : C ≤ A)
Goal: ↑(A ⊓ B) * ↑C = ↑A ∩ (↑B * ↑C)
-- Subgroup.smul_opposite_image_mul_preimage'
@[to_additive]
theorem smul_opposite_image_mul_preimage' (g : G) (h : Gᵐᵒᵖ) (s : Set G) :
    (fun y => h • y) '' ((g * ·) ⁻¹' s) = (g * ·) ⁻¹' ((fun y => h • y) '' s) 
Arguments: {G : Type u_2} [Group G] (g : G) (h : Gᵐᵒᵖ) (s : Set G)
Goal: (fun y => h • y) '' ((fun x => g * x) ⁻¹' s) = (fun x => g * x) ⁻¹' ((fun y => h • y) '' s)
-- AddSubgroup.vadd_opposite_image_add_preimage'
@[to_additive]
theorem smul_opposite_image_mul_preimage' (g : G) (h : Gᵐᵒᵖ) (s : Set G) :
    (fun y => h • y) '' ((g * ·) ⁻¹' s) = (g * ·) ⁻¹' ((fun y => h • y) '' s) 
Arguments: {G : Type u_2} [AddGroup G] (g : G) (h : Gᵃᵒᵖ) (s : Set G)
Goal: (fun y => h +ᵥ y) '' ((fun x => g + x) ⁻¹' s) = (fun x => g + x) ⁻¹' ((fun y => h +ᵥ y) '' s)
-- Subgroup.smul_opposite_image_mul_preimage
@[to_additive]
theorem smul_opposite_image_mul_preimage {H : Subgroup G} (g : G) (h : H.op) (s : Set G) :
    (fun y => h • y) '' ((g * ·) ⁻¹' s) = (g * ·) ⁻¹' ((fun y => h • y) '' s) 
Arguments: {G : Type u_2} [Group G] {H : Subgroup G} (g : G) (h : ↥H.op) (s : Set G)
Goal: (fun y => h • y) '' ((fun x => g * x) ⁻¹' s) = (fun x => g * x) ⁻¹' ((fun y => h • y) '' s)
-- AddSubgroup.vadd_opposite_image_add_preimage
@[to_additive]
theorem smul_opposite_image_mul_preimage {H : Subgroup G} (g : G) (h : H.op) (s : Set G) :
    (fun y => h • y) '' ((g * ·) ⁻¹' s) = (g * ·) ⁻¹' ((fun y => h • y) '' s) 
Arguments: {G : Type u_2} [AddGroup G] {H : AddSubgroup G} (g : G) (h : ↥H.op) (s : Set G)
Goal: (fun y => h +ᵥ y) '' ((fun x => g + x) ⁻¹' s) = (fun x => g + x) ⁻¹' ((fun y => h +ᵥ y) '' s)
-- Subgroup.pointwise_smul_def
theorem pointwise_smul_def {a : α} (S : Subgroup G) :
    a • S = S.map (MulDistribMulAction.toMonoidEnd _ _ a) 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] {a : α} (S : Subgroup G)
Goal: a • S = Subgroup.map ((MulDistribMulAction.toMonoidEnd α G) a) S
-- Subgroup.coe_pointwise_smul
@[simp]
theorem coe_pointwise_smul (a : α) (S : Subgroup G) : ↑(a • S) = a • (S : Set G) 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] (a : α) (S : Subgroup G)
Goal: ↑(a • S) = a • ↑S
-- Subgroup.pointwise_smul_toSubmonoid
@[simp]
theorem pointwise_smul_toSubmonoid (a : α) (S : Subgroup G) :
    (a • S).toSubmonoid = a • S.toSubmonoid 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] (a : α) (S : Subgroup G)
Goal: (a • S).toSubmonoid = a • S.toSubmonoid
-- Subgroup.smul_mem_pointwise_smul
theorem smul_mem_pointwise_smul (m : G) (a : α) (S : Subgroup G) : m ∈ S → a • m ∈ a • S 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] (m : G) (a : α) (S : Subgroup G)
Goal: m ∈ S → a • m ∈ a • S
-- Subgroup.mem_smul_pointwise_iff_exists
theorem mem_smul_pointwise_iff_exists (m : G) (a : α) (S : Subgroup G) :
    m ∈ a • S ↔ ∃ s : G, s ∈ S ∧ a • s = m 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] (m : G) (a : α) (S : Subgroup G)
Goal: m ∈ a • S ↔ ∃ s ∈ S, a • s = m
-- Subgroup.smul_bot
@[simp]
theorem smul_bot (a : α) : a • (⊥ : Subgroup G) = ⊥ 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] (a : α)
Goal: a • ⊥ = ⊥
-- Subgroup.smul_sup
theorem smul_sup (a : α) (S T : Subgroup G) : a • (S ⊔ T) = a • S ⊔ a • T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] (a : α) (S T : Subgroup G)
Goal: a • (S ⊔ T) = a • S ⊔ a • T
-- Subgroup.smul_closure
theorem smul_closure (a : α) (s : Set G) : a • closure s = closure (a • s) 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Monoid α] [MulDistribMulAction α G] (a : α) (s : Set G)
Goal: a • Subgroup.closure s = Subgroup.closure (a • s)
-- Subgroup.conj_smul_le_of_le
theorem conj_smul_le_of_le {P H : Subgroup G} (hP : P ≤ H) (h : H) :
    MulAut.conj (h : G) • P ≤ H 
Arguments: {G : Type u_2} [Group G] {P H : Subgroup G} (hP : P ≤ H) (h : ↥H)
Goal: MulAut.conj ↑h • P ≤ H
-- Subgroup.conj_smul_subgroupOf
theorem conj_smul_subgroupOf {P H : Subgroup G} (hP : P ≤ H) (h : H) :
    MulAut.conj h • P.subgroupOf H = (MulAut.conj (h : G) • P).subgroupOf H 
Arguments: {G : Type u_2} [Group G] {P H : Subgroup G} (hP : P ≤ H) (h : ↥H)
Goal: MulAut.conj h • P.subgroupOf H = (MulAut.conj ↑h • P).subgroupOf H
-- Subgroup.smul_mem_pointwise_smul_iff
@[simp]
theorem smul_mem_pointwise_smul_iff {a : α} {S : Subgroup G} {x : G} : a • x ∈ a • S ↔ x ∈ S 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] {a : α} {S : Subgroup G} {x : G}
Goal: a • x ∈ a • S ↔ x ∈ S
-- Subgroup.mem_pointwise_smul_iff_inv_smul_mem
theorem mem_pointwise_smul_iff_inv_smul_mem {a : α} {S : Subgroup G} {x : G} :
    x ∈ a • S ↔ a⁻¹ • x ∈ S 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] {a : α} {S : Subgroup G} {x : G}
Goal: x ∈ a • S ↔ a⁻¹ • x ∈ S
-- Subgroup.mem_inv_pointwise_smul_iff
theorem mem_inv_pointwise_smul_iff {a : α} {S : Subgroup G} {x : G} : x ∈ a⁻¹ • S ↔ a • x ∈ S 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] {a : α} {S : Subgroup G} {x : G}
Goal: x ∈ a⁻¹ • S ↔ a • x ∈ S
-- Subgroup.pointwise_smul_le_pointwise_smul_iff
@[simp]
theorem pointwise_smul_le_pointwise_smul_iff {a : α} {S T : Subgroup G} : a • S ≤ a • T ↔ S ≤ T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] {a : α} {S T : Subgroup G}
Goal: a • S ≤ a • T ↔ S ≤ T
-- Subgroup.pointwise_smul_subset_iff
theorem pointwise_smul_subset_iff {a : α} {S T : Subgroup G} : a • S ≤ T ↔ S ≤ a⁻¹ • T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] {a : α} {S T : Subgroup G}
Goal: a • S ≤ T ↔ S ≤ a⁻¹ • T
-- Subgroup.subset_pointwise_smul_iff
theorem subset_pointwise_smul_iff {a : α} {S T : Subgroup G} : S ≤ a • T ↔ a⁻¹ • S ≤ T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] {a : α} {S T : Subgroup G}
Goal: S ≤ a • T ↔ a⁻¹ • S ≤ T
-- Subgroup.smul_inf
@[simp]
theorem smul_inf (a : α) (S T : Subgroup G) : a • (S ⊓ T) = a • S ⊓ a • T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] (a : α) (S T : Subgroup G)
Goal: a • (S ⊓ T) = a • S ⊓ a • T
-- Subgroup.equivSMul_apply_coe
@[simps!]
def equivSMul (a : α) (H : Subgroup G) : H ≃* (a • H : Subgroup G) 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] (a : α) (H : Subgroup G) (x : ↑↑H.toSubmonoid)
Goal: ↑((Subgroup.equivSMul a H) x) = a • ↑x
-- Subgroup.equivSMul_symm_apply_coe
@[simps!]
def equivSMul (a : α) (H : Subgroup G) : H ≃* (a • H : Subgroup G) 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [Group α] [MulDistribMulAction α G] (a : α) (H : Subgroup G) (y : ↑(⇑↑(MulDistribMulAction.toMulEquiv G a) '' ↑H.toSubmonoid))
Goal: ↑((Subgroup.equivSMul a H).symm y) = a⁻¹ • ↑y
-- Subgroup.subgroup_mul_singleton
theorem subgroup_mul_singleton {H : Subgroup G} {h : G} (hh : h ∈ H) : (H : Set G) * {h} = H 
Arguments: {G : Type u_2} [Group G] {H : Subgroup G} {h : G} (hh : h ∈ H)
Goal: ↑H * {h} = ↑H
-- Subgroup.singleton_mul_subgroup
theorem singleton_mul_subgroup {H : Subgroup G} {h : G} (hh : h ∈ H) : {h} * (H : Set G) = H 
Arguments: {G : Type u_2} [Group G] {H : Subgroup G} {h : G} (hh : h ∈ H)
Goal: {h} * ↑H = ↑H
-- Subgroup.Normal.conjAct
theorem Normal.conjAct {G : Type*} [Group G] {H : Subgroup G} (hH : H.Normal) (g : ConjAct G) :
    g • H = H 
Arguments: {G : Type u_5} [Group G] {H : Subgroup G} (hH : H.Normal) (g : ConjAct G)
Goal: g • H = H
-- Subgroup.smul_normal
@[simp]
theorem smul_normal (g : G) (H : Subgroup G) [h : Normal H] : MulAut.conj g • H = H 
Arguments: {G : Type u_2} [Group G] (g : G) (H : Subgroup G) [h : H.Normal]
Goal: MulAut.conj g • H = H
-- Subgroup.smul_mem_pointwise_smul_iff₀
@[simp]
theorem smul_mem_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) (S : Subgroup G) (x : G) :
    a • x ∈ a • S ↔ x ∈ S 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [GroupWithZero α] [MulDistribMulAction α G] {a : α} (ha : a ≠ 0) (S : Subgroup G) (x : G)
Goal: a • x ∈ a • S ↔ x ∈ S
-- Subgroup.mem_pointwise_smul_iff_inv_smul_mem₀
theorem mem_pointwise_smul_iff_inv_smul_mem₀ {a : α} (ha : a ≠ 0) (S : Subgroup G) (x : G) :
    x ∈ a • S ↔ a⁻¹ • x ∈ S 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [GroupWithZero α] [MulDistribMulAction α G] {a : α} (ha : a ≠ 0) (S : Subgroup G) (x : G)
Goal: x ∈ a • S ↔ a⁻¹ • x ∈ S
-- Subgroup.mem_inv_pointwise_smul_iff₀
theorem mem_inv_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) (S : Subgroup G) (x : G) :
    x ∈ a⁻¹ • S ↔ a • x ∈ S 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [GroupWithZero α] [MulDistribMulAction α G] {a : α} (ha : a ≠ 0) (S : Subgroup G) (x : G)
Goal: x ∈ a⁻¹ • S ↔ a • x ∈ S
-- Subgroup.pointwise_smul_le_pointwise_smul_iff₀
@[simp]
theorem pointwise_smul_le_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) {S T : Subgroup G} :
    a • S ≤ a • T ↔ S ≤ T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [GroupWithZero α] [MulDistribMulAction α G] {a : α} (ha : a ≠ 0) {S T : Subgroup G}
Goal: a • S ≤ a • T ↔ S ≤ T
-- Subgroup.pointwise_smul_le_iff₀
theorem pointwise_smul_le_iff₀ {a : α} (ha : a ≠ 0) {S T : Subgroup G} : a • S ≤ T ↔ S ≤ a⁻¹ • T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [GroupWithZero α] [MulDistribMulAction α G] {a : α} (ha : a ≠ 0) {S T : Subgroup G}
Goal: a • S ≤ T ↔ S ≤ a⁻¹ • T
-- Subgroup.le_pointwise_smul_iff₀
theorem le_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) {S T : Subgroup G} : S ≤ a • T ↔ a⁻¹ • S ≤ T 
Arguments: {α : Type u_1} {G : Type u_2} [Group G] [GroupWithZero α] [MulDistribMulAction α G] {a : α} (ha : a ≠ 0) {S T : Subgroup G}
Goal: S ≤ a • T ↔ a⁻¹ • S ≤ T
-- AddSubgroup.pointwise_smul_def
theorem pointwise_smul_def {a : α} (S : AddSubgroup A) :
    a • S = S.map (DistribMulAction.toAddMonoidEnd _ _ a) 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Monoid α] [DistribMulAction α A] {a : α} (S : AddSubgroup A)
Goal: a • S = AddSubgroup.map ((DistribMulAction.toAddMonoidEnd α A) a) S
-- AddSubgroup.coe_pointwise_smul
@[simp]
theorem coe_pointwise_smul (a : α) (S : AddSubgroup A) : ↑(a • S) = a • (S : Set A) 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Monoid α] [DistribMulAction α A] (a : α) (S : AddSubgroup A)
Goal: ↑(a • S) = a • ↑S
-- AddSubgroup.pointwise_smul_toAddSubmonoid
@[simp]
theorem pointwise_smul_toAddSubmonoid (a : α) (S : AddSubgroup A) :
    (a • S).toAddSubmonoid = a • S.toAddSubmonoid 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Monoid α] [DistribMulAction α A] (a : α) (S : AddSubgroup A)
Goal: (a • S).toAddSubmonoid = a • S.toAddSubmonoid
-- AddSubgroup.smul_mem_pointwise_smul
theorem smul_mem_pointwise_smul (m : A) (a : α) (S : AddSubgroup A) : m ∈ S → a • m ∈ a • S 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Monoid α] [DistribMulAction α A] (m : A) (a : α) (S : AddSubgroup A)
Goal: m ∈ S → a • m ∈ a • S
-- AddSubgroup.mem_smul_pointwise_iff_exists
theorem mem_smul_pointwise_iff_exists (m : A) (a : α) (S : AddSubgroup A) :
    m ∈ a • S ↔ ∃ s : A, s ∈ S ∧ a • s = m 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Monoid α] [DistribMulAction α A] (m : A) (a : α) (S : AddSubgroup A)
Goal: m ∈ a • S ↔ ∃ s ∈ S, a • s = m
-- AddSubgroup.smul_mem_pointwise_smul_iff
@[simp]
theorem smul_mem_pointwise_smul_iff {a : α} {S : AddSubgroup A} {x : A} : a • x ∈ a • S ↔ x ∈ S 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Group α] [DistribMulAction α A] {a : α} {S : AddSubgroup A} {x : A}
Goal: a • x ∈ a • S ↔ x ∈ S
-- AddSubgroup.mem_pointwise_smul_iff_inv_smul_mem
theorem mem_pointwise_smul_iff_inv_smul_mem {a : α} {S : AddSubgroup A} {x : A} :
    x ∈ a • S ↔ a⁻¹ • x ∈ S 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Group α] [DistribMulAction α A] {a : α} {S : AddSubgroup A} {x : A}
Goal: x ∈ a • S ↔ a⁻¹ • x ∈ S
-- AddSubgroup.mem_inv_pointwise_smul_iff
theorem mem_inv_pointwise_smul_iff {a : α} {S : AddSubgroup A} {x : A} : x ∈ a⁻¹ • S ↔ a • x ∈ S 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Group α] [DistribMulAction α A] {a : α} {S : AddSubgroup A} {x : A}
Goal: x ∈ a⁻¹ • S ↔ a • x ∈ S
-- AddSubgroup.pointwise_smul_le_pointwise_smul_iff
@[simp]
theorem pointwise_smul_le_pointwise_smul_iff {a : α} {S T : AddSubgroup A} :
    a • S ≤ a • T ↔ S ≤ T 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Group α] [DistribMulAction α A] {a : α} {S T : AddSubgroup A}
Goal: a • S ≤ a • T ↔ S ≤ T
-- AddSubgroup.pointwise_smul_le_iff
theorem pointwise_smul_le_iff {a : α} {S T : AddSubgroup A} : a • S ≤ T ↔ S ≤ a⁻¹ • T 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Group α] [DistribMulAction α A] {a : α} {S T : AddSubgroup A}
Goal: a • S ≤ T ↔ S ≤ a⁻¹ • T
-- AddSubgroup.le_pointwise_smul_iff
theorem le_pointwise_smul_iff {a : α} {S T : AddSubgroup A} : S ≤ a • T ↔ a⁻¹ • S ≤ T 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [Group α] [DistribMulAction α A] {a : α} {S T : AddSubgroup A}
Goal: S ≤ a • T ↔ a⁻¹ • S ≤ T
-- AddSubgroup.smul_mem_pointwise_smul_iff₀
@[simp]
theorem smul_mem_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) (S : AddSubgroup A) (x : A) :
    a • x ∈ a • S ↔ x ∈ S 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [GroupWithZero α] [DistribMulAction α A] {a : α} (ha : a ≠ 0) (S : AddSubgroup A) (x : A)
Goal: a • x ∈ a • S ↔ x ∈ S
-- AddSubgroup.mem_pointwise_smul_iff_inv_smul_mem₀
theorem mem_pointwise_smul_iff_inv_smul_mem₀ {a : α} (ha : a ≠ 0) (S : AddSubgroup A) (x : A) :
    x ∈ a • S ↔ a⁻¹ • x ∈ S 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [GroupWithZero α] [DistribMulAction α A] {a : α} (ha : a ≠ 0) (S : AddSubgroup A) (x : A)
Goal: x ∈ a • S ↔ a⁻¹ • x ∈ S
-- AddSubgroup.mem_inv_pointwise_smul_iff₀
theorem mem_inv_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) (S : AddSubgroup A) (x : A) :
    x ∈ a⁻¹ • S ↔ a • x ∈ S 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [GroupWithZero α] [DistribMulAction α A] {a : α} (ha : a ≠ 0) (S : AddSubgroup A) (x : A)
Goal: x ∈ a⁻¹ • S ↔ a • x ∈ S
-- AddSubgroup.pointwise_smul_le_pointwise_smul_iff₀
@[simp]
theorem pointwise_smul_le_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) {S T : AddSubgroup A} :
    a • S ≤ a • T ↔ S ≤ T 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [GroupWithZero α] [DistribMulAction α A] {a : α} (ha : a ≠ 0) {S T : AddSubgroup A}
Goal: a • S ≤ a • T ↔ S ≤ T
-- AddSubgroup.pointwise_smul_le_iff₀
theorem pointwise_smul_le_iff₀ {a : α} (ha : a ≠ 0) {S T : AddSubgroup A} :
    a • S ≤ T ↔ S ≤ a⁻¹ • T 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [GroupWithZero α] [DistribMulAction α A] {a : α} (ha : a ≠ 0) {S T : AddSubgroup A}
Goal: a • S ≤ T ↔ S ≤ a⁻¹ • T
-- AddSubgroup.le_pointwise_smul_iff₀
theorem le_pointwise_smul_iff₀ {a : α} (ha : a ≠ 0) {S T : AddSubgroup A} :
    S ≤ a • T ↔ a⁻¹ • S ≤ T 
Arguments: {α : Type u_1} {A : Type u_3} [AddGroup A] [GroupWithZero α] [DistribMulAction α A] {a : α} (ha : a ≠ 0) {S T : AddSubgroup A}
Goal: S ≤ a • T ↔ a⁻¹ • S ≤ T
-- WithZero.unzero_coe
@[to_additive (attr := simp) unzero_coe]
theorem unone_coe {x : α} (hx : (x : WithOne α) ≠ 1) : unone hx = x 
Arguments: {α : Type u} {x : α} (hx : ↑x ≠ 0)
Goal: WithZero.unzero hx = x
-- WithOne.unone_coe
@[to_additive (attr := simp) unzero_coe]
theorem unone_coe {x : α} (hx : (x : WithOne α) ≠ 1) : unone hx = x 
Arguments: {α : Type u} {x : α} (hx : ↑x ≠ 1)
Goal: WithOne.unone hx = x
-- WithZero.coe_unzero
@[to_additive (attr := simp) coe_unzero]
lemma coe_unone : ∀ {x : WithOne α} (hx : x ≠ 1), unone hx = x
  
Arguments: {α : Type u} {x : WithZero α} (hx : x ≠ 0)
Goal: ↑(WithZero.unzero hx) = x
-- WithOne.coe_unone
@[to_additive (attr := simp) coe_unzero]
lemma coe_unone : ∀ {x : WithOne α} (hx : x ≠ 1), unone hx = x
  
Arguments: {α : Type u} {x : WithOne α} (hx : x ≠ 1)
Goal: ↑(WithOne.unone hx) = x
-- WithZero.coe_ne_zero
@[to_additive (attr := simp)]
theorem coe_ne_one {a : α} : (a : WithOne α) ≠ (1 : WithOne α) 
Arguments: {α : Type u} {a : α}
Goal: ↑a ≠ 0
-- WithOne.coe_ne_one
@[to_additive (attr := simp)]
theorem coe_ne_one {a : α} : (a : WithOne α) ≠ (1 : WithOne α) 
Arguments: {α : Type u} {a : α}
Goal: ↑a ≠ 1
-- WithZero.zero_ne_coe
@[to_additive (attr := simp)]
theorem one_ne_coe {a : α} : (1 : WithOne α) ≠ a 
Arguments: {α : Type u} {a : α}
Goal: 0 ≠ ↑a
-- WithOne.one_ne_coe
@[to_additive (attr := simp)]
theorem one_ne_coe {a : α} : (1 : WithOne α) ≠ a 
Arguments: {α : Type u} {a : α}
Goal: 1 ≠ ↑a
-- WithOne.ne_one_iff_exists
@[to_additive]
theorem ne_one_iff_exists {x : WithOne α} : x ≠ 1 ↔ ∃ a : α, ↑a = x 
Arguments: {α : Type u} {x : WithOne α}
Goal: x ≠ 1 ↔ ∃ a, ↑a = x
-- WithZero.ne_zero_iff_exists
@[to_additive]
theorem ne_one_iff_exists {x : WithOne α} : x ≠ 1 ↔ ∃ a : α, ↑a = x 
Arguments: {α : Type u} {x : WithZero α}
Goal: x ≠ 0 ↔ ∃ a, ↑a = x
-- WithOne.coe_inj
@[to_additive (attr := simp, norm_cast)]
theorem coe_inj {a b : α} : (a : WithOne α) = b ↔ a = b 
Arguments: {α : Type u} {a b : α}
Goal: ↑a = ↑b ↔ a = b
-- WithZero.coe_inj
@[to_additive (attr := simp, norm_cast)]
theorem coe_inj {a b : α} : (a : WithOne α) = b ↔ a = b 
Arguments: {α : Type u} {a b : α}
Goal: ↑a = ↑b ↔ a = b
-- WithOne.cases_on
@[to_additive (attr := elab_as_elim)]
protected theorem cases_on {P : WithOne α → Prop} : ∀ x : WithOne α, P 1 → (∀ a : α, P a) → P x 
Arguments: {α : Type u} {P : WithOne α → Prop} (x : WithOne α)
Goal: P 1 → (∀ (a : α), P ↑a) → P x
-- WithZero.cases_on
@[to_additive (attr := elab_as_elim)]
protected theorem cases_on {P : WithOne α → Prop} : ∀ x : WithOne α, P 1 → (∀ a : α, P a) → P x 
Arguments: {α : Type u} {P : WithZero α → Prop} (x : WithZero α)
Goal: P 0 → (∀ (a : α), P ↑a) → P x