ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Subgroup.card_comap_dvd_of_injective
@[to_additive]
theorem card_comap_dvd_of_injective (K : Subgroup H) (f : α →* H)
    (hf : Function.Injective f) : Nat.card (K.comap f) ∣ Nat.card K 
Arguments: {α : Type u_1} [Group α] {H : Type u_2} [Group H] (K : Subgroup H) (f : α →* H) (hf : Function.Injective ⇑f)
Goal: Nat.card ↥(Subgroup.comap f K) ∣ Nat.card ↥K
-- AddSubgroup.card_comap_dvd_of_injective
@[to_additive]
theorem card_comap_dvd_of_injective (K : Subgroup H) (f : α →* H)
    (hf : Function.Injective f) : Nat.card (K.comap f) ∣ Nat.card K 
Arguments: {α : Type u_1} [AddGroup α] {H : Type u_2} [AddGroup H] (K : AddSubgroup H) (f : α →+ H) (hf : Function.Injective ⇑f)
Goal: Nat.card ↥(AddSubgroup.comap f K) ∣ Nat.card ↥K
-- MonoidHom.fiberEquivKer_apply
@[to_additive (attr := simp)]
lemma fiberEquivKer_apply (f : α →* H) (a : α) (g : f ⁻¹' {f a}) : f.fiberEquivKer a g = a⁻¹ * g 
Arguments: {α : Type u_1} [Group α] {H : Type u_2} [Group H] (f : α →* H) (a : α) (g : ↑(⇑f ⁻¹' {f a}))
Goal: ↑((f.fiberEquivKer a) g) = a⁻¹ * ↑g
-- AddMonoidHom.fiberEquivKer_apply
@[to_additive (attr := simp)]
lemma fiberEquivKer_apply (f : α →* H) (a : α) (g : f ⁻¹' {f a}) : f.fiberEquivKer a g = a⁻¹ * g 
Arguments: {α : Type u_1} [AddGroup α] {H : Type u_2} [AddGroup H] (f : α →+ H) (a : α) (g : ↑(⇑f ⁻¹' {f a}))
Goal: ↑((f.fiberEquivKer a) g) = -a + ↑g
-- AddMonoidHom.fiberEquivKer_symm_apply
@[to_additive (attr := simp)]
lemma fiberEquivKer_symm_apply (f : α →* H) (a : α) (g : f.ker) :
    (f.fiberEquivKer a).symm g = a * g 
Arguments: {α : Type u_1} [AddGroup α] {H : Type u_2} [AddGroup H] (f : α →+ H) (a : α) (g : ↥f.ker)
Goal: ↑((f.fiberEquivKer a).symm g) = a + ↑g
-- MonoidHom.fiberEquivKer_symm_apply
@[to_additive (attr := simp)]
lemma fiberEquivKer_symm_apply (f : α →* H) (a : α) (g : f.ker) :
    (f.fiberEquivKer a).symm g = a * g 
Arguments: {α : Type u_1} [Group α] {H : Type u_2} [Group H] (f : α →* H) (a : α) (g : ↥f.ker)
Goal: ↑((f.fiberEquivKer a).symm g) = a * ↑g
-- MonoidHom.fiberEquiv_apply
@[to_additive (attr := simp)]
lemma fiberEquiv_apply (f : α →* H) (a b : α) (g : f ⁻¹' {f a}) :
    f.fiberEquiv a b g = b * (a⁻¹ * g) 
Arguments: {α : Type u_1} [Group α] {H : Type u_2} [Group H] (f : α →* H) (a b : α) (g : ↑(⇑f ⁻¹' {f a}))
Goal: ↑((f.fiberEquiv a b) g) = b * (a⁻¹ * ↑g)
-- AddMonoidHom.fiberEquiv_apply
@[to_additive (attr := simp)]
lemma fiberEquiv_apply (f : α →* H) (a b : α) (g : f ⁻¹' {f a}) :
    f.fiberEquiv a b g = b * (a⁻¹ * g) 
Arguments: {α : Type u_1} [AddGroup α] {H : Type u_2} [AddGroup H] (f : α →+ H) (a b : α) (g : ↑(⇑f ⁻¹' {f a}))
Goal: ↑((f.fiberEquiv a b) g) = b + (-a + ↑g)
-- AddMonoidHom.fiberEquiv_symm_apply
@[to_additive (attr := simp)]
lemma fiberEquiv_symm_apply (f : α →* H) (a b : α) (g : f ⁻¹' {f b}) :
    (f.fiberEquiv a b).symm g = a * (b⁻¹ * g) 
Arguments: {α : Type u_1} [AddGroup α] {H : Type u_2} [AddGroup H] (f : α →+ H) (a b : α) (g : ↑(⇑f ⁻¹' {f b}))
Goal: ↑((f.fiberEquiv a b).symm g) = a + (-b + ↑g)
-- MonoidHom.fiberEquiv_symm_apply
@[to_additive (attr := simp)]
lemma fiberEquiv_symm_apply (f : α →* H) (a b : α) (g : f ⁻¹' {f b}) :
    (f.fiberEquiv a b).symm g = a * (b⁻¹ * g) 
Arguments: {α : Type u_1} [Group α] {H : Type u_2} [Group H] (f : α →* H) (a b : α) (g : ↑(⇑f ⁻¹' {f b}))
Goal: ↑((f.fiberEquiv a b).symm g) = a * (b⁻¹ * ↑g)
-- AddSubgroup.eq_zero_of_noncommSum_eq_zero_of_independent
@[to_additive "`Finset.noncommSum` is “injective” in `f` if `f` maps into independent subgroups.
This generalizes (one direction of) `AddSubgroup.disjoint_iff_add_eq_zero`. "]
theorem eq_one_of_noncommProd_eq_one_of_independent {ι : Type*} (s : Finset ι) (f : ι → G) (comm)
    (K : ι → Subgroup G) (hind : CompleteLattice.Independent K) (hmem : ∀ x ∈ s, f x ∈ K x)
    (heq1 : s.noncommProd f comm = 1) : ∀ i ∈ s, f i = 1 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} (s : Finset ι) (f : ι → G) (comm : (↑s).Pairwise fun a b => AddCommute (f a) (f b)) (K : ι → AddSubgroup G) (hind : CompleteLattice.Independent K) (hmem : ∀ x ∈ s, f x ∈ K x) (heq1 : s.noncommSum f comm = 0) (i : ι)
Goal: i ∈ s → f i = 0
-- Subgroup.eq_one_of_noncommProd_eq_one_of_independent
@[to_additive "`Finset.noncommSum` is “injective” in `f` if `f` maps into independent subgroups.
This generalizes (one direction of) `AddSubgroup.disjoint_iff_add_eq_zero`. "]
theorem eq_one_of_noncommProd_eq_one_of_independent {ι : Type*} (s : Finset ι) (f : ι → G) (comm)
    (K : ι → Subgroup G) (hind : CompleteLattice.Independent K) (hmem : ∀ x ∈ s, f x ∈ K x)
    (heq1 : s.noncommProd f comm = 1) : ∀ i ∈ s, f i = 1 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} (s : Finset ι) (f : ι → G) (comm : (↑s).Pairwise fun a b => Commute (f a) (f b)) (K : ι → Subgroup G) (hind : CompleteLattice.Independent K) (hmem : ∀ x ∈ s, f x ∈ K x) (heq1 : s.noncommProd f comm = 1) (i : ι)
Goal: i ∈ s → f i = 1
-- MonoidHom.noncommPiCoprod_mulSingle
@[to_additive (attr := simp)]
theorem noncommPiCoprod_mulSingle (i : ι) (y : N i) :
    noncommPiCoprod ϕ hcomm (Pi.mulSingle i y) = ϕ i y 
Arguments: {M : Type u_1} [Monoid M] {ι : Type u_2} [DecidableEq ι] [Fintype ι] {N : ι → Type u_3} [(i : ι) → Monoid (N i)] (ϕ : (i : ι) → N i →* M) {hcomm : Pairwise fun i j => ∀ (x : N i) (y : N j), Commute ((ϕ i) x) ((ϕ j) y)} (i : ι) (y : N i)
Goal: (MonoidHom.noncommPiCoprod ϕ hcomm) (Pi.mulSingle i y) = (ϕ i) y
-- AddMonoidHom.noncommPiCoprod_single
@[to_additive (attr := simp)]
theorem noncommPiCoprod_mulSingle (i : ι) (y : N i) :
    noncommPiCoprod ϕ hcomm (Pi.mulSingle i y) = ϕ i y 
Arguments: {M : Type u_1} [AddMonoid M] {ι : Type u_2} [DecidableEq ι] [Fintype ι] {N : ι → Type u_3} [(i : ι) → AddMonoid (N i)] (ϕ : (i : ι) → N i →+ M) {hcomm : Pairwise fun i j => ∀ (x : N i) (y : N j), AddCommute ((ϕ i) x) ((ϕ j) y)} (i : ι) (y : N i)
Goal: (AddMonoidHom.noncommPiCoprod ϕ hcomm) (Pi.single i y) = (ϕ i) y
-- MonoidHom.noncommPiCoprod_mrange
@[to_additive]
theorem noncommPiCoprod_mrange :
    MonoidHom.mrange (noncommPiCoprod ϕ hcomm) = ⨆ i : ι, MonoidHom.mrange (ϕ i) 
Arguments: {M : Type u_1} [Monoid M] {ι : Type u_2} [Fintype ι] {N : ι → Type u_3} [(i : ι) → Monoid (N i)] (ϕ : (i : ι) → N i →* M) {hcomm : Pairwise fun i j => ∀ (x : N i) (y : N j), Commute ((ϕ i) x) ((ϕ j) y)}
Goal: MonoidHom.mrange (MonoidHom.noncommPiCoprod ϕ hcomm) = ⨆ i, MonoidHom.mrange (ϕ i)
-- AddMonoidHom.noncommPiCoprod_mrange
@[to_additive]
theorem noncommPiCoprod_mrange :
    MonoidHom.mrange (noncommPiCoprod ϕ hcomm) = ⨆ i : ι, MonoidHom.mrange (ϕ i) 
Arguments: {M : Type u_1} [AddMonoid M] {ι : Type u_2} [Fintype ι] {N : ι → Type u_3} [(i : ι) → AddMonoid (N i)] (ϕ : (i : ι) → N i →+ M) {hcomm : Pairwise fun i j => ∀ (x : N i) (y : N j), AddCommute ((ϕ i) x) ((ϕ j) y)}
Goal: AddMonoidHom.mrange (AddMonoidHom.noncommPiCoprod ϕ hcomm) = ⨆ i, AddMonoidHom.mrange (ϕ i)
-- AddMonoidHom.noncommPiCoprod_range
@[to_additive]
theorem noncommPiCoprod_range
    {hcomm : Pairwise fun i j : ι => ∀ (x : H i) (y : H j), Commute (ϕ i x) (ϕ j y)} :
    (noncommPiCoprod ϕ hcomm).range = ⨆ i : ι, (ϕ i).range 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → Type u_3} [(i : ι) → AddGroup (H i)] (ϕ : (i : ι) → H i →+ G) {hcomm : Pairwise fun i j => ∀ (x : H i) (y : H j), AddCommute ((ϕ i) x) ((ϕ j) y)}
Goal: (AddMonoidHom.noncommPiCoprod ϕ hcomm).range = ⨆ i, (ϕ i).range
-- MonoidHom.noncommPiCoprod_range
@[to_additive]
theorem noncommPiCoprod_range
    {hcomm : Pairwise fun i j : ι => ∀ (x : H i) (y : H j), Commute (ϕ i x) (ϕ j y)} :
    (noncommPiCoprod ϕ hcomm).range = ⨆ i : ι, (ϕ i).range 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → Type u_3} [(i : ι) → Group (H i)] (ϕ : (i : ι) → H i →* G) {hcomm : Pairwise fun i j => ∀ (x : H i) (y : H j), Commute ((ϕ i) x) ((ϕ j) y)}
Goal: (MonoidHom.noncommPiCoprod ϕ hcomm).range = ⨆ i, (ϕ i).range
-- AddMonoidHom.injective_noncommPiCoprod_of_independent
@[to_additive]
theorem injective_noncommPiCoprod_of_independent
    {hcomm : Pairwise fun i j : ι => ∀ (x : H i) (y : H j), Commute (ϕ i x) (ϕ j y)}
    (hind : CompleteLattice.Independent fun i => (ϕ i).range)
    (hinj : ∀ i, Function.Injective (ϕ i)) : Function.Injective (noncommPiCoprod ϕ hcomm) 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → Type u_3} [(i : ι) → AddGroup (H i)] (ϕ : (i : ι) → H i →+ G) {hcomm : Pairwise fun i j => ∀ (x : H i) (y : H j), AddCommute ((ϕ i) x) ((ϕ j) y)} (hind : CompleteLattice.Independent fun i => (ϕ i).range) (hinj : ∀ (i : ι), Function.Injective ⇑(ϕ i))
Goal: Function.Injective ⇑(AddMonoidHom.noncommPiCoprod ϕ hcomm)
-- MonoidHom.injective_noncommPiCoprod_of_independent
@[to_additive]
theorem injective_noncommPiCoprod_of_independent
    {hcomm : Pairwise fun i j : ι => ∀ (x : H i) (y : H j), Commute (ϕ i x) (ϕ j y)}
    (hind : CompleteLattice.Independent fun i => (ϕ i).range)
    (hinj : ∀ i, Function.Injective (ϕ i)) : Function.Injective (noncommPiCoprod ϕ hcomm) 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → Type u_3} [(i : ι) → Group (H i)] (ϕ : (i : ι) → H i →* G) {hcomm : Pairwise fun i j => ∀ (x : H i) (y : H j), Commute ((ϕ i) x) ((ϕ j) y)} (hind : CompleteLattice.Independent fun i => (ϕ i).range) (hinj : ∀ (i : ι), Function.Injective ⇑(ϕ i))
Goal: Function.Injective ⇑(MonoidHom.noncommPiCoprod ϕ hcomm)
-- MonoidHom.independent_range_of_coprime_order
@[to_additive]
theorem independent_range_of_coprime_order
    (hcomm : Pairwise fun i j : ι => ∀ (x : H i) (y : H j), Commute (ϕ i x) (ϕ j y))
    [Finite ι] [∀ i, Fintype (H i)]
    (hcoprime : Pairwise fun i j => Nat.Coprime (Fintype.card (H i)) (Fintype.card (H j))) :
    CompleteLattice.Independent fun i => (ϕ i).range 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} {H : ι → Type u_3} [(i : ι) → Group (H i)] (ϕ : (i : ι) → H i →* G) (hcomm : Pairwise fun i j => ∀ (x : H i) (y : H j), Commute ((ϕ i) x) ((ϕ j) y)) [Finite ι] [(i : ι) → Fintype (H i)] (hcoprime : Pairwise fun i j => (Fintype.card (H i)).Coprime (Fintype.card (H j)))
Goal: CompleteLattice.Independent fun i => (ϕ i).range
-- AddMonoidHom.independent_range_of_coprime_order
@[to_additive]
theorem independent_range_of_coprime_order
    (hcomm : Pairwise fun i j : ι => ∀ (x : H i) (y : H j), Commute (ϕ i x) (ϕ j y))
    [Finite ι] [∀ i, Fintype (H i)]
    (hcoprime : Pairwise fun i j => Nat.Coprime (Fintype.card (H i)) (Fintype.card (H j))) :
    CompleteLattice.Independent fun i => (ϕ i).range 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} {H : ι → Type u_3} [(i : ι) → AddGroup (H i)] (ϕ : (i : ι) → H i →+ G) (hcomm : Pairwise fun i j => ∀ (x : H i) (y : H j), AddCommute ((ϕ i) x) ((ϕ j) y)) [Finite ι] [(i : ι) → Fintype (H i)] (hcoprime : Pairwise fun i j => (Fintype.card (H i)).Coprime (Fintype.card (H j)))
Goal: CompleteLattice.Independent fun i => (ϕ i).range
-- AddSubgroup.addCommute_subtype_of_addCommute
@[to_additive]
theorem commute_subtype_of_commute
    (hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y) (i j : ι)
    (hne : i ≠ j) :
    ∀ (x : H i) (y : H j), Commute ((H i).subtype x) ((H j).subtype y) 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} {H : ι → AddSubgroup G} (hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → AddCommute x y) (i j : ι) (hne : i ≠ j) (x : ↥(H i)) (y : ↥(H j))
Goal: AddCommute ((H i).subtype x) ((H j).subtype y)
-- Subgroup.commute_subtype_of_commute
@[to_additive]
theorem commute_subtype_of_commute
    (hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y) (i j : ι)
    (hne : i ≠ j) :
    ∀ (x : H i) (y : H j), Commute ((H i).subtype x) ((H j).subtype y) 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} {H : ι → Subgroup G} (hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → Commute x y) (i j : ι) (hne : i ≠ j) (x : ↥(H i)) (y : ↥(H j))
Goal: Commute ((H i).subtype x) ((H j).subtype y)
-- Subgroup.noncommPiCoprod_mulSingle
@[to_additive (attr := simp)]
theorem noncommPiCoprod_mulSingle
    {hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y}(i : ι) (y : H i) :
    noncommPiCoprod hcomm (Pi.mulSingle i y) = y 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} [hdec : DecidableEq ι] [hfin : Fintype ι] {H : ι → Subgroup G} {hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → Commute x y} (i : ι) (y : ↥(H i))
Goal: (Subgroup.noncommPiCoprod hcomm) (Pi.mulSingle i y) = ↑y
-- AddSubgroup.noncommPiCoprod_single
@[to_additive (attr := simp)]
theorem noncommPiCoprod_mulSingle
    {hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y}(i : ι) (y : H i) :
    noncommPiCoprod hcomm (Pi.mulSingle i y) = y 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} [hdec : DecidableEq ι] [hfin : Fintype ι] {H : ι → AddSubgroup G} {hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → AddCommute x y} (i : ι) (y : ↥(H i))
Goal: (AddSubgroup.noncommPiCoprod hcomm) (Pi.single i y) = ↑y
-- Subgroup.noncommPiCoprod_range
@[to_additive]
theorem noncommPiCoprod_range
    {hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y} :
    (noncommPiCoprod hcomm).range = ⨆ i : ι, H i 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → Subgroup G} {hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → Commute x y}
Goal: (Subgroup.noncommPiCoprod hcomm).range = ⨆ i, H i
-- AddSubgroup.noncommPiCoprod_range
@[to_additive]
theorem noncommPiCoprod_range
    {hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y} :
    (noncommPiCoprod hcomm).range = ⨆ i : ι, H i 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → AddSubgroup G} {hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → AddCommute x y}
Goal: (AddSubgroup.noncommPiCoprod hcomm).range = ⨆ i, H i
-- Subgroup.injective_noncommPiCoprod_of_independent
@[to_additive]
theorem injective_noncommPiCoprod_of_independent
    {hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y}
    (hind : CompleteLattice.Independent H) :
    Function.Injective (noncommPiCoprod hcomm) 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → Subgroup G} {hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → Commute x y} (hind : CompleteLattice.Independent H)
Goal: Function.Injective ⇑(Subgroup.noncommPiCoprod hcomm)
-- AddSubgroup.injective_noncommPiCoprod_of_independent
@[to_additive]
theorem injective_noncommPiCoprod_of_independent
    {hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y}
    (hind : CompleteLattice.Independent H) :
    Function.Injective (noncommPiCoprod hcomm) 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} [hfin : Fintype ι] {H : ι → AddSubgroup G} {hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → AddCommute x y} (hind : CompleteLattice.Independent H)
Goal: Function.Injective ⇑(AddSubgroup.noncommPiCoprod hcomm)
-- AddSubgroup.independent_of_coprime_order
@[to_additive]
theorem independent_of_coprime_order
    (hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y)
    [Finite ι] [∀ i, Fintype (H i)]
    (hcoprime : Pairwise fun i j => Nat.Coprime (Fintype.card (H i)) (Fintype.card (H j))) :
    CompleteLattice.Independent H 
Arguments: {G : Type u_1} [AddGroup G] {ι : Type u_2} {H : ι → AddSubgroup G} (hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → AddCommute x y) [Finite ι] [(i : ι) → Fintype ↥(H i)] (hcoprime : Pairwise fun i j => (Fintype.card ↥(H i)).Coprime (Fintype.card ↥(H j)))
Goal: CompleteLattice.Independent H
-- Subgroup.independent_of_coprime_order
@[to_additive]
theorem independent_of_coprime_order
    (hcomm : Pairwise fun i j : ι => ∀ x y : G, x ∈ H i → y ∈ H j → Commute x y)
    [Finite ι] [∀ i, Fintype (H i)]
    (hcoprime : Pairwise fun i j => Nat.Coprime (Fintype.card (H i)) (Fintype.card (H j))) :
    CompleteLattice.Independent H 
Arguments: {G : Type u_1} [Group G] {ι : Type u_2} {H : ι → Subgroup G} (hcomm : Pairwise fun i j => ∀ (x y : G), x ∈ H i → y ∈ H j → Commute x y) [Finite ι] [(i : ι) → Fintype ↥(H i)] (hcoprime : Pairwise fun i j => (Fintype.card ↥(H i)).Coprime (Fintype.card ↥(H j)))
Goal: CompleteLattice.Independent H
-- AddAction.supports_of_mem
@[to_additive]
theorem supports_of_mem (ha : a ∈ s) : Supports G s a 
Arguments: (G : Type u_1) {α : Type u_3} [VAdd G α] {s : Set α} {a : α} (ha : a ∈ s)
Goal: AddAction.Supports G s a
-- MulAction.supports_of_mem
@[to_additive]
theorem supports_of_mem (ha : a ∈ s) : Supports G s a 
Arguments: (G : Type u_1) {α : Type u_3} [SMul G α] {s : Set α} {a : α} (ha : a ∈ s)
Goal: MulAction.Supports G s a
-- AddAction.Supports.mono
@[to_additive]
theorem Supports.mono (h : s ⊆ t) (hs : Supports G s b) : Supports G t b 
Arguments: {G : Type u_1} {α : Type u_3} {β : Type u_4} [VAdd G α] [VAdd G β] {s t : Set α} {b : β} (h : s ⊆ t) (hs : AddAction.Supports G s b)
Goal: AddAction.Supports G t b
-- MulAction.Supports.mono
@[to_additive]
theorem Supports.mono (h : s ⊆ t) (hs : Supports G s b) : Supports G t b 
Arguments: {G : Type u_1} {α : Type u_3} {β : Type u_4} [SMul G α] [SMul G β] {s t : Set α} {b : β} (h : s ⊆ t) (hs : MulAction.Supports G s b)
Goal: MulAction.Supports G t b
-- AddAction.Supports.vadd
@[to_additive]
theorem Supports.smul (g : H) (h : Supports G s b) : Supports G (g • s) (g • b) 
Arguments: {G : Type u_1} {H : Type u_2} {α : Type u_3} {β : Type u_4} [AddGroup H] [VAdd G α] [VAdd G β] [AddAction H α] [VAdd H β] [VAddCommClass G H β] [VAddCommClass G H α] {s : Set α} {b : β} (g : H) (h : AddAction.Supports G s b)
Goal: AddAction.Supports G (g +ᵥ s) (g +ᵥ b)
-- MulAction.Supports.smul
@[to_additive]
theorem Supports.smul (g : H) (h : Supports G s b) : Supports G (g • s) (g • b) 
Arguments: {G : Type u_1} {H : Type u_2} {α : Type u_3} {β : Type u_4} [Group H] [SMul G α] [SMul G β] [MulAction H α] [SMul H β] [SMulCommClass G H β] [SMulCommClass G H α] {s : Set α} {b : β} (g : H) (h : MulAction.Supports G s b)
Goal: MulAction.Supports G (g • s) (g • b)
-- List.smul_sum
theorem List.smul_sum {r : α} {l : List β} : r • l.sum = (l.map (r • ·)).sum 
Arguments: {α : Type u_1} {β : Type u_2} [AddMonoid β] [DistribSMul α β] {r : α} {l : List β}
Goal: r • l.sum = (List.map (fun x => r • x) l).sum
-- List.smul_prod
theorem List.smul_prod {r : α} {l : List β} : r • l.prod = (l.map (r • ·)).prod 
Arguments: {α : Type u_1} {β : Type u_2} [Monoid α] [Monoid β] [MulDistribMulAction α β] {r : α} {l : List β}
Goal: r • l.prod = (List.map (fun x => r • x) l).prod
-- Multiset.smul_sum
theorem Multiset.smul_sum {r : α} {s : Multiset β} : r • s.sum = (s.map (r • ·)).sum 
Arguments: {α : Type u_1} {β : Type u_2} [AddCommMonoid β] [DistribSMul α β] {r : α} {s : Multiset β}
Goal: r • s.sum = (Multiset.map (fun x => r • x) s).sum
-- Finset.smul_sum
theorem Finset.smul_sum {r : α} {f : γ → β} {s : Finset γ} :
    (r • ∑ x ∈ s, f x) = ∑ x ∈ s, r • f x 
Arguments: {α : Type u_1} {β : Type u_2} {γ : Type u_3} [AddCommMonoid β] [DistribSMul α β] {r : α} {f : γ → β} {s : Finset γ}
Goal: r • ∑ x ∈ s, f x = ∑ x ∈ s, r • f x
-- Multiset.smul_prod
theorem Multiset.smul_prod {r : α} {s : Multiset β} : r • s.prod = (s.map (r • ·)).prod 
Arguments: {α : Type u_1} {β : Type u_2} [Monoid α] [CommMonoid β] [MulDistribMulAction α β] {r : α} {s : Multiset β}
Goal: r • s.prod = (Multiset.map (fun x => r • x) s).prod
-- Finset.smul_prod
theorem Finset.smul_prod {r : α} {f : γ → β} {s : Finset γ} :
    (r • ∏ x ∈ s, f x) = ∏ x ∈ s, r • f x 
Arguments: {α : Type u_1} {β : Type u_2} {γ : Type u_3} [Monoid α] [CommMonoid β] [MulDistribMulAction α β] {r : α} {f : γ → β} {s : Finset γ}
Goal: r • ∏ x ∈ s, f x = ∏ x ∈ s, r • f x
-- DivisibleBy.div_zero
class DivisibleBy where
  div : A → α → A
  div_zero : ∀ a, div a 0 = 0
  div_cancel : ∀ {n : α} (a : A), n ≠ 0 → n • div a n = a
Arguments: {A : Type u_1} {α : Type u_2} [AddMonoid A] [SMul α A] [Zero α] [self : DivisibleBy A α] (a : A)
Goal: DivisibleBy.div a 0 = 0
-- DivisibleBy.div_cancel
class DivisibleBy where
  div : A → α → A
  div_zero : ∀ a, div a 0 = 0
  div_cancel : ∀ {n : α} (a : A), n ≠ 0 → n • div a n = a
Arguments: {A : Type u_1} {α : Type u_2} [AddMonoid A] [SMul α A] [Zero α] [self : DivisibleBy A α] {n : α} (a : A)
Goal: n ≠ 0 → n • DivisibleBy.div a n = a
-- RootableBy.root_zero
@[to_additive]
class RootableBy where
  root : A → α → A
  root_zero : ∀ a, root a 0 = 1
  root_cancel : ∀ {n : α} (a : A), n ≠ 0 → root a n ^ n = a
Arguments: {A : Type u_1} {α : Type u_2} [Monoid A] [Pow A α] [Zero α] [self : RootableBy A α] (a : A)
Goal: RootableBy.root a 0 = 1
-- RootableBy.root_cancel
@[to_additive]
class RootableBy where
  root : A → α → A
  root_zero : ∀ a, root a 0 = 1
  root_cancel : ∀ {n : α} (a : A), n ≠ 0 → root a n ^ n = a
Arguments: {A : Type u_1} {α : Type u_2} [Monoid A] [Pow A α] [Zero α] [self : RootableBy A α] {n : α} (a : A)
Goal: n ≠ 0 → RootableBy.root a n ^ n = a
-- pow_left_surj_of_rootableBy
@[to_additive smul_right_surj_of_divisibleBy]
theorem pow_left_surj_of_rootableBy [RootableBy A α] {n : α} (hn : n ≠ 0) :
    Function.Surjective (fun a => a ^ n : A → A) 
Arguments: (A : Type u_1) (α : Type u_2) [Monoid A] [Pow A α] [Zero α] [RootableBy A α] {n : α} (hn : n ≠ 0)
Goal: Function.Surjective fun a => a ^ n
-- smul_right_surj_of_divisibleBy
@[to_additive smul_right_surj_of_divisibleBy]
theorem pow_left_surj_of_rootableBy [RootableBy A α] {n : α} (hn : n ≠ 0) :
    Function.Surjective (fun a => a ^ n : A → A) 
Arguments: (A : Type u_1) (α : Type u_2) [AddMonoid A] [SMul α A] [Zero α] [DivisibleBy A α] {n : α} (hn : n ≠ 0)
Goal: Function.Surjective fun a => n • a
-- AddCommGroup.smul_top_eq_top_of_divisibleBy_int
theorem smul_top_eq_top_of_divisibleBy_int [DivisibleBy A ℤ] {n : ℤ} (hn : n ≠ 0) :
    n • (⊤ : AddSubgroup A) = ⊤ 
Arguments: (A : Type u_1) [AddCommGroup A] [DivisibleBy A ℤ] {n : ℤ} (hn : n ≠ 0)
Goal: n • ⊤ = ⊤
-- RootableBy.surjective_pow
@[to_additive DivisibleBy.surjective_smul]
theorem RootableBy.surjective_pow (A α : Type*) [Monoid A] [Pow A α] [Zero α] [RootableBy A α]
    {n : α} (hn : n ≠ 0) : Function.Surjective fun a : A => a ^ n 
Arguments: (A : Type u_4) (α : Type u_5) [Monoid A] [Pow A α] [Zero α] [RootableBy A α] {n : α} (hn : n ≠ 0)
Goal: Function.Surjective fun a => a ^ n
-- DivisibleBy.surjective_smul
@[to_additive DivisibleBy.surjective_smul]
theorem RootableBy.surjective_pow (A α : Type*) [Monoid A] [Pow A α] [Zero α] [RootableBy A α]
    {n : α} (hn : n ≠ 0) : Function.Surjective fun a : A => a ^ n 
Arguments: (A : Type u_4) (α : Type u_5) [AddMonoid A] [SMul α A] [Zero α] [DivisibleBy A α] {n : α} (hn : n ≠ 0)
Goal: Function.Surjective fun a => n • a
-- AddMonoid.exponent_additive
@[simp]
theorem _root_.AddMonoid.exponent_additive :
    AddMonoid.exponent (Additive G) = exponent G 
Arguments: {G : Type u} [Monoid G]
Goal: AddMonoid.exponent (Additive G) = Monoid.exponent G
-- Monoid.exponent_multiplicative
@[simp]
theorem exponent_multiplicative {G : Type*} [AddMonoid G] :
    exponent (Multiplicative G) = AddMonoid.exponent G 
Arguments: {G : Type u_1} [AddMonoid G]
Goal: Monoid.exponent (Multiplicative G) = AddMonoid.exponent G
-- AddOpposite.exponent
@[to_additive (attr := simp)]
theorem _root_.MulOpposite.exponent : exponent (MulOpposite G) = exponent G 
Arguments: {G : Type u} [AddMonoid G]
Goal: AddMonoid.exponent Gᵃᵒᵖ = AddMonoid.exponent G
-- MulOpposite.exponent
@[to_additive (attr := simp)]
theorem _root_.MulOpposite.exponent : exponent (MulOpposite G) = exponent G 
Arguments: {G : Type u} [Monoid G]
Goal: Monoid.exponent Gᵐᵒᵖ = Monoid.exponent G
-- AddMonoid.ExponentExists.isOfFinAddOrder
@[to_additive]
theorem ExponentExists.isOfFinOrder (h : ExponentExists G) {g : G} : IsOfFinOrder g 
Arguments: {G : Type u} [AddMonoid G] (h : AddMonoid.ExponentExists G) {g : G}
Goal: IsOfFinAddOrder g
-- Monoid.ExponentExists.isOfFinOrder
@[to_additive]
theorem ExponentExists.isOfFinOrder (h : ExponentExists G) {g : G} : IsOfFinOrder g 
Arguments: {G : Type u} [Monoid G] (h : Monoid.ExponentExists G) {g : G}
Goal: IsOfFinOrder g
-- Monoid.ExponentExists.orderOf_pos
@[to_additive]
theorem ExponentExists.orderOf_pos (h : ExponentExists G) (g : G) : 0 < orderOf g 
Arguments: {G : Type u} [Monoid G] (h : Monoid.ExponentExists G) (g : G)
Goal: 0 < orderOf g