ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Submonoid.LocalizationMap.map_map
@[to_additive
    "If `AddCommMonoid` homs `g : M →+ P, l : P →+ A` induce maps of localizations, the composition
of the induced maps equals the map of localizations induced by `l ∘ g`."]
theorem map_map {A : Type*} [CommMonoid A] {U : Submonoid A} {R} [CommMonoid R]
    (j : LocalizationMap U R) {l : P →* A} (hl : ∀ w : T, l w ∈ U) (x) :
    k.map hl j (f.map hy k x) = f.map (fun x ↦ show l.comp g x ∈ U from hl ⟨g x, hy x⟩) j x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {g : M →* P} {T : Submonoid P} (hy : ∀ (y : ↥S), g ↑y ∈ T) {Q : Type u_4} [CommMonoid Q] {k : T.LocalizationMap Q} {A : Type u_5} [CommMonoid A] {U : Submonoid A} {R : Type u_6} [CommMonoid R] (j : U.LocalizationMap R) {l : P →* A} (hl : ∀ (w : ↥T), l ↑w ∈ U) (x : N)
Goal: (k.map hl j) ((f.map hy k) x) = (f.map ⋯ j) x
-- AddSubmonoid.LocalizationMap.map_map
@[to_additive
    "If `AddCommMonoid` homs `g : M →+ P, l : P →+ A` induce maps of localizations, the composition
of the induced maps equals the map of localizations induced by `l ∘ g`."]
theorem map_map {A : Type*} [CommMonoid A] {U : Submonoid A} {R} [CommMonoid R]
    (j : LocalizationMap U R) {l : P →* A} (hl : ∀ w : T, l w ∈ U) (x) :
    k.map hl j (f.map hy k x) = f.map (fun x ↦ show l.comp g x ∈ U from hl ⟨g x, hy x⟩) j x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {g : M →+ P} {T : AddSubmonoid P} (hy : ∀ (y : ↥S), g ↑y ∈ T) {Q : Type u_4} [AddCommMonoid Q] {k : T.LocalizationMap Q} {A : Type u_5} [AddCommMonoid A] {U : AddSubmonoid A} {R : Type u_6} [AddCommMonoid R] (j : U.LocalizationMap R) {l : P →+ A} (hl : ∀ (w : ↥T), l ↑w ∈ U) (x : N)
Goal: (k.map hl j) ((f.map hy k) x) = (f.map ⋯ j) x
-- AddSubmonoid.LocalizationMap.map_injective_of_injective
@[to_additive "Given an injective `AddCommMonoid` homomorphism `g : M →+ P`, and a
submonoid `S ⊆ M`, the induced monoid homomorphism from the localization of `M` at `S`
to the localization of `P` at `g S`, is injective. "]
theorem map_injective_of_injective (hg : Injective g) (k : LocalizationMap (S.map g) Q) :
    Injective (map f (apply_coe_mem_map g S) k) 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {g : M →+ P} {Q : Type u_4} [AddCommMonoid Q] (hg : Function.Injective ⇑g) (k : (AddSubmonoid.map g S).LocalizationMap Q)
Goal: Function.Injective ⇑(f.map ⋯ k)
-- Submonoid.LocalizationMap.map_injective_of_injective
@[to_additive "Given an injective `AddCommMonoid` homomorphism `g : M →+ P`, and a
submonoid `S ⊆ M`, the induced monoid homomorphism from the localization of `M` at `S`
to the localization of `P` at `g S`, is injective. "]
theorem map_injective_of_injective (hg : Injective g) (k : LocalizationMap (S.map g) Q) :
    Injective (map f (apply_coe_mem_map g S) k) 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {g : M →* P} {Q : Type u_4} [CommMonoid Q] (hg : Function.Injective ⇑g) (k : (Submonoid.map g S).LocalizationMap Q)
Goal: Function.Injective ⇑(f.map ⋯ k)
-- AddSubmonoid.LocalizationMap.map_surjective_of_surjective
@[to_additive "Given a surjective `AddCommMonoid` homomorphism `g : M →+ P`, and a
submonoid `S ⊆ M`, the induced monoid homomorphism from the localization of `M` at `S`
to the localization of `P` at `g S`, is surjective. "]
theorem map_surjective_of_surjective (hg : Surjective g) (k : LocalizationMap (S.map g) Q) :
    Surjective (map f (apply_coe_mem_map g S) k) 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {g : M →+ P} {Q : Type u_4} [AddCommMonoid Q] (hg : Function.Surjective ⇑g) (k : (AddSubmonoid.map g S).LocalizationMap Q)
Goal: Function.Surjective ⇑(f.map ⋯ k)
-- Submonoid.LocalizationMap.map_surjective_of_surjective
@[to_additive "Given a surjective `AddCommMonoid` homomorphism `g : M →+ P`, and a
submonoid `S ⊆ M`, the induced monoid homomorphism from the localization of `M` at `S`
to the localization of `P` at `g S`, is surjective. "]
theorem map_surjective_of_surjective (hg : Surjective g) (k : LocalizationMap (S.map g) Q) :
    Surjective (map f (apply_coe_mem_map g S) k) 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {g : M →* P} {Q : Type u_4} [CommMonoid Q] (hg : Function.Surjective ⇑g) (k : (Submonoid.map g S).LocalizationMap Q)
Goal: Function.Surjective ⇑(f.map ⋯ k)
-- Submonoid.LocalizationMap.AwayMap.lift_eq
@[simp]
theorem AwayMap.lift_eq (hg : IsUnit (g x)) (a : M) : F.lift x hg (F.toMap a) = g a 
Arguments: {M : Type u_1} [CommMonoid M] {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] {g : M →* P} (x : M) (F : Submonoid.LocalizationMap.AwayMap x N) (hg : IsUnit (g x)) (a : M)
Goal: (Submonoid.LocalizationMap.AwayMap.lift x F hg) ((Submonoid.LocalizationMap.toMap F) a) = g a
-- Submonoid.LocalizationMap.AwayMap.lift_comp
@[simp]
theorem AwayMap.lift_comp (hg : IsUnit (g x)) : (F.lift x hg).comp F.toMap = g 
Arguments: {M : Type u_1} [CommMonoid M] {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] {g : M →* P} (x : M) (F : Submonoid.LocalizationMap.AwayMap x N) (hg : IsUnit (g x))
Goal: (Submonoid.LocalizationMap.AwayMap.lift x F hg).comp (Submonoid.LocalizationMap.toMap F) = g
-- AddSubmonoid.LocalizationMap.AwayMap.lift_eq
@[simp]
theorem AwayMap.lift_eq (hg : IsAddUnit (g x)) (a : A) : F.lift x hg (F.toMap a) = g a 
Arguments: {A : Type u_4} [AddCommMonoid A] (x : A) {B : Type u_5} [AddCommMonoid B] (F : AddSubmonoid.LocalizationMap.AwayMap x B) {C : Type u_6} [AddCommMonoid C] {g : A →+ C} (hg : IsAddUnit (g x)) (a : A)
Goal: (AddSubmonoid.LocalizationMap.AwayMap.lift x F hg) ((AddSubmonoid.LocalizationMap.toMap F) a) = g a
-- AddSubmonoid.LocalizationMap.AwayMap.lift_comp
@[simp]
theorem AwayMap.lift_comp (hg : IsAddUnit (g x)) : (F.lift x hg).comp F.toMap = g 
Arguments: {A : Type u_4} [AddCommMonoid A] (x : A) {B : Type u_5} [AddCommMonoid B] (F : AddSubmonoid.LocalizationMap.AwayMap x B) {C : Type u_6} [AddCommMonoid C] {g : A →+ C} (hg : IsAddUnit (g x))
Goal: (AddSubmonoid.LocalizationMap.AwayMap.lift x F hg).comp (AddSubmonoid.LocalizationMap.toMap F) = g
-- Submonoid.LocalizationMap.mulEquivOfLocalizations_apply
@[to_additive (attr := simp)]
theorem mulEquivOfLocalizations_apply {k : LocalizationMap S P} {x} :
    f.mulEquivOfLocalizations k x = f.lift k.map_units x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P} {x : N}
Goal: (f.mulEquivOfLocalizations k) x = (f.lift ⋯) x
-- AddSubmonoid.LocalizationMap.addEquivOfLocalizations_apply
@[to_additive (attr := simp)]
theorem mulEquivOfLocalizations_apply {k : LocalizationMap S P} {x} :
    f.mulEquivOfLocalizations k x = f.lift k.map_units x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P} {x : N}
Goal: (f.addEquivOfLocalizations k) x = (f.lift ⋯) x
-- Submonoid.LocalizationMap.mulEquivOfLocalizations_symm_apply
@[to_additive (attr := simp)]
theorem mulEquivOfLocalizations_symm_apply {k : LocalizationMap S P} {x} :
    (f.mulEquivOfLocalizations k).symm x = k.lift f.map_units x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P} {x : P}
Goal: (f.mulEquivOfLocalizations k).symm x = (k.lift ⋯) x
-- AddSubmonoid.LocalizationMap.addEquivOfLocalizations_symm_apply
@[to_additive (attr := simp)]
theorem mulEquivOfLocalizations_symm_apply {k : LocalizationMap S P} {x} :
    (f.mulEquivOfLocalizations k).symm x = k.lift f.map_units x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P} {x : P}
Goal: (f.addEquivOfLocalizations k).symm x = (k.lift ⋯) x
-- AddSubmonoid.LocalizationMap.addEquivOfLocalizations_symm_eq_addEquivOfLocalizations
@[to_additive]
theorem mulEquivOfLocalizations_symm_eq_mulEquivOfLocalizations {k : LocalizationMap S P} :
    (k.mulEquivOfLocalizations f).symm = f.mulEquivOfLocalizations k 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P}
Goal: (k.addEquivOfLocalizations f).symm = f.addEquivOfLocalizations k
-- Submonoid.LocalizationMap.mulEquivOfLocalizations_symm_eq_mulEquivOfLocalizations
@[to_additive]
theorem mulEquivOfLocalizations_symm_eq_mulEquivOfLocalizations {k : LocalizationMap S P} :
    (k.mulEquivOfLocalizations f).symm = f.mulEquivOfLocalizations k 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P}
Goal: (k.mulEquivOfLocalizations f).symm = f.mulEquivOfLocalizations k
-- Submonoid.LocalizationMap.ofMulEquivOfLocalizations_apply
@[to_additive (attr := simp)]
theorem ofMulEquivOfLocalizations_apply {k : N ≃* P} (x) :
    (f.ofMulEquivOfLocalizations k).toMap x = k (f.toMap x) 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : N ≃* P} (x : M)
Goal: (f.ofMulEquivOfLocalizations k).toMap x = k (f.toMap x)
-- AddSubmonoid.LocalizationMap.ofAddEquivOfLocalizations_apply
@[to_additive (attr := simp)]
theorem ofMulEquivOfLocalizations_apply {k : N ≃* P} (x) :
    (f.ofMulEquivOfLocalizations k).toMap x = k (f.toMap x) 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : N ≃+ P} (x : M)
Goal: (f.ofAddEquivOfLocalizations k).toMap x = k (f.toMap x)
-- AddSubmonoid.LocalizationMap.ofAddEquivOfLocalizations_eq
@[to_additive]
theorem ofMulEquivOfLocalizations_eq {k : N ≃* P} :
    (f.ofMulEquivOfLocalizations k).toMap = k.toMonoidHom.comp f.toMap 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : N ≃+ P}
Goal: (f.ofAddEquivOfLocalizations k).toMap = k.toAddMonoidHom.comp f.toMap
-- Submonoid.LocalizationMap.ofMulEquivOfLocalizations_eq
@[to_additive]
theorem ofMulEquivOfLocalizations_eq {k : N ≃* P} :
    (f.ofMulEquivOfLocalizations k).toMap = k.toMonoidHom.comp f.toMap 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : N ≃* P}
Goal: (f.ofMulEquivOfLocalizations k).toMap = k.toMonoidHom.comp f.toMap
-- Submonoid.LocalizationMap.symm_comp_ofMulEquivOfLocalizations_apply
@[to_additive]
theorem symm_comp_ofMulEquivOfLocalizations_apply {k : N ≃* P} (x) :
    k.symm ((f.ofMulEquivOfLocalizations k).toMap x) = f.toMap x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : N ≃* P} (x : M)
Goal: k.symm ((f.ofMulEquivOfLocalizations k).toMap x) = f.toMap x
-- AddSubmonoid.LocalizationMap.symm_comp_ofAddEquivOfLocalizations_apply
@[to_additive]
theorem symm_comp_ofMulEquivOfLocalizations_apply {k : N ≃* P} (x) :
    k.symm ((f.ofMulEquivOfLocalizations k).toMap x) = f.toMap x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : N ≃+ P} (x : M)
Goal: k.symm ((f.ofAddEquivOfLocalizations k).toMap x) = f.toMap x
-- AddSubmonoid.LocalizationMap.symm_comp_ofAddEquivOfLocalizations_apply'
@[to_additive]
theorem symm_comp_ofMulEquivOfLocalizations_apply' {k : P ≃* N} (x) :
    k ((f.ofMulEquivOfLocalizations k.symm).toMap x) = f.toMap x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : P ≃+ N} (x : M)
Goal: k ((f.ofAddEquivOfLocalizations k.symm).toMap x) = f.toMap x
-- Submonoid.LocalizationMap.symm_comp_ofMulEquivOfLocalizations_apply'
@[to_additive]
theorem symm_comp_ofMulEquivOfLocalizations_apply' {k : P ≃* N} (x) :
    k ((f.ofMulEquivOfLocalizations k.symm).toMap x) = f.toMap x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : P ≃* N} (x : M)
Goal: k ((f.ofMulEquivOfLocalizations k.symm).toMap x) = f.toMap x
-- Submonoid.LocalizationMap.ofMulEquivOfLocalizations_eq_iff_eq
@[to_additive]
theorem ofMulEquivOfLocalizations_eq_iff_eq {k : N ≃* P} {x y} :
    (f.ofMulEquivOfLocalizations k).toMap x = y ↔ f.toMap x = k.symm y 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : N ≃* P} {x : M} {y : P}
Goal: (f.ofMulEquivOfLocalizations k).toMap x = y ↔ f.toMap x = k.symm y
-- AddSubmonoid.LocalizationMap.ofAddEquivOfLocalizations_eq_iff_eq
@[to_additive]
theorem ofMulEquivOfLocalizations_eq_iff_eq {k : N ≃* P} {x y} :
    (f.ofMulEquivOfLocalizations k).toMap x = y ↔ f.toMap x = k.symm y 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : N ≃+ P} {x : M} {y : P}
Goal: (f.ofAddEquivOfLocalizations k).toMap x = y ↔ f.toMap x = k.symm y
-- AddSubmonoid.LocalizationMap.addEquivOfLocalizations_right_inv
@[to_additive addEquivOfLocalizations_right_inv]
theorem mulEquivOfLocalizations_right_inv (k : LocalizationMap S P) :
    f.ofMulEquivOfLocalizations (f.mulEquivOfLocalizations k) = k 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) (k : S.LocalizationMap P)
Goal: f.ofAddEquivOfLocalizations (f.addEquivOfLocalizations k) = k
-- Submonoid.LocalizationMap.mulEquivOfLocalizations_right_inv
@[to_additive addEquivOfLocalizations_right_inv]
theorem mulEquivOfLocalizations_right_inv (k : LocalizationMap S P) :
    f.ofMulEquivOfLocalizations (f.mulEquivOfLocalizations k) = k 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) (k : S.LocalizationMap P)
Goal: f.ofMulEquivOfLocalizations (f.mulEquivOfLocalizations k) = k
-- AddSubmonoid.LocalizationMap.addEquivOfLocalizations_right_inv_apply
@[to_additive addEquivOfLocalizations_right_inv_apply]
theorem mulEquivOfLocalizations_right_inv_apply {k : LocalizationMap S P} {x} :
    (f.ofMulEquivOfLocalizations (f.mulEquivOfLocalizations k)).toMap x = k.toMap x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P} {x : M}
Goal: (f.ofAddEquivOfLocalizations (f.addEquivOfLocalizations k)).toMap x = k.toMap x
-- Submonoid.LocalizationMap.mulEquivOfLocalizations_right_inv_apply
@[to_additive addEquivOfLocalizations_right_inv_apply]
theorem mulEquivOfLocalizations_right_inv_apply {k : LocalizationMap S P} {x} :
    (f.ofMulEquivOfLocalizations (f.mulEquivOfLocalizations k)).toMap x = k.toMap x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : S.LocalizationMap P} {x : M}
Goal: (f.ofMulEquivOfLocalizations (f.mulEquivOfLocalizations k)).toMap x = k.toMap x
-- Submonoid.LocalizationMap.mulEquivOfLocalizations_left_inv
@[to_additive]
theorem mulEquivOfLocalizations_left_inv (k : N ≃* P) :
    f.mulEquivOfLocalizations (f.ofMulEquivOfLocalizations k) = k 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) (k : N ≃* P)
Goal: f.mulEquivOfLocalizations (f.ofMulEquivOfLocalizations k) = k
-- AddSubmonoid.LocalizationMap.addEquivOfLocalizations_left_neg
@[to_additive]
theorem mulEquivOfLocalizations_left_inv (k : N ≃* P) :
    f.mulEquivOfLocalizations (f.ofMulEquivOfLocalizations k) = k 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) (k : N ≃+ P)
Goal: f.addEquivOfLocalizations (f.ofAddEquivOfLocalizations k) = k
-- AddSubmonoid.LocalizationMap.addEquivOfLocalizations_left_neg_apply
@[to_additive]
theorem mulEquivOfLocalizations_left_inv_apply {k : N ≃* P} (x) :
    f.mulEquivOfLocalizations (f.ofMulEquivOfLocalizations k) x = k x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {k : N ≃+ P} (x : N)
Goal: (f.addEquivOfLocalizations (f.ofAddEquivOfLocalizations k)) x = k x
-- Submonoid.LocalizationMap.mulEquivOfLocalizations_left_inv_apply
@[to_additive]
theorem mulEquivOfLocalizations_left_inv_apply {k : N ≃* P} (x) :
    f.mulEquivOfLocalizations (f.ofMulEquivOfLocalizations k) x = k x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {k : N ≃* P} (x : N)
Goal: (f.mulEquivOfLocalizations (f.ofMulEquivOfLocalizations k)) x = k x
-- Submonoid.LocalizationMap.ofMulEquivOfLocalizations_id
@[to_additive (attr := simp)]
theorem ofMulEquivOfLocalizations_id : f.ofMulEquivOfLocalizations (MulEquiv.refl N) = f 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] (f : S.LocalizationMap N)
Goal: f.ofMulEquivOfLocalizations (MulEquiv.refl N) = f
-- AddSubmonoid.LocalizationMap.ofAddEquivOfLocalizations_id
@[to_additive (attr := simp)]
theorem ofMulEquivOfLocalizations_id : f.ofMulEquivOfLocalizations (MulEquiv.refl N) = f 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] (f : S.LocalizationMap N)
Goal: f.ofAddEquivOfLocalizations (AddEquiv.refl N) = f
-- AddSubmonoid.LocalizationMap.ofAddEquivOfLocalizations_comp
@[to_additive]
theorem ofMulEquivOfLocalizations_comp {k : N ≃* P} {j : P ≃* Q} :
    (f.ofMulEquivOfLocalizations (k.trans j)).toMap =
      j.toMonoidHom.comp (f.ofMulEquivOfLocalizations k).toMap 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {Q : Type u_4} [AddCommMonoid Q] {k : N ≃+ P} {j : P ≃+ Q}
Goal: (f.ofAddEquivOfLocalizations (k.trans j)).toMap = j.toAddMonoidHom.comp (f.ofAddEquivOfLocalizations k).toMap
-- Submonoid.LocalizationMap.ofMulEquivOfLocalizations_comp
@[to_additive]
theorem ofMulEquivOfLocalizations_comp {k : N ≃* P} {j : P ≃* Q} :
    (f.ofMulEquivOfLocalizations (k.trans j)).toMap =
      j.toMonoidHom.comp (f.ofMulEquivOfLocalizations k).toMap 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {Q : Type u_4} [CommMonoid Q] {k : N ≃* P} {j : P ≃* Q}
Goal: (f.ofMulEquivOfLocalizations (k.trans j)).toMap = j.toMonoidHom.comp (f.ofMulEquivOfLocalizations k).toMap
-- AddSubmonoid.LocalizationMap.ofAddEquivOfDom_apply
@[to_additive (attr := simp)]
theorem ofMulEquivOfDom_apply {k : P ≃* M} (H : T.map k.toMonoidHom = S) (x) :
    (f.ofMulEquivOfDom H).toMap x = f.toMap (k x) 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {T : AddSubmonoid P} {k : P ≃+ M} (H : AddSubmonoid.map k.toAddMonoidHom T = S) (x : P)
Goal: (f.ofAddEquivOfDom H).toMap x = f.toMap (k x)
-- Submonoid.LocalizationMap.ofMulEquivOfDom_apply
@[to_additive (attr := simp)]
theorem ofMulEquivOfDom_apply {k : P ≃* M} (H : T.map k.toMonoidHom = S) (x) :
    (f.ofMulEquivOfDom H).toMap x = f.toMap (k x) 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {T : Submonoid P} {k : P ≃* M} (H : Submonoid.map k.toMonoidHom T = S) (x : P)
Goal: (f.ofMulEquivOfDom H).toMap x = f.toMap (k x)
-- AddSubmonoid.LocalizationMap.ofAddEquivOfDom_eq
@[to_additive]
theorem ofMulEquivOfDom_eq {k : P ≃* M} (H : T.map k.toMonoidHom = S) :
    (f.ofMulEquivOfDom H).toMap = f.toMap.comp k.toMonoidHom 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {T : AddSubmonoid P} {k : P ≃+ M} (H : AddSubmonoid.map k.toAddMonoidHom T = S)
Goal: (f.ofAddEquivOfDom H).toMap = f.toMap.comp k.toAddMonoidHom
-- Submonoid.LocalizationMap.ofMulEquivOfDom_eq
@[to_additive]
theorem ofMulEquivOfDom_eq {k : P ≃* M} (H : T.map k.toMonoidHom = S) :
    (f.ofMulEquivOfDom H).toMap = f.toMap.comp k.toMonoidHom 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {T : Submonoid P} {k : P ≃* M} (H : Submonoid.map k.toMonoidHom T = S)
Goal: (f.ofMulEquivOfDom H).toMap = f.toMap.comp k.toMonoidHom
-- AddSubmonoid.LocalizationMap.ofAddEquivOfDom_comp_symm
@[to_additive]
theorem ofMulEquivOfDom_comp_symm {k : P ≃* M} (H : T.map k.toMonoidHom = S) (x) :
    (f.ofMulEquivOfDom H).toMap (k.symm x) = f.toMap x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {T : AddSubmonoid P} {k : P ≃+ M} (H : AddSubmonoid.map k.toAddMonoidHom T = S) (x : M)
Goal: (f.ofAddEquivOfDom H).toMap (k.symm x) = f.toMap x
-- Submonoid.LocalizationMap.ofMulEquivOfDom_comp_symm
@[to_additive]
theorem ofMulEquivOfDom_comp_symm {k : P ≃* M} (H : T.map k.toMonoidHom = S) (x) :
    (f.ofMulEquivOfDom H).toMap (k.symm x) = f.toMap x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {T : Submonoid P} {k : P ≃* M} (H : Submonoid.map k.toMonoidHom T = S) (x : M)
Goal: (f.ofMulEquivOfDom H).toMap (k.symm x) = f.toMap x
-- AddSubmonoid.LocalizationMap.ofAddEquivOfDom_comp
@[to_additive]
theorem ofMulEquivOfDom_comp {k : M ≃* P} (H : T.map k.symm.toMonoidHom = S) (x) :
    (f.ofMulEquivOfDom H).toMap (k x) = f.toMap x 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] {P : Type u_3} [AddCommMonoid P] (f : S.LocalizationMap N) {T : AddSubmonoid P} {k : M ≃+ P} (H : AddSubmonoid.map k.symm.toAddMonoidHom T = S) (x : M)
Goal: (f.ofAddEquivOfDom H).toMap (k x) = f.toMap x
-- Submonoid.LocalizationMap.ofMulEquivOfDom_comp
@[to_additive]
theorem ofMulEquivOfDom_comp {k : M ≃* P} (H : T.map k.symm.toMonoidHom = S) (x) :
    (f.ofMulEquivOfDom H).toMap (k x) = f.toMap x 
Arguments: {M : Type u_1} [CommMonoid M] {S : Submonoid M} {N : Type u_2} [CommMonoid N] {P : Type u_3} [CommMonoid P] (f : S.LocalizationMap N) {T : Submonoid P} {k : M ≃* P} (H : Submonoid.map k.symm.toMonoidHom T = S) (x : M)
Goal: (f.ofMulEquivOfDom H).toMap (k x) = f.toMap x
-- AddSubmonoid.LocalizationMap.ofAddEquivOfDom_id
@[to_additive (attr := simp) "A special case of `f ∘ id = f`, `f` a Localization map."]
theorem ofMulEquivOfDom_id :
    f.ofMulEquivOfDom
        (show S.map (MulEquiv.refl M).toMonoidHom = S from
          Submonoid.ext fun x ↦ ⟨fun ⟨_, hy, h⟩ ↦ h ▸ hy, fun h ↦ ⟨x, h, rfl⟩⟩) = f 
Arguments: {M : Type u_1} [AddCommMonoid M] {S : AddSubmonoid M} {N : Type u_2} [AddCommMonoid N] (f : S.LocalizationMap N)
Goal: f.ofAddEquivOfDom ⋯ = f