ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors
theorem multiplicity_factor_dvd_iso_eq_multiplicity_of_mem_normalizedFactors {m p : M} {n : N}
    (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ normalizedFactors m)
    {d : { l : M // l ∣ m } ≃ { l : N // l ∣ n }} (hd : ∀ l l', (d l : N) ∣ d l' ↔ (l : M) ∣ l') :
    multiplicity (d ⟨p, dvd_of_mem_normalizedFactors hp⟩ : N) n = multiplicity p m 
Arguments: {M : Type u_1} [CancelCommMonoidWithZero M] {N : Type u_2} [CancelCommMonoidWithZero N] [Unique Mˣ] [Unique Nˣ] [UniqueFactorizationMonoid M] [UniqueFactorizationMonoid N] [DecidableRel fun x x_1 => x ∣ x_1] [DecidableRel fun x x_1 => x ∣ x_1] {m p : M} {n : N} (hm : m ≠ 0) (hn : n ≠ 0) (hp : p ∈ UniqueFactorizationMonoid.normalizedFactors m) {d : { l // l ∣ m } ≃ { l // l ∣ n }} (hd : ∀ (l l' : { l // l ∣ m }), ↑(d l) ∣ ↑(d l') ↔ ↑l ∣ ↑l')
Goal: multiplicity (↑(d ⟨p, ⋯⟩)) n = multiplicity p m
-- IsLocalRingHom.map_nonunit
class IsLocalRingHom {R S : Type*} [Semiring R] [Semiring S] (f : R →+* S) : Prop where
    map_nonunit : ∀ a, IsUnit (f a) → IsUnit a
Arguments: {R : Type u_1} {S : Type u_2} [Semiring R] [Semiring S] {f : R →+* S} [self : IsLocalRingHom f] (a : R)
Goal: IsUnit (f a) → IsUnit a
-- Ideal.primeCompl_le_nonZeroDivisors
theorem primeCompl_le_nonZeroDivisors [NoZeroDivisors R] : P.primeCompl ≤ nonZeroDivisors R 
Arguments: {R : Type u_1} [CommSemiring R] (P : Ideal R) [hp : P.IsPrime] [NoZeroDivisors R]
Goal: P.primeCompl ≤ nonZeroDivisors R
-- IsLocalization.AtPrime.Nontrivial
theorem AtPrime.Nontrivial [IsLocalization.AtPrime S P] : Nontrivial S 
Arguments: {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (P : Ideal R) [hp : P.IsPrime] [IsLocalization.AtPrime S P]
Goal: Nontrivial S
-- IsLocalization.AtPrime.localRing
theorem AtPrime.localRing [IsLocalization.AtPrime S P] : LocalRing S 
Arguments: {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (P : Ideal R) [hp : P.IsPrime] [IsLocalization.AtPrime S P]
Goal: LocalRing S
-- IsLocalization.AtPrime.isUnit_to_map_iff
theorem isUnit_to_map_iff (x : R) : IsUnit ((algebraMap R S) x) ↔ x ∈ I.primeCompl 
Arguments: {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R)
Goal: IsUnit ((algebraMap R S) x) ↔ x ∈ I.primeCompl
-- IsLocalization.AtPrime.to_map_mem_maximal_iff
theorem to_map_mem_maximal_iff (x : R) (h : LocalRing S := localRing S I) :
    algebraMap R S x ∈ LocalRing.maximalIdeal S ↔ x ∈ I 
Arguments: {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R) (h : LocalRing S := ⋯)
Goal: (algebraMap R S) x ∈ LocalRing.maximalIdeal S ↔ x ∈ I
-- IsLocalization.AtPrime.comap_maximalIdeal
theorem comap_maximalIdeal (h : LocalRing S := localRing S I) :
    (LocalRing.maximalIdeal S).comap (algebraMap R S) = I 
Arguments: {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (h : LocalRing S := ⋯)
Goal: Ideal.comap (algebraMap R S) (LocalRing.maximalIdeal S) = I
-- IsLocalization.AtPrime.isUnit_mk'_iff
theorem isUnit_mk'_iff (x : R) (y : I.primeCompl) : IsUnit (mk' S x y) ↔ x ∈ I.primeCompl 
Arguments: {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R) (y : ↥I.primeCompl)
Goal: IsUnit (IsLocalization.mk' S x y) ↔ x ∈ I.primeCompl
-- IsLocalization.AtPrime.mk'_mem_maximal_iff
theorem mk'_mem_maximal_iff (x : R) (y : I.primeCompl) (h : LocalRing S := localRing S I) :
    mk' S x y ∈ LocalRing.maximalIdeal S ↔ x ∈ I 
Arguments: {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R) (y : ↥I.primeCompl) (h : LocalRing S := ⋯)
Goal: IsLocalization.mk' S x y ∈ LocalRing.maximalIdeal S ↔ x ∈ I
-- Localization.AtPrime.comap_maximalIdeal
theorem AtPrime.comap_maximalIdeal :
    Ideal.comap (algebraMap R (Localization.AtPrime I))
        (LocalRing.maximalIdeal (Localization I.primeCompl)) =
      I 
Arguments: {R : Type u_1} [CommSemiring R] {I : Ideal R} [hI : I.IsPrime]
Goal: Ideal.comap (algebraMap R (Localization.AtPrime I)) (LocalRing.maximalIdeal (Localization I.primeCompl)) = I
-- Localization.AtPrime.map_eq_maximalIdeal
theorem AtPrime.map_eq_maximalIdeal :
    Ideal.map (algebraMap R (Localization.AtPrime I)) I =
      LocalRing.maximalIdeal (Localization I.primeCompl) 
Arguments: {R : Type u_1} [CommSemiring R] {I : Ideal R} [hI : I.IsPrime]
Goal: Ideal.map (algebraMap R (Localization.AtPrime I)) I = LocalRing.maximalIdeal (Localization I.primeCompl)
-- Localization.le_comap_primeCompl_iff
theorem le_comap_primeCompl_iff {J : Ideal P} [hJ : J.IsPrime] {f : R →+* P} :
    I.primeCompl ≤ J.primeCompl.comap f ↔ J.comap f ≤ I 
Arguments: {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] {I : Ideal R} [hI : I.IsPrime] {J : Ideal P} [hJ : J.IsPrime] {f : R →+* P}
Goal: I.primeCompl ≤ Submonoid.comap f J.primeCompl ↔ Ideal.comap f J ≤ I
-- Localization.localRingHom_to_map
theorem localRingHom_to_map (J : Ideal P) [J.IsPrime] (f : R →+* P) (hIJ : I = J.comap f)
    (x : R) : localRingHom I J f hIJ (algebraMap _ _ x) = algebraMap _ _ (f x) 
Arguments: {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R →+* P) (hIJ : I = Ideal.comap f J) (x : R)
Goal: (Localization.localRingHom I J f hIJ) ((algebraMap R (Localization.AtPrime I)) x) =
  (algebraMap P (Localization.AtPrime J)) (f x)
-- Localization.localRingHom_mk'
theorem localRingHom_mk' (J : Ideal P) [J.IsPrime] (f : R →+* P) (hIJ : I = J.comap f) (x : R)
    (y : I.primeCompl) :
    localRingHom I J f hIJ (IsLocalization.mk' _ x y) =
      IsLocalization.mk' (Localization.AtPrime J) (f x)
        (⟨f y, le_comap_primeCompl_iff.mpr (ge_of_eq hIJ) y.2⟩ : J.primeCompl) 
Arguments: {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R →+* P) (hIJ : I = Ideal.comap f J) (x : R) (y : ↥I.primeCompl)
Goal: (Localization.localRingHom I J f hIJ) (IsLocalization.mk' (Localization.AtPrime I) x y) =
  IsLocalization.mk' (Localization.AtPrime J) (f x) ⟨f ↑y, ⋯⟩
-- Localization.localRingHom_unique
theorem localRingHom_unique (J : Ideal P) [J.IsPrime] (f : R →+* P) (hIJ : I = J.comap f)
    {j : Localization.AtPrime I →+* Localization.AtPrime J}
    (hj : ∀ x : R, j (algebraMap _ _ x) = algebraMap _ _ (f x)) : localRingHom I J f hIJ = j 
Arguments: {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R →+* P) (hIJ : I = Ideal.comap f J) {j : Localization.AtPrime I →+* Localization.AtPrime J} (hj : ∀ (x : R), j ((algebraMap R (Localization.AtPrime I)) x) = (algebraMap P (Localization.AtPrime J)) (f x))
Goal: Localization.localRingHom I J f hIJ = j
-- Localization.localRingHom_id
@[simp]
theorem localRingHom_id : localRingHom I I (RingHom.id R) (Ideal.comap_id I).symm = RingHom.id _ 
Arguments: {R : Type u_1} [CommSemiring R] (I : Ideal R) [hI : I.IsPrime]
Goal: Localization.localRingHom I I (RingHom.id R) ⋯ = RingHom.id (Localization.AtPrime I)
-- Localization.localRingHom_comp
theorem localRingHom_comp {S : Type*} [CommSemiring S] (J : Ideal S) [hJ : J.IsPrime] (K : Ideal P)
    [hK : K.IsPrime] (f : R →+* S) (hIJ : I = J.comap f) (g : S →+* P) (hJK : J = K.comap g) :
    localRingHom I K (g.comp f) (by rw [hIJ, hJK, Ideal.comap_comap f g]) =
      (localRingHom J K g hJK).comp (localRingHom I J f hIJ) 
Arguments: {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] {S : Type u_4} [CommSemiring S] (J : Ideal S) [hJ : J.IsPrime] (K : Ideal P) [hK : K.IsPrime] (f : R →+* S) (hIJ : I = Ideal.comap f J) (g : S →+* P) (hJK : J = Ideal.comap g K)
Goal: Localization.localRingHom I K (g.comp f) ⋯ =
  (Localization.localRingHom J K g hJK).comp (Localization.localRingHom I J f hIJ)
-- IsLocalizedModule.isBaseChange
theorem IsLocalizedModule.isBaseChange [IsLocalizedModule S f] : IsBaseChange A f 
Arguments: {R : Type u_1} [CommSemiring R] (S : Submonoid R) (A : Type u_2) [CommRing A] [Algebra R A] [IsLocalization S A] {M : Type u_3} [AddCommMonoid M] [Module R M] {M' : Type u_4} [AddCommMonoid M'] [Module R M'] [Module A M'] [IsScalarTower R A M'] (f : M →ₗ[R] M') [IsLocalizedModule S f]
Goal: IsBaseChange A f
-- isLocalizedModule_iff_isBaseChange
theorem isLocalizedModule_iff_isBaseChange : IsLocalizedModule S f ↔ IsBaseChange A f 
Arguments: {R : Type u_1} [CommSemiring R] (S : Submonoid R) (A : Type u_2) [CommRing A] [Algebra R A] [IsLocalization S A] {M : Type u_3} [AddCommMonoid M] [Module R M] {M' : Type u_4} [AddCommMonoid M'] [Module R M'] [Module A M'] [IsScalarTower R A M'] (f : M →ₗ[R] M')
Goal: IsLocalizedModule S f ↔ IsBaseChange A f
-- IsFractionRing.to_map_eq_zero_iff
theorem to_map_eq_zero_iff {x : R} : algebraMap R K x = 0 ↔ x = 0 
Arguments: {R : Type u_1} [CommRing R] {K : Type u_5} [CommRing K] [Algebra R K] [IsFractionRing R K] {x : R}
Goal: (algebraMap R K) x = 0 ↔ x = 0
-- IsFractionRing.injective
protected theorem injective : Function.Injective (algebraMap R K) 
Arguments: (R : Type u_1) [CommRing R] (K : Type u_5) [CommRing K] [Algebra R K] [IsFractionRing R K]
Goal: Function.Injective ⇑(algebraMap R K)
-- IsFractionRing.coe_inj
@[norm_cast, simp]
-- Porting note: using `↑` didn't work, so I needed to explicitly put in the cast myself
theorem coe_inj {a b : R} : (Algebra.cast a : K) = Algebra.cast b ↔ a = b 
Arguments: {R : Type u_1} [CommRing R] {K : Type u_5} [CommRing K] [Algebra R K] [IsFractionRing R K] {a b : R}
Goal: ↑a = ↑b ↔ a = b
-- IsFractionRing.to_map_ne_zero_of_mem_nonZeroDivisors
protected theorem to_map_ne_zero_of_mem_nonZeroDivisors [Nontrivial R] {x : R}
    (hx : x ∈ nonZeroDivisors R) : algebraMap R K x ≠ 0 
Arguments: {R : Type u_1} [CommRing R] {K : Type u_5} [CommRing K] [Algebra R K] [IsFractionRing R K] [Nontrivial R] {x : R} (hx : x ∈ nonZeroDivisors R)
Goal: (algebraMap R K) x ≠ 0
-- IsFractionRing.isDomain
protected theorem isDomain : IsDomain K 
Arguments: (A : Type u_4) [CommRing A] [IsDomain A] {K : Type u_5} [CommRing K] [Algebra A K] [IsFractionRing A K]
Goal: IsDomain K
-- IsFractionRing.inv_def
protected noncomputable irreducible_def inv (z : K) : K 
Arguments: (A : Type u_6) [CommRing A] [IsDomain A] {K : Type u_7} [CommRing K] [Algebra A K] [IsFractionRing A K] (z : K)
Goal: IsFractionRing.inv A z =
  if h : z = 0 then 0
  else
    IsLocalization.mk' K ↑(IsLocalization.sec (nonZeroDivisors A) z).2 ⟨(IsLocalization.sec (nonZeroDivisors A) z).1, ⋯⟩
-- IsFractionRing.mul_inv_cancel
protected theorem mul_inv_cancel (x : K) (hx : x ≠ 0) : x * IsFractionRing.inv A x = 1 
Arguments: (A : Type u_4) [CommRing A] [IsDomain A] {K : Type u_5} [CommRing K] [Algebra A K] [IsFractionRing A K] (x : K) (hx : x ≠ 0)
Goal: x * IsFractionRing.inv A x = 1
-- IsFractionRing.surjective_iff_isField
lemma surjective_iff_isField [IsDomain R] : Function.Surjective (algebraMap R K) ↔ IsField R 
Arguments: {R : Type u_1} [CommRing R] {K : Type u_5} [CommRing K] [Algebra R K] [IsFractionRing R K] [IsDomain R]
Goal: Function.Surjective ⇑(algebraMap R K) ↔ IsField R
-- IsFractionRing.mk'_mk_eq_div
theorem mk'_mk_eq_div {r s} (hs : s ∈ nonZeroDivisors A) :
    mk' K r ⟨s, hs⟩ = algebraMap A K r / algebraMap A K s 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {r s : A} (hs : s ∈ nonZeroDivisors A)
Goal: IsLocalization.mk' K r ⟨s, hs⟩ = (algebraMap A K) r / (algebraMap A K) s
-- IsFractionRing.mk'_eq_div
@[simp]
theorem mk'_eq_div {r} (s : nonZeroDivisors A) : mk' K r s = algebraMap A K r / algebraMap A K s 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {r : A} (s : ↥(nonZeroDivisors A))
Goal: IsLocalization.mk' K r s = (algebraMap A K) r / (algebraMap A K) ↑s
-- IsFractionRing.div_surjective
theorem div_surjective (z : K) :
    ∃ x y : A, y ∈ nonZeroDivisors A ∧ algebraMap _ _ x / algebraMap _ _ y = z 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (z : K)
Goal: ∃ x, ∃ y ∈ nonZeroDivisors A, (algebraMap A K) x / (algebraMap A K) y = z
-- IsFractionRing.isUnit_map_of_injective
theorem isUnit_map_of_injective (hg : Function.Injective g) (y : nonZeroDivisors A) :
    IsUnit (g y) 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] {L : Type u_7} [Field L] {g : A →+* L} (hg : Function.Injective ⇑g) (y : ↥(nonZeroDivisors A))
Goal: IsUnit (g ↑y)
-- IsFractionRing.mk'_eq_zero_iff_eq_zero
@[simp]
theorem mk'_eq_zero_iff_eq_zero [Algebra R K] [IsFractionRing R K] {x : R} {y : nonZeroDivisors R} :
    mk' K x y = 0 ↔ x = 0 
Arguments: {R : Type u_1} [CommRing R] {K : Type u_5} [Field K] [Algebra R K] [IsFractionRing R K] {x : R} {y : ↥(nonZeroDivisors R)}
Goal: IsLocalization.mk' K x y = 0 ↔ x = 0
-- IsFractionRing.mk'_eq_one_iff_eq
theorem mk'_eq_one_iff_eq {x : A} {y : nonZeroDivisors A} : mk' K x y = 1 ↔ x = y 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {x : A} {y : ↥(nonZeroDivisors A)}
Goal: IsLocalization.mk' K x y = 1 ↔ x = ↑y
-- IsFractionRing.lift_algebraMap
@[simp]
theorem lift_algebraMap (hg : Injective g) (x) : lift hg (algebraMap A K x) = g x 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] {K : Type u_5} [Field K] {L : Type u_7} [Field L] [Algebra A K] [IsFractionRing A K] {g : A →+* L} (hg : Function.Injective ⇑g) (x : A)
Goal: (IsFractionRing.lift hg) ((algebraMap A K) x) = g x
-- IsFractionRing.lift_mk'
theorem lift_mk' (hg : Injective g) (x) (y : nonZeroDivisors A) :
    lift hg (mk' K x y) = g x / g y 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] {K : Type u_5} [Field K] {L : Type u_7} [Field L] [Algebra A K] [IsFractionRing A K] {g : A →+* L} (hg : Function.Injective ⇑g) (x : A) (y : ↥(nonZeroDivisors A))
Goal: (IsFractionRing.lift hg) (IsLocalization.mk' K x y) = g x / g ↑y
-- IsFractionRing.isFractionRing_iff_of_base_ringEquiv
theorem isFractionRing_iff_of_base_ringEquiv (h : R ≃+* P) :
    IsFractionRing R S ↔
      @IsFractionRing P _ S _ ((algebraMap R S).comp h.symm.toRingHom).toAlgebra 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] {P : Type u_3} [CommRing P] (h : R ≃+* P)
Goal: IsFractionRing R S ↔ IsFractionRing P S
-- IsFractionRing.nontrivial
protected theorem nontrivial (R S : Type*) [CommRing R] [Nontrivial R] [CommRing S] [Algebra R S]
    [IsFractionRing R S] : Nontrivial S 
Arguments: (R : Type u_8) (S : Type u_9) [CommRing R] [Nontrivial R] [CommRing S] [Algebra R S] [IsFractionRing R S]
Goal: Nontrivial S
-- FractionRing.mk_eq_div
@[simp]
theorem mk_eq_div {r s} :
    (Localization.mk r s : FractionRing A) =
      (algebraMap _ _ r / algebraMap A _ s : FractionRing A) 
Arguments: (A : Type u_4) [CommRing A] [IsDomain A] {r : A} {s : ↥(nonZeroDivisors A)}
Goal: Localization.mk r s = (algebraMap A (FractionRing A)) r / (algebraMap A (FractionRing A)) ↑s
-- IsLocalization.mem_coeSubmodule
theorem mem_coeSubmodule (I : Ideal R) {x : S} :
    x ∈ coeSubmodule S I ↔ ∃ y : R, y ∈ I ∧ algebraMap R S y = x 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] (I : Ideal R) {x : S}
Goal: x ∈ IsLocalization.coeSubmodule S I ↔ ∃ y ∈ I, (algebraMap R S) y = x
-- IsLocalization.coeSubmodule_mono
theorem coeSubmodule_mono {I J : Ideal R} (h : I ≤ J) : coeSubmodule S I ≤ coeSubmodule S J 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] {I J : Ideal R} (h : I ≤ J)
Goal: IsLocalization.coeSubmodule S I ≤ IsLocalization.coeSubmodule S J
-- IsLocalization.coeSubmodule_bot
@[simp]
theorem coeSubmodule_bot : coeSubmodule S (⊥ : Ideal R) = ⊥ 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S]
Goal: IsLocalization.coeSubmodule S ⊥ = ⊥
-- IsLocalization.coeSubmodule_top
@[simp]
theorem coeSubmodule_top : coeSubmodule S (⊤ : Ideal R) = 1 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S]
Goal: IsLocalization.coeSubmodule S ⊤ = 1
-- IsLocalization.coeSubmodule_sup
@[simp]
theorem coeSubmodule_sup (I J : Ideal R) :
    coeSubmodule S (I ⊔ J) = coeSubmodule S I ⊔ coeSubmodule S J 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] (I J : Ideal R)
Goal: IsLocalization.coeSubmodule S (I ⊔ J) = IsLocalization.coeSubmodule S I ⊔ IsLocalization.coeSubmodule S J
-- IsLocalization.coeSubmodule_mul
@[simp]
theorem coeSubmodule_mul (I J : Ideal R) :
    coeSubmodule S (I * J) = coeSubmodule S I * coeSubmodule S J 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] (I J : Ideal R)
Goal: IsLocalization.coeSubmodule S (I * J) = IsLocalization.coeSubmodule S I * IsLocalization.coeSubmodule S J
-- IsLocalization.coeSubmodule_fg
theorem coeSubmodule_fg (hS : Function.Injective (algebraMap R S)) (I : Ideal R) :
    Submodule.FG (coeSubmodule S I) ↔ Submodule.FG I 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] (hS : Function.Injective ⇑(algebraMap R S)) (I : Ideal R)
Goal: (IsLocalization.coeSubmodule S I).FG ↔ Submodule.FG I
-- IsLocalization.coeSubmodule_span
@[simp]
theorem coeSubmodule_span (s : Set R) :
    coeSubmodule S (Ideal.span s) = Submodule.span R (algebraMap R S '' s) 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] (s : Set R)
Goal: IsLocalization.coeSubmodule S (Ideal.span s) = Submodule.span R (⇑(algebraMap R S) '' s)
-- IsLocalization.coeSubmodule_span_singleton
theorem coeSubmodule_span_singleton (x : R) :
    coeSubmodule S (Ideal.span {x}) = Submodule.span R {(algebraMap R S) x} 
Arguments: {R : Type u_1} [CommRing R] (S : Type u_2) [CommRing S] [Algebra R S] (x : R)
Goal: IsLocalization.coeSubmodule S (Ideal.span {x}) = Submodule.span R {(algebraMap R S) x}
-- IsLocalization.isNoetherianRing
theorem isNoetherianRing (h : IsNoetherianRing R) : IsNoetherianRing S 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] (h : IsNoetherianRing R)
Goal: IsNoetherianRing S
-- IsLocalization.coeSubmodule_le_coeSubmodule
@[mono]
theorem coeSubmodule_le_coeSubmodule (h : M ≤ nonZeroDivisors R) {I J : Ideal R} :
    coeSubmodule S I ≤ coeSubmodule S J ↔ I ≤ J 
Arguments: {R : Type u_1} [CommRing R] {M : Submonoid R} {S : Type u_2} [CommRing S] [Algebra R S] [IsLocalization M S] (h : M ≤ nonZeroDivisors R) {I J : Ideal R}
Goal: IsLocalization.coeSubmodule S I ≤ IsLocalization.coeSubmodule S J ↔ I ≤ J
-- IsLocalization.coeSubmodule_strictMono
@[mono]
theorem coeSubmodule_strictMono (h : M ≤ nonZeroDivisors R) :
    StrictMono (coeSubmodule S : Ideal R → Submodule R S) 
Arguments: {R : Type u_1} [CommRing R] {M : Submonoid R} {S : Type u_2} [CommRing S] [Algebra R S] [IsLocalization M S] (h : M ≤ nonZeroDivisors R)
Goal: StrictMono (IsLocalization.coeSubmodule S)
-- IsLocalization.coeSubmodule_injective
theorem coeSubmodule_injective (h : M ≤ nonZeroDivisors R) :
    Function.Injective (coeSubmodule S : Ideal R → Submodule R S) 
Arguments: {R : Type u_1} [CommRing R] {M : Submonoid R} (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] (h : M ≤ nonZeroDivisors R)
Goal: Function.Injective (IsLocalization.coeSubmodule S)
-- IsLocalization.coeSubmodule_isPrincipal
theorem coeSubmodule_isPrincipal {I : Ideal R} (h : M ≤ nonZeroDivisors R) :
    (coeSubmodule S I).IsPrincipal ↔ I.IsPrincipal 
Arguments: {R : Type u_1} [CommRing R] {M : Submonoid R} (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] {I : Ideal R} (h : M ≤ nonZeroDivisors R)
Goal: (IsLocalization.coeSubmodule S I).IsPrincipal ↔ Submodule.IsPrincipal I
-- IsLocalization.mem_span_iff
theorem mem_span_iff {N : Type*} [AddCommGroup N] [Module R N] [Module S N] [IsScalarTower R S N]
    {x : N} {a : Set N} :
    x ∈ Submodule.span S a ↔ ∃ y ∈ Submodule.span R a, ∃ z : M, x = mk' S 1 z • y 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) {S : Type u_2} [CommRing S] [Algebra R S] [IsLocalization M S] {N : Type u_5} [AddCommGroup N] [Module R N] [Module S N] [IsScalarTower R S N] {x : N} {a : Set N}
Goal: x ∈ Submodule.span S a ↔ ∃ y ∈ Submodule.span R a, ∃ z, x = IsLocalization.mk' S 1 z • y
-- IsLocalization.mem_span_map
theorem mem_span_map {x : S} {a : Set R} :
    x ∈ Ideal.span (algebraMap R S '' a) ↔ ∃ y ∈ Ideal.span a, ∃ z : M, x = mk' S y z 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) {S : Type u_2} [CommRing S] [Algebra R S] [IsLocalization M S] {x : S} {a : Set R}
Goal: x ∈ Ideal.span (⇑(algebraMap R S) '' a) ↔ ∃ y ∈ Ideal.span a, ∃ z, x = IsLocalization.mk' S y z
-- IsFractionRing.coeSubmodule_le_coeSubmodule
@[simp, mono]
theorem coeSubmodule_le_coeSubmodule {I J : Ideal R} :
    coeSubmodule K I ≤ coeSubmodule K J ↔ I ≤ J 
Arguments: {R : Type u_1} [CommRing R] {K : Type u_5} [CommRing K] [Algebra R K] [IsFractionRing R K] {I J : Ideal R}
Goal: IsLocalization.coeSubmodule K I ≤ IsLocalization.coeSubmodule K J ↔ I ≤ J
-- IsFractionRing.coeSubmodule_strictMono
@[mono]
theorem coeSubmodule_strictMono : StrictMono (coeSubmodule K : Ideal R → Submodule R K) 
Arguments: {R : Type u_1} [CommRing R] {K : Type u_5} [CommRing K] [Algebra R K] [IsFractionRing R K]
Goal: StrictMono (IsLocalization.coeSubmodule K)
-- IsFractionRing.coeSubmodule_injective
theorem coeSubmodule_injective : Function.Injective (coeSubmodule K : Ideal R → Submodule R K) 
Arguments: (R : Type u_1) [CommRing R] (K : Type u_5) [CommRing K] [Algebra R K] [IsFractionRing R K]
Goal: Function.Injective (IsLocalization.coeSubmodule K)
-- IsFractionRing.coeSubmodule_isPrincipal
@[simp]
theorem coeSubmodule_isPrincipal {I : Ideal R} : (coeSubmodule K I).IsPrincipal ↔ I.IsPrincipal 
Arguments: (R : Type u_1) [CommRing R] (K : Type u_5) [CommRing K] [Algebra R K] [IsFractionRing R K] {I : Ideal R}
Goal: (IsLocalization.coeSubmodule K I).IsPrincipal ↔ Submodule.IsPrincipal I
-- isUnit_map_iff
@[simp]
theorem isUnit_map_iff (f : R →+* S) [IsLocalRingHom f] (a) : IsUnit (f a) ↔ IsUnit a 
Arguments: {R : Type u_1} {S : Type u_2} [Semiring R] [Semiring S] (f : R →+* S) [IsLocalRingHom f] (a : R)
Goal: IsUnit (f a) ↔ IsUnit a
-- map_mem_nonunits_iff
@[simp (high)]
theorem map_mem_nonunits_iff (f : R →+* S) [IsLocalRingHom f] (a) :
    f a ∈ nonunits S ↔ a ∈ nonunits R 
Arguments: {R : Type u_1} {S : Type u_2} [Semiring R] [Semiring S] (f : R →+* S) [IsLocalRingHom f] (a : R)
Goal: f a ∈ nonunits S ↔ a ∈ nonunits R
-- isUnit_of_map_unit
@[simp]
theorem isUnit_of_map_unit (f : R →+* S) [IsLocalRingHom f] (a) (h : IsUnit (f a)) : IsUnit a 
Arguments: {R : Type u_1} {S : Type u_2} [Semiring R] [Semiring S] (f : R →+* S) [IsLocalRingHom f] (a : R) (h : IsUnit (f a))
Goal: IsUnit a
-- of_irreducible_map
theorem of_irreducible_map (f : R →+* S) [h : IsLocalRingHom f] {x} (hfx : Irreducible (f x)) :
    Irreducible x 
Arguments: {R : Type u_1} {S : Type u_2} [Semiring R] [Semiring S] (f : R →+* S) [h : IsLocalRingHom f] {x : R} (hfx : Irreducible (f x))
Goal: Irreducible x
-- isLocalRingHom_of_comp
theorem isLocalRingHom_of_comp (f : R →+* S) (g : S →+* T) [IsLocalRingHom (g.comp f)] :
    IsLocalRingHom f 
Arguments: {R : Type u_1} {S : Type u_2} {T : Type u_3} [Semiring R] [Semiring S] [Semiring T] (f : R →+* S) (g : S →+* T) [IsLocalRingHom (g.comp f)]
Goal: IsLocalRingHom f
-- RingHom.domain_localRing
theorem RingHom.domain_localRing {R S : Type*} [CommSemiring R] [CommSemiring S] [H : LocalRing S]
    (f : R →+* S) [IsLocalRingHom f] : LocalRing R 
Arguments: {R : Type u_4} {S : Type u_5} [CommSemiring R] [CommSemiring S] [H : LocalRing S] (f : R →+* S) [IsLocalRingHom f]
Goal: LocalRing R
-- map_nonunit
theorem map_nonunit (f : R →+* S) [IsLocalRingHom f] (a : R) (h : a ∈ maximalIdeal R) :
    f a ∈ maximalIdeal S 
Arguments: {R : Type u_1} {S : Type u_2} [CommSemiring R] [LocalRing R] [CommSemiring S] [LocalRing S] (f : R →+* S) [IsLocalRingHom f] (a : R) (h : a ∈ LocalRing.maximalIdeal R)
Goal: f a ∈ LocalRing.maximalIdeal S