ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- IsLocalization.eq_iff_exists
@[inherit_doc IsLocalization.exists_of_eq]
theorem eq_iff_exists {x y} : algebraMap R S x = algebraMap R S y ↔ ∃ c : M, ↑c * x = ↑c * y 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] {x y : R}
Goal: (algebraMap R S) x = (algebraMap R S) y ↔ ∃ c, ↑c * x = ↑c * y
-- IsLocalization.of_le
theorem of_le (N : Submonoid R) (h₁ : M ≤ N) (h₂ : ∀ r ∈ N, IsUnit (algebraMap R S r)) :
    IsLocalization N S 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (N : Submonoid R) (h₁ : M ≤ N) (h₂ : ∀ r ∈ N, IsUnit ((algebraMap R S) r))
Goal: IsLocalization N S
-- IsLocalization.toLocalizationWithZeroMap_toFun
@[simps]
def toLocalizationWithZeroMap : Submonoid.LocalizationWithZeroMap M S 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (a : R)
Goal: (↑(IsLocalization.toLocalizationWithZeroMap M S).toMonoidHom).toFun a = (algebraMap R S) a
-- IsLocalization.toLocalizationMap_toMap
@[simp]
theorem toLocalizationMap_toMap : (toLocalizationMap M S).toMap = (algebraMap R S : R →*₀ S) 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S]
Goal: (IsLocalization.toLocalizationMap M S).toMap = ↑↑(algebraMap R S)
-- IsLocalization.toLocalizationMap_toMap_apply
theorem toLocalizationMap_toMap_apply (x) : (toLocalizationMap M S).toMap x = algebraMap R S x 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R)
Goal: (IsLocalization.toLocalizationMap M S).toMap x = (algebraMap R S) x
-- IsLocalization.surj₂
theorem surj₂ : ∀ z w : S, ∃ z' w' : R, ∃ d : M,
    (z * algebraMap R S d = algebraMap R S z') ∧ (w * algebraMap R S d = algebraMap R S w') 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (z w : S)
Goal: ∃ z' w' d, z * (algebraMap R S) ↑d = (algebraMap R S) z' ∧ w * (algebraMap R S) ↑d = (algebraMap R S) w'
-- IsLocalization.toLocalizationMap_sec
@[simp]
theorem toLocalizationMap_sec : (toLocalizationMap M S).sec = sec M 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S]
Goal: (IsLocalization.toLocalizationMap M S).sec = IsLocalization.sec M
-- IsLocalization.sec_spec
theorem sec_spec (z : S) :
    z * algebraMap R S (IsLocalization.sec M z).2 = algebraMap R S (IsLocalization.sec M z).1 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (z : S)
Goal: z * (algebraMap R S) ↑(IsLocalization.sec M z).2 = (algebraMap R S) (IsLocalization.sec M z).1
-- IsLocalization.sec_spec'
theorem sec_spec' (z : S) :
    algebraMap R S (IsLocalization.sec M z).1 = algebraMap R S (IsLocalization.sec M z).2 * z 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (z : S)
Goal: (algebraMap R S) (IsLocalization.sec M z).1 = (algebraMap R S) ↑(IsLocalization.sec M z).2 * z
-- IsLocalization.subsingleton
theorem subsingleton (h : 0 ∈ M) : Subsingleton S 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (h : 0 ∈ M)
Goal: Subsingleton S
-- IsLocalization.map_right_cancel
theorem map_right_cancel {x y} {c : M} (h : algebraMap R S (c * x) = algebraMap R S (c * y)) :
    algebraMap R S x = algebraMap R S y 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x y : R} {c : ↥M} (h : (algebraMap R S) (↑c * x) = (algebraMap R S) (↑c * y))
Goal: (algebraMap R S) x = (algebraMap R S) y
-- IsLocalization.map_left_cancel
theorem map_left_cancel {x y} {c : M} (h : algebraMap R S (x * c) = algebraMap R S (y * c)) :
    algebraMap R S x = algebraMap R S y 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x y : R} {c : ↥M} (h : (algebraMap R S) (x * ↑c) = (algebraMap R S) (y * ↑c))
Goal: (algebraMap R S) x = (algebraMap R S) y
-- IsLocalization.eq_zero_of_fst_eq_zero
theorem eq_zero_of_fst_eq_zero {z x} {y : M} (h : z * algebraMap R S y = algebraMap R S x)
    (hx : x = 0) : z = 0 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {z : S} {x : R} {y : ↥M} (h : z * (algebraMap R S) ↑y = (algebraMap R S) x) (hx : x = 0)
Goal: z = 0
-- IsLocalization.map_eq_zero_iff
theorem map_eq_zero_iff (r : R) : algebraMap R S r = 0 ↔ ∃ m : M, ↑m * r = 0 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (r : R)
Goal: (algebraMap R S) r = 0 ↔ ∃ m, ↑m * r = 0
-- IsLocalization.mk'_sec
@[simp]
theorem mk'_sec (z : S) : mk' S (IsLocalization.sec M z).1 (IsLocalization.sec M z).2 = z 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (z : S)
Goal: IsLocalization.mk' S (IsLocalization.sec M z).1 (IsLocalization.sec M z).2 = z
-- IsLocalization.mk'_mul
theorem mk'_mul (x₁ x₂ : R) (y₁ y₂ : M) : mk' S (x₁ * x₂) (y₁ * y₂) = mk' S x₁ y₁ * mk' S x₂ y₂ 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (x₁ x₂ : R) (y₁ y₂ : ↥M)
Goal: IsLocalization.mk' S (x₁ * x₂) (y₁ * y₂) = IsLocalization.mk' S x₁ y₁ * IsLocalization.mk' S x₂ y₂
-- IsLocalization.mk'_one
theorem mk'_one (x) : mk' S x (1 : M) = algebraMap R S x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R)
Goal: IsLocalization.mk' S x 1 = (algebraMap R S) x
-- IsLocalization.mk'_spec
@[simp]
theorem mk'_spec (x) (y : M) : mk' S x y * algebraMap R S y = algebraMap R S x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (y : ↥M)
Goal: IsLocalization.mk' S x y * (algebraMap R S) ↑y = (algebraMap R S) x
-- IsLocalization.mk'_spec'
@[simp]
theorem mk'_spec' (x) (y : M) : algebraMap R S y * mk' S x y = algebraMap R S x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (y : ↥M)
Goal: (algebraMap R S) ↑y * IsLocalization.mk' S x y = (algebraMap R S) x
-- IsLocalization.mk'_spec_mk
@[simp]
theorem mk'_spec_mk (x) (y : R) (hy : y ∈ M) :
    mk' S x ⟨y, hy⟩ * algebraMap R S y = algebraMap R S x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (x y : R) (hy : y ∈ M)
Goal: IsLocalization.mk' S x ⟨y, hy⟩ * (algebraMap R S) y = (algebraMap R S) x
-- IsLocalization.mk'_spec'_mk
@[simp]
theorem mk'_spec'_mk (x) (y : R) (hy : y ∈ M) :
    algebraMap R S y * mk' S x ⟨y, hy⟩ = algebraMap R S x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (x y : R) (hy : y ∈ M)
Goal: (algebraMap R S) y * IsLocalization.mk' S x ⟨y, hy⟩ = (algebraMap R S) x
-- IsLocalization.eq_mk'_iff_mul_eq
theorem eq_mk'_iff_mul_eq {x} {y : M} {z} :
    z = mk' S x y ↔ z * algebraMap R S y = algebraMap R S x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : R} {y : ↥M} {z : S}
Goal: z = IsLocalization.mk' S x y ↔ z * (algebraMap R S) ↑y = (algebraMap R S) x
-- IsLocalization.mk'_eq_iff_eq_mul
theorem mk'_eq_iff_eq_mul {x} {y : M} {z} :
    mk' S x y = z ↔ algebraMap R S x = z * algebraMap R S y 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : R} {y : ↥M} {z : S}
Goal: IsLocalization.mk' S x y = z ↔ (algebraMap R S) x = z * (algebraMap R S) ↑y
-- IsLocalization.mk'_add_eq_iff_add_mul_eq_mul
theorem mk'_add_eq_iff_add_mul_eq_mul {x} {y : M} {z₁ z₂} :
    mk' S x y + z₁ = z₂ ↔ algebraMap R S x + z₁ * algebraMap R S y = z₂ * algebraMap R S y 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : R} {y : ↥M} {z₁ z₂ : S}
Goal: IsLocalization.mk' S x y + z₁ = z₂ ↔ (algebraMap R S) x + z₁ * (algebraMap R S) ↑y = z₂ * (algebraMap R S) ↑y
-- IsLocalization.mk'_pow
theorem mk'_pow (x : R) (y : M) (n : ℕ) : mk' S (x ^ n) (y ^ n) = mk' S x y ^ n 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (y : ↥M) (n : ℕ)
Goal: IsLocalization.mk' S (x ^ n) (y ^ n) = IsLocalization.mk' S x y ^ n
-- IsLocalization.mk'_surjective
theorem mk'_surjective (z : S) : ∃ (x : _) (y : M), mk' S x y = z 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (z : S)
Goal: ∃ x y, IsLocalization.mk' S x y = z
-- IsLocalization.mk'_eq_iff_eq
theorem mk'_eq_iff_eq {x₁ x₂} {y₁ y₂ : M} :
    mk' S x₁ y₁ = mk' S x₂ y₂ ↔ algebraMap R S (y₂ * x₁) = algebraMap R S (y₁ * x₂) 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x₁ x₂ : R} {y₁ y₂ : ↥M}
Goal: IsLocalization.mk' S x₁ y₁ = IsLocalization.mk' S x₂ y₂ ↔ (algebraMap R S) (↑y₂ * x₁) = (algebraMap R S) (↑y₁ * x₂)
-- IsLocalization.mk'_eq_iff_eq'
theorem mk'_eq_iff_eq' {x₁ x₂} {y₁ y₂ : M} :
    mk' S x₁ y₁ = mk' S x₂ y₂ ↔ algebraMap R S (x₁ * y₂) = algebraMap R S (x₂ * y₁) 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x₁ x₂ : R} {y₁ y₂ : ↥M}
Goal: IsLocalization.mk' S x₁ y₁ = IsLocalization.mk' S x₂ y₂ ↔ (algebraMap R S) (x₁ * ↑y₂) = (algebraMap R S) (x₂ * ↑y₁)
-- IsLocalization.mk'_mem_iff
theorem mk'_mem_iff {x} {y : M} {I : Ideal S} : mk' S x y ∈ I ↔ algebraMap R S x ∈ I 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : R} {y : ↥M} {I : Ideal S}
Goal: IsLocalization.mk' S x y ∈ I ↔ (algebraMap R S) x ∈ I
-- IsLocalization.eq
protected theorem eq {a₁ b₁} {a₂ b₂ : M} :
    mk' S a₁ a₂ = mk' S b₁ b₂ ↔ ∃ c : M, ↑c * (↑b₂ * a₁) = c * (a₂ * b₁) 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {a₁ b₁ : R} {a₂ b₂ : ↥M}
Goal: IsLocalization.mk' S a₁ a₂ = IsLocalization.mk' S b₁ b₂ ↔ ∃ c, ↑c * (↑b₂ * a₁) = ↑c * (↑a₂ * b₁)
-- IsLocalization.mk'_eq_zero_iff
theorem mk'_eq_zero_iff (x : R) (s : M) : mk' S x s = 0 ↔ ∃ m : M, ↑m * x = 0 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (s : ↥M)
Goal: IsLocalization.mk' S x s = 0 ↔ ∃ m, ↑m * x = 0
-- IsLocalization.mk'_zero
@[simp]
theorem mk'_zero (s : M) : IsLocalization.mk' S 0 s = 0 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (s : ↥M)
Goal: IsLocalization.mk' S 0 s = 0
-- IsLocalization.ne_zero_of_mk'_ne_zero
theorem ne_zero_of_mk'_ne_zero {x : R} {y : M} (hxy : IsLocalization.mk' S x y ≠ 0) : x ≠ 0 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : R} {y : ↥M} (hxy : IsLocalization.mk' S x y ≠ 0)
Goal: x ≠ 0
-- IsLocalization.eq_iff_eq
theorem eq_iff_eq {x y} :
    algebraMap R S x = algebraMap R S y ↔ algebraMap R P x = algebraMap R P y 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] [Algebra R P] [IsLocalization M P] {x y : R}
Goal: (algebraMap R S) x = (algebraMap R S) y ↔ (algebraMap R P) x = (algebraMap R P) y
-- IsLocalization.mk'_eq_iff_mk'_eq
theorem mk'_eq_iff_mk'_eq {x₁ x₂} {y₁ y₂ : M} :
    mk' S x₁ y₁ = mk' S x₂ y₂ ↔ mk' P x₁ y₁ = mk' P x₂ y₂ 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] [Algebra R P] [IsLocalization M P] {x₁ x₂ : R} {y₁ y₂ : ↥M}
Goal: IsLocalization.mk' S x₁ y₁ = IsLocalization.mk' S x₂ y₂ ↔ IsLocalization.mk' P x₁ y₁ = IsLocalization.mk' P x₂ y₂
-- IsLocalization.mk'_eq_of_eq
theorem mk'_eq_of_eq {a₁ b₁ : R} {a₂ b₂ : M} (H : ↑a₂ * b₁ = ↑b₂ * a₁) :
    mk' S a₁ a₂ = mk' S b₁ b₂ 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {a₁ b₁ : R} {a₂ b₂ : ↥M} (H : ↑a₂ * b₁ = ↑b₂ * a₁)
Goal: IsLocalization.mk' S a₁ a₂ = IsLocalization.mk' S b₁ b₂
-- IsLocalization.mk'_eq_of_eq'
theorem mk'_eq_of_eq' {a₁ b₁ : R} {a₂ b₂ : M} (H : b₁ * ↑a₂ = a₁ * ↑b₂) :
    mk' S a₁ a₂ = mk' S b₁ b₂ 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {a₁ b₁ : R} {a₂ b₂ : ↥M} (H : b₁ * ↑a₂ = a₁ * ↑b₂)
Goal: IsLocalization.mk' S a₁ a₂ = IsLocalization.mk' S b₁ b₂
-- IsLocalization.mk'_cancel
theorem mk'_cancel (a : R) (b c : M) :
    mk' S (a * c) (b * c) = mk' S a b 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (a : R) (b c : ↥M)
Goal: IsLocalization.mk' S (a * ↑c) (b * c) = IsLocalization.mk' S a b
-- IsLocalization.mk'_self
@[simp]
theorem mk'_self {x : R} (hx : x ∈ M) : mk' S x ⟨x, hx⟩ = 1 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : R} (hx : x ∈ M)
Goal: IsLocalization.mk' S x ⟨x, hx⟩ = 1
-- IsLocalization.mk'_self'
@[simp]
theorem mk'_self' {x : M} : mk' S (x : R) x = 1 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : ↥M}
Goal: IsLocalization.mk' S (↑x) x = 1
-- IsLocalization.mk'_self''
theorem mk'_self'' {x : M} : mk' S x.1 x = 1 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] {x : ↥M}
Goal: IsLocalization.mk' S (↑x) x = 1
-- IsLocalization.mul_mk'_eq_mk'_of_mul
theorem mul_mk'_eq_mk'_of_mul (x y : R) (z : M) :
    (algebraMap R S) x * mk' S y z = mk' S (x * y) z 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x y : R) (z : ↥M)
Goal: (algebraMap R S) x * IsLocalization.mk' S y z = IsLocalization.mk' S (x * y) z
-- IsLocalization.mk'_eq_mul_mk'_one
theorem mk'_eq_mul_mk'_one (x : R) (y : M) : mk' S x y = (algebraMap R S) x * mk' S 1 y 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (y : ↥M)
Goal: IsLocalization.mk' S x y = (algebraMap R S) x * IsLocalization.mk' S 1 y
-- IsLocalization.mk'_mul_cancel_left
@[simp]
theorem mk'_mul_cancel_left (x : R) (y : M) : mk' S (y * x : R) y = (algebraMap R S) x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (y : ↥M)
Goal: IsLocalization.mk' S (↑y * x) y = (algebraMap R S) x
-- IsLocalization.mk'_mul_cancel_right
theorem mk'_mul_cancel_right (x : R) (y : M) : mk' S (x * y) y = (algebraMap R S) x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (y : ↥M)
Goal: IsLocalization.mk' S (x * ↑y) y = (algebraMap R S) x
-- IsLocalization.mk'_mul_mk'_eq_one
@[simp]
theorem mk'_mul_mk'_eq_one (x y : M) : mk' S (x : R) y * mk' S (y : R) x = 1 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x y : ↥M)
Goal: IsLocalization.mk' S (↑x) y * IsLocalization.mk' S (↑y) x = 1
-- IsLocalization.mk'_mul_mk'_eq_one'
theorem mk'_mul_mk'_eq_one' (x : R) (y : M) (h : x ∈ M) : mk' S x y * mk' S (y : R) ⟨x, h⟩ = 1 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (y : ↥M) (h : x ∈ M)
Goal: IsLocalization.mk' S x y * IsLocalization.mk' S ↑y ⟨x, h⟩ = 1
-- IsLocalization.smul_mk'
theorem smul_mk' (x y : R) (m : M) : x • mk' S y m = mk' S (x * y) m 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x y : R) (m : ↥M)
Goal: x • IsLocalization.mk' S y m = IsLocalization.mk' S (x * y) m
-- IsLocalization.smul_mk'_one
@[simp] theorem smul_mk'_one (x : R) (m : M) : x • mk' S 1 m = mk' S x m 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x : R) (m : ↥M)
Goal: x • IsLocalization.mk' S 1 m = IsLocalization.mk' S x m
-- IsLocalization.smul_mk'_self
@[simp] lemma smul_mk'_self {m : M} {r : R} :
    (m : R) • mk' S r m = algebraMap R S r 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] {m : ↥M} {r : R}
Goal: ↑m • IsLocalization.mk' S r m = (algebraMap R S) r
-- IsLocalization.invertible_mk'_one_invOf
@[simps]
instance invertible_mk'_one (s : M) : Invertible (IsLocalization.mk' S (1 : R) s) 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (s : ↥M)
Goal: ⅟(IsLocalization.mk' S 1 s) = (algebraMap R S) ↑s
-- IsLocalization.isUnit_comp
theorem isUnit_comp (j : S →+* P) (y : M) : IsUnit (j.comp (algebraMap R S) y) 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] (j : S →+* P) (y : ↥M)
Goal: IsUnit ((j.comp (algebraMap R S)) ↑y)
-- IsLocalization.eq_of_eq
theorem eq_of_eq {g : R →+* P} (hg : ∀ y : M, IsUnit (g y)) {x y}
    (h : (algebraMap R S) x = (algebraMap R S) y) : g x = g y 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] {g : R →+* P} (hg : ∀ (y : ↥M), IsUnit (g ↑y)) {x y : R} (h : (algebraMap R S) x = (algebraMap R S) y)
Goal: g x = g y
-- IsLocalization.mk'_add
theorem mk'_add (x₁ x₂ : R) (y₁ y₂ : M) :
    mk' S (x₁ * y₂ + x₂ * y₁) (y₁ * y₂) = mk' S x₁ y₁ + mk' S x₂ y₂ 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] [IsLocalization M S] (x₁ x₂ : R) (y₁ y₂ : ↥M)
Goal: IsLocalization.mk' S (x₁ * ↑y₂ + x₂ * ↑y₁) (y₁ * y₂) = IsLocalization.mk' S x₁ y₁ + IsLocalization.mk' S x₂ y₂
-- IsLocalization.mul_add_inv_left
theorem mul_add_inv_left {g : R →+* P} (h : ∀ y : M, IsUnit (g y)) (y : M) (w z₁ z₂ : P) :
    w * ↑(IsUnit.liftRight (g.toMonoidHom.restrict M) h y)⁻¹ + z₁ =
    z₂ ↔ w + g y * z₁ = g y * z₂ 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {P : Type u_3} [CommSemiring P] {g : R →+* P} (h : ∀ (y : ↥M), IsUnit (g ↑y)) (y : ↥M) (w z₁ z₂ : P)
Goal: w * ↑((IsUnit.liftRight ((↑g).restrict M) h) y)⁻¹ + z₁ = z₂ ↔ w + g ↑y * z₁ = g ↑y * z₂
-- IsLocalization.lift_spec_mul_add
theorem lift_spec_mul_add {g : R →+* P} (hg : ∀ y : M, IsUnit (g y)) (z w w' v) :
    ((toLocalizationWithZeroMap M S).lift g.toMonoidWithZeroHom hg) z * w + w' = v ↔
      g ((toLocalizationMap M S).sec z).1 * w + g ((toLocalizationMap M S).sec z).2 * w' =
        g ((toLocalizationMap M S).sec z).2 * v 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] {g : R →+* P} (hg : ∀ (y : ↥M), IsUnit (g ↑y)) (z : S) (w w' v : P)
Goal: ((IsLocalization.toLocalizationWithZeroMap M S).lift g.toMonoidWithZeroHom hg) z * w + w' = v ↔
  g ((IsLocalization.toLocalizationMap M S).sec z).1 * w + g ↑((IsLocalization.toLocalizationMap M S).sec z).2 * w' =
    g ↑((IsLocalization.toLocalizationMap M S).sec z).2 * v
-- IsLocalization.lift_mk'
theorem lift_mk' (x y) :
    lift hg (mk' S x y) = g x * ↑(IsUnit.liftRight (g.toMonoidHom.restrict M) hg y)⁻¹ 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] {g : R →+* P} (hg : ∀ (y : ↥M), IsUnit (g ↑y)) (x : R) (y : ↥M)
Goal: (IsLocalization.lift hg) (IsLocalization.mk' S x y) = g x * ↑((IsUnit.liftRight ((↑g).restrict M) hg) y)⁻¹
-- IsLocalization.lift_mk'_spec
theorem lift_mk'_spec (x v) (y : M) : lift hg (mk' S x y) = v ↔ g x = g y * v 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] {g : R →+* P} (hg : ∀ (y : ↥M), IsUnit (g ↑y)) (x : R) (v : P) (y : ↥M)
Goal: (IsLocalization.lift hg) (IsLocalization.mk' S x y) = v ↔ g x = g ↑y * v
-- IsLocalization.lift_eq
@[simp]
theorem lift_eq (x : R) : lift hg ((algebraMap R S) x) = g x 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] {g : R →+* P} (hg : ∀ (y : ↥M), IsUnit (g ↑y)) (x : R)
Goal: (IsLocalization.lift hg) ((algebraMap R S) x) = g x
-- IsLocalization.lift_eq_iff
theorem lift_eq_iff {x y : R × M} :
    lift hg (mk' S x.1 x.2) = lift hg (mk' S y.1 y.2) ↔ g (x.1 * y.2) = g (y.1 * x.2) 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] {g : R →+* P} (hg : ∀ (y : ↥M), IsUnit (g ↑y)) {x y : R × ↥M}
Goal: (IsLocalization.lift hg) (IsLocalization.mk' S x.1 x.2) = (IsLocalization.lift hg) (IsLocalization.mk' S y.1 y.2) ↔
  g (x.1 * ↑y.2) = g (y.1 * ↑x.2)
-- IsLocalization.lift_comp
@[simp]
theorem lift_comp : (lift hg).comp (algebraMap R S) = g 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] {g : R →+* P} (hg : ∀ (y : ↥M), IsUnit (g ↑y))
Goal: (IsLocalization.lift hg).comp (algebraMap R S) = g
-- IsLocalization.lift_of_comp
@[simp]
theorem lift_of_comp (j : S →+* P) : lift (isUnit_comp M j) = j 
Arguments: {R : Type u_1} [CommSemiring R] {M : Submonoid R} {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] (j : S →+* P)
Goal: IsLocalization.lift ⋯ = j
-- IsLocalization.monoidHom_ext
theorem monoidHom_ext ⦃j k : S →* P⦄
    (h : j.comp (algebraMap R S : R →* S) = k.comp (algebraMap R S)) : j = k 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] ⦃j k : S →* P⦄ (h : j.comp ↑(algebraMap R S) = k.comp ↑(algebraMap R S))
Goal: j = k
-- IsLocalization.ringHom_ext
theorem ringHom_ext ⦃j k : S →+* P⦄ (h : j.comp (algebraMap R S) = k.comp (algebraMap R S)) :
    j = k 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] ⦃j k : S →+* P⦄ (h : j.comp (algebraMap R S) = k.comp (algebraMap R S))
Goal: j = k
-- IsLocalization.algHom_subsingleton
theorem algHom_subsingleton [Algebra R P] : Subsingleton (S →ₐ[R] P) 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [IsLocalization M S] [Algebra R P]
Goal: Subsingleton (S →ₐ[R] P)