ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- _private.Mathlib.RingTheory.AdicCompletion.AsTensorProduct.0.AdicCompletion.adic_surj
private lemma adic_surj : Function.Surjective (map I f) 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] {ι : Type} (f : (ι → R) →ₗ[R] M) (hf : Function.Surjective ⇑f)
Goal: Function.Surjective ⇑(AdicCompletion.map I f)
-- _private.Mathlib.RingTheory.AdicCompletion.AsTensorProduct.0.AdicCompletion.firstRow_exact
private lemma firstRow_exact : (firstRow I M f).Exact 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] {ι : Type} (f : (ι → R) →ₗ[R] M) (hf : Function.Surjective ⇑f)
Goal: (AdicCompletion.firstRow I M f).Exact
-- _private.Mathlib.RingTheory.AdicCompletion.AsTensorProduct.0.AdicCompletion.secondRow_exact
private lemma secondRow_exact : (secondRow I M f).Exact 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] [IsNoetherianRing R] {ι : Type} [Fintype ι] (f : (ι → R) →ₗ[R] M) (hf : Function.Surjective ⇑f)
Goal: (AdicCompletion.secondRow I M f).Exact
-- _private.Mathlib.RingTheory.AdicCompletion.AsTensorProduct.0.AdicCompletion.ofTensorProduct_iso
private lemma ofTensorProduct_iso : IsIso (ModuleCat.ofHom (ofTensorProduct I M)) 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] [IsNoetherianRing R] {ι : Type} [Fintype ι] (f : (ι → R) →ₗ[R] M) (hf : Function.Surjective ⇑f)
Goal: CategoryTheory.IsIso (ModuleCat.ofHom (AdicCompletion.ofTensorProduct I M))
-- _private.Mathlib.RingTheory.AdicCompletion.AsTensorProduct.0.AdicCompletion.ofTensorProduct_bijective_of_map_from_fin
private
lemma ofTensorProduct_bijective_of_map_from_fin : Function.Bijective (ofTensorProduct I M) 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] [IsNoetherianRing R] {ι : Type} [Fintype ι] (f : (ι → R) →ₗ[R] M) (hf : Function.Surjective ⇑f)
Goal: Function.Bijective ⇑(AdicCompletion.ofTensorProduct I M)
-- AdicCompletion.ofTensorProduct_bijective_of_finite_of_isNoetherian
theorem ofTensorProduct_bijective_of_finite_of_isNoetherian [Module.Finite R M] :
    Function.Bijective (ofTensorProduct I M) 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] [IsNoetherianRing R] [Module.Finite R M]
Goal: Function.Bijective ⇑(AdicCompletion.ofTensorProduct I M)
-- AdicCompletion.ofTensorProductEquivOfFiniteNoetherian_apply
@[simp]
lemma ofTensorProductEquivOfFiniteNoetherian_apply [Module.Finite R M]
    (x : AdicCompletion I R ⊗[R] M) :
    ofTensorProductEquivOfFiniteNoetherian I M x = ofTensorProduct I M x 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] [IsNoetherianRing R] [Module.Finite R M] (x : AdicCompletion I R ⊗[R] M)
Goal: (AdicCompletion.ofTensorProductEquivOfFiniteNoetherian I M) x = (AdicCompletion.ofTensorProduct I M) x
-- AdicCompletion.ofTensorProductEquivOfFiniteNoetherian_symm_of
@[simp]
lemma ofTensorProductEquivOfFiniteNoetherian_symm_of [Module.Finite R M] (x : M) :
    (ofTensorProductEquivOfFiniteNoetherian I M).symm ((of I M) x) = 1 ⊗ₜ x 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) (M : Type u) [AddCommGroup M] [Module R M] [IsNoetherianRing R] [Module.Finite R M] (x : M)
Goal: (AdicCompletion.ofTensorProductEquivOfFiniteNoetherian I M).symm ((AdicCompletion.of I M) x) = 1 ⊗ₜ[R] x
-- AdicCompletion.tensor_map_id_left_eq_map
lemma tensor_map_id_left_eq_map :
    (AlgebraTensorModule.map LinearMap.id f) =
      (ofTensorProductEquivOfFiniteNoetherian I N).symm.toLinearMap ∘ₗ
      map I f ∘ₗ
      (ofTensorProductEquivOfFiniteNoetherian I M).toLinearMap 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) [IsNoetherianRing R] {M : Type u} [AddCommGroup M] [Module R M] {N : Type u} [AddCommGroup N] [Module R N] (f : M →ₗ[R] N) [Module.Finite R M] [Module.Finite R N]
Goal: TensorProduct.AlgebraTensorModule.map LinearMap.id f =
  ↑(AdicCompletion.ofTensorProductEquivOfFiniteNoetherian I N).symm ∘ₗ
    AdicCompletion.map I f ∘ₗ ↑(AdicCompletion.ofTensorProductEquivOfFiniteNoetherian I M)
-- AdicCompletion.tensor_map_id_left_injective_of_injective
lemma tensor_map_id_left_injective_of_injective (hf : Function.Injective f) :
    Function.Injective (AlgebraTensorModule.map LinearMap.id f :
        AdicCompletion I R ⊗[R] M →ₗ[AdicCompletion I R] AdicCompletion I R ⊗[R] N) 
Arguments: {R : Type u} [CommRing R] (I : Ideal R) [IsNoetherianRing R] {M : Type u} [AddCommGroup M] [Module R M] {N : Type u} [AddCommGroup N] [Module R N] {f : M →ₗ[R] N} [Module.Finite R M] [Module.Finite R N] (hf : Function.Injective ⇑f)
Goal: Function.Injective ⇑(TensorProduct.AlgebraTensorModule.map LinearMap.id f)
-- IsFractionRing.exists_reduced_fraction
theorem exists_reduced_fraction (x : K) :
    ∃ (a : A) (b : nonZeroDivisors A), IsRelPrime a b ∧ mk' K a b = x 
Arguments: (A : Type u_4) [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K)
Goal: ∃ a b, IsRelPrime a ↑b ∧ IsLocalization.mk' K a b = x
-- IsFractionRing.num_den_reduced
theorem num_den_reduced (x : K) : IsRelPrime (num A x) (den A x) 
Arguments: (A : Type u_4) [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K)
Goal: IsRelPrime (IsFractionRing.num A x) ↑(IsFractionRing.den A x)
-- IsFractionRing.mk'_num_den
theorem mk'_num_den (x : K) : mk' K (num A x) (den A x) = x 
Arguments: (A : Type u_4) [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K)
Goal: IsLocalization.mk' K (IsFractionRing.num A x) (IsFractionRing.den A x) = x
-- IsFractionRing.mk'_num_den'
@[simp]
theorem mk'_num_den' (x : K) : algebraMap A K (num A x) / algebraMap A K (den A x) = x 
Arguments: (A : Type u_4) [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K)
Goal: (algebraMap A K) (IsFractionRing.num A x) / (algebraMap A K) ↑(IsFractionRing.den A x) = x
-- IsFractionRing.num_mul_den_eq_num_iff_eq
theorem num_mul_den_eq_num_iff_eq {x y : K} :
    x * algebraMap A K (den A y) = algebraMap A K (num A y) ↔ x = y 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {x y : K}
Goal: x * (algebraMap A K) ↑(IsFractionRing.den A y) = (algebraMap A K) (IsFractionRing.num A y) ↔ x = y
-- IsFractionRing.num_mul_den_eq_num_iff_eq'
theorem num_mul_den_eq_num_iff_eq' {x y : K} :
    y * algebraMap A K (den A x) = algebraMap A K (num A x) ↔ x = y 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {x y : K}
Goal: y * (algebraMap A K) ↑(IsFractionRing.den A x) = (algebraMap A K) (IsFractionRing.num A x) ↔ x = y
-- IsFractionRing.num_mul_den_eq_num_mul_den_iff_eq
theorem num_mul_den_eq_num_mul_den_iff_eq {x y : K} :
    num A y * den A x = num A x * den A y ↔ x = y 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {x y : K}
Goal: IsFractionRing.num A y * ↑(IsFractionRing.den A x) = IsFractionRing.num A x * ↑(IsFractionRing.den A y) ↔ x = y
-- IsFractionRing.eq_zero_of_num_eq_zero
theorem eq_zero_of_num_eq_zero {x : K} (h : num A x = 0) : x = 0 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {x : K} (h : IsFractionRing.num A x = 0)
Goal: x = 0
-- IsFractionRing.num_zero
@[simp]
lemma num_zero : IsFractionRing.num A (0 : K) = 0 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K]
Goal: IsFractionRing.num A 0 = 0
-- IsFractionRing.num_eq_zero
@[simp]
lemma num_eq_zero (x : K) : IsFractionRing.num A x = 0 ↔ x = 0 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K)
Goal: IsFractionRing.num A x = 0 ↔ x = 0
-- IsFractionRing.isInteger_of_isUnit_den
theorem isInteger_of_isUnit_den {x : K} (h : IsUnit (den A x : A)) : IsInteger A x 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {x : K} (h : IsUnit ↑(IsFractionRing.den A x))
Goal: IsLocalization.IsInteger A x
-- IsFractionRing.isUnit_den_iff
theorem isUnit_den_iff (x : K) : IsUnit (den A x : A) ↔ IsLocalization.IsInteger A x 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K)
Goal: IsUnit ↑(IsFractionRing.den A x) ↔ IsLocalization.IsInteger A x
-- IsFractionRing.isUnit_den_zero
theorem isUnit_den_zero : IsUnit (den A (0 : K) : A) 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K]
Goal: IsUnit ↑(IsFractionRing.den A 0)
-- IsFractionRing.isUnit_den_of_num_eq_zero
@[deprecated isUnit_den_zero (since := "2024-07-11")]
theorem isUnit_den_of_num_eq_zero {x : K} (h : num A x = 0) : IsUnit (den A x : A) 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] {x : K} (h : IsFractionRing.num A x = 0)
Goal: IsUnit ↑(IsFractionRing.den A x)
-- IsFractionRing.associated_den_num_inv
lemma associated_den_num_inv (x : K) (hx : x ≠ 0) : Associated (den A x : A) (num A x⁻¹) 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K) (hx : x ≠ 0)
Goal: Associated (↑(IsFractionRing.den A x)) (IsFractionRing.num A x⁻¹)
-- IsFractionRing.associated_num_den_inv
lemma associated_num_den_inv (x : K) (hx : x ≠ 0) : Associated (num A x : A) (den A x⁻¹) 
Arguments: {A : Type u_4} [CommRing A] [IsDomain A] [UniqueFactorizationMonoid A] {K : Type u_5} [Field K] [Algebra A K] [IsFractionRing A K] (x : K) (hx : x ≠ 0)
Goal: Associated (IsFractionRing.num A x) ↑(IsFractionRing.den A x⁻¹)
-- IsLocalization.submonoid_map_le_is_unit
theorem submonoid_map_le_is_unit : M.map (algebraMap R S) ≤ IsUnit.submonoid S 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S]
Goal: Submonoid.map (algebraMap R S) M ≤ IsUnit.submonoid S
-- IsLocalization.toInvSubmonoid_surjective
theorem toInvSubmonoid_surjective : Function.Surjective (toInvSubmonoid M S) 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S]
Goal: Function.Surjective ⇑(IsLocalization.toInvSubmonoid M S)
-- IsLocalization.toInvSubmonoid_mul
@[simp]
theorem toInvSubmonoid_mul (m : M) : (toInvSubmonoid M S m : S) * algebraMap R S m = 1 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] (m : ↥M)
Goal: ↑((IsLocalization.toInvSubmonoid M S) m) * (algebraMap R S) ↑m = 1
-- IsLocalization.mul_toInvSubmonoid
@[simp]
theorem mul_toInvSubmonoid (m : M) : algebraMap R S m * (toInvSubmonoid M S m : S) = 1 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] (m : ↥M)
Goal: (algebraMap R S) ↑m * ↑((IsLocalization.toInvSubmonoid M S) m) = 1
-- IsLocalization.smul_toInvSubmonoid
@[simp]
theorem smul_toInvSubmonoid (m : M) : m • (toInvSubmonoid M S m : S) = 1 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] (m : ↥M)
Goal: m • ↑((IsLocalization.toInvSubmonoid M S) m) = 1
-- IsLocalization.surj''
theorem surj'' (z : S) : ∃ (r : R) (m : M), z = r • (toInvSubmonoid M S m : S) 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) {S : Type u_2} [CommRing S] [Algebra R S] [IsLocalization M S] (z : S)
Goal: ∃ r m, z = r • ↑((IsLocalization.toInvSubmonoid M S) m)
-- IsLocalization.toInvSubmonoid_eq_mk'
theorem toInvSubmonoid_eq_mk' (x : M) : (toInvSubmonoid M S x : S) = mk' S 1 x 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) {S : Type u_2} [CommRing S] [Algebra R S] [IsLocalization M S] (x : ↥M)
Goal: ↑((IsLocalization.toInvSubmonoid M S) x) = IsLocalization.mk' S 1 x
-- IsLocalization.mem_invSubmonoid_iff_exists_mk'
theorem mem_invSubmonoid_iff_exists_mk' (x : S) :
    x ∈ invSubmonoid M S ↔ ∃ m : M, mk' S 1 m = x 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) {S : Type u_2} [CommRing S] [Algebra R S] [IsLocalization M S] (x : S)
Goal: x ∈ IsLocalization.invSubmonoid M S ↔ ∃ m, IsLocalization.mk' S 1 m = x
-- IsLocalization.span_invSubmonoid
theorem span_invSubmonoid : Submodule.span R (invSubmonoid M S : Set S) = ⊤ 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S]
Goal: Submodule.span R ↑(IsLocalization.invSubmonoid M S) = ⊤
-- IsLocalization.finiteType_of_monoid_fg
theorem finiteType_of_monoid_fg [Monoid.FG M] : Algebra.FiniteType R S 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] [Monoid.FG ↥M]
Goal: Algebra.FiniteType R S
-- Algebra.Presentation.span_range_relation_eq_ker
@[nolint checkUnivs]
structure Algebra.Presentation extends Algebra.Generators.{w} R S where
    rels : Type t
    relation : rels → toGenerators.Ring
    span_range_relation_eq_ker :
    Ideal.span (Set.range relation) = toGenerators.ker
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (self : Algebra.Presentation R S)
Goal: Ideal.span (Set.range self.relation) = self.ker
-- Algebra.Presentation.aeval_val_relation
@[simp]
lemma aeval_val_relation (i) : aeval P.val (P.relation i) = 0 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Presentation R S) (i : P.rels)
Goal: (MvPolynomial.aeval P.val) (P.relation i) = 0
-- Algebra.Presentation.quotientEquiv_mk
@[simp]
lemma quotientEquiv_mk (p : P.Ring) : P.quotientEquiv p = algebraMap P.Ring S p 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Presentation R S) (p : P.Ring)
Goal: P.quotientEquiv ((Ideal.Quotient.mk P.ker) p) = (algebraMap P.Ring S) p
-- Algebra.Presentation.quotientEquiv_symm
@[simp]
lemma quotientEquiv_symm (x : S) : P.quotientEquiv.symm x = P.σ x 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Presentation R S) (x : S)
Goal: P.quotientEquiv.symm x = (Ideal.Quotient.mk P.ker) (P.σ x)
-- Algebra.Presentation.IsFinite.finite_rels
class IsFinite (P : Presentation.{t, w} R S) : Prop where
  finite_vars : Finite P.vars
  finite_rels : Finite P.rels
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {P : Algebra.Presentation R S} [self : P.IsFinite]
Goal: Finite P.rels
-- Algebra.Presentation.IsFinite.finite_vars
class IsFinite (P : Presentation.{t, w} R S) : Prop where
  finite_vars : Finite P.vars
  finite_rels : Finite P.rels
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {P : Algebra.Presentation R S} [self : P.IsFinite]
Goal: Finite P.vars
-- Algebra.Presentation.ideal_fg_of_isFinite
lemma ideal_fg_of_isFinite [P.IsFinite] : P.ker.FG 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Presentation R S) [P.IsFinite]
Goal: P.ker.FG
-- Algebra.Presentation.finitePresentation_of_isFinite
lemma finitePresentation_of_isFinite [P.IsFinite] :
    FinitePresentation R S 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Presentation R S) [P.IsFinite]
Goal: Algebra.FinitePresentation R S
-- _private.Mathlib.RingTheory.Presentation.0.Algebra.Presentation.span_range_relation_eq_ker_localizationAway
private lemma span_range_relation_eq_ker_localizationAway :
    Ideal.span { C r * X () - 1 } =
      RingHom.ker (aeval (S₁ := S) (Generators.localizationAway r).val) 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (r : R) [IsLocalization.Away r S]
Goal: Ideal.span {MvPolynomial.C r * MvPolynomial.X () - 1} =
  RingHom.ker (MvPolynomial.aeval (Algebra.Generators.localizationAway r).val)
-- Algebra.Presentation.localizationAway_relation
@[simps relation, simps (config := .lemmasOnly) rels]
noncomputable def localizationAway : Presentation R S 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (r : R) [IsLocalization.Away r S]
Goal: ∀ (x : Unit), (Algebra.Presentation.localizationAway r).relation x = MvPolynomial.C r * MvPolynomial.X () - 1
-- Algebra.Presentation.localizationAway_rels
@[simps relation, simps (config := .lemmasOnly) rels]
noncomputable def localizationAway : Presentation R S 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (r : R) [IsLocalization.Away r S]
Goal: (Algebra.Presentation.localizationAway r).rels = Unit
-- Algebra.Presentation.localizationAway_dimension_zero
@[simp]
lemma localizationAway_dimension_zero : (localizationAway r (S := S)).dimension = 0 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (r : R) [IsLocalization.Away r S]
Goal: (Algebra.Presentation.localizationAway r).dimension = 0
-- _private.Mathlib.RingTheory.Presentation.0.Algebra.Presentation.span_range_relation_eq_ker_baseChange
private lemma span_range_relation_eq_ker_baseChange :
    Ideal.span (Set.range fun i ↦ (MvPolynomial.map (algebraMap R T)) (P.relation i)) =
      RingHom.ker (aeval (R := T) (S₁ := T ⊗[R] S) P.baseChange.val) 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {T : Type u_1} [CommRing T] [Algebra R T] (P : Algebra.Presentation R S)
Goal: Ideal.span (Set.range fun i => (MvPolynomial.map (algebraMap R T)) (P.relation i)) =
  RingHom.ker (MvPolynomial.aeval P.baseChange.val)
-- Algebra.Presentation.baseChange_relation
@[simps relation, simps (config := .lemmasOnly) rels]
noncomputable
def baseChange : Presentation T (T ⊗[R] S) 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {T : Type u_1} [CommRing T] [Algebra R T] (P : Algebra.Presentation R S) (i : P.rels)
Goal: P.baseChange.relation i = (MvPolynomial.map (algebraMap R T)) (P.relation i)
-- Algebra.Presentation.baseChange_rels
@[simps relation, simps (config := .lemmasOnly) rels]
noncomputable
def baseChange : Presentation T (T ⊗[R] S) 
Arguments: {R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {T : Type u_1} [CommRing T] [Algebra R T] (P : Algebra.Presentation R S)
Goal: P.baseChange.rels = P.rels
-- Algebra.FiniteType.baseChangeAux_surj
theorem baseChangeAux_surj {σ : Type*} {f : MvPolynomial σ R →ₐ[R] A} (hf : Function.Surjective f) :
    Function.Surjective (Algebra.TensorProduct.map (AlgHom.id B B) f) 
Arguments: {R : Type w₁} [CommRing R] {A : Type w₂} [CommRing A] [Algebra R A] (B : Type w₃) [CommRing B] [Algebra R B] {σ : Type u_1} {f : MvPolynomial σ R →ₐ[R] A} (hf : Function.Surjective ⇑f)
Goal: Function.Surjective ⇑(Algebra.TensorProduct.map (AlgHom.id B B) f)
-- IsLocalization.mem_map_algebraMap_iff
theorem mem_map_algebraMap_iff {I : Ideal R} {z} : z ∈ Ideal.map (algebraMap R S) I ↔
    ∃ x : I × M, z * algebraMap R S x.2 = algebraMap R S x.1 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] {I : Ideal R} {z : S}
Goal: z ∈ Ideal.map (algebraMap R S) I ↔ ∃ x, z * (algebraMap R S) ↑x.2 = (algebraMap R S) ↑x.1
-- IsLocalization.mk'_mem_map_algebraMap_iff
lemma mk'_mem_map_algebraMap_iff (I : Ideal R) (x : R) (s : M) :
    IsLocalization.mk' S x s ∈ I.map (algebraMap R S) ↔ ∃ s ∈ M, 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] (I : Ideal R) (x : R) (s : ↥M)
Goal: IsLocalization.mk' S x s ∈ Ideal.map (algebraMap R S) I ↔ ∃ s ∈ M, s * x ∈ I
-- IsLocalization.map_comap
theorem map_comap [IsLocalization M S] (J : Ideal S) :
    Ideal.map (algebraMap R S) (Ideal.comap (algebraMap R S) J) = J 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (J : Ideal S)
Goal: Ideal.map (algebraMap R S) (Ideal.comap (algebraMap R S) J) = J
-- IsLocalization.comap_map_of_isPrime_disjoint
theorem comap_map_of_isPrime_disjoint (I : Ideal R) (hI : I.IsPrime) (hM : Disjoint (M : Set R) I) :
    Ideal.comap (algebraMap R S) (Ideal.map (algebraMap R S) I) = I 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (I : Ideal R) (hI : I.IsPrime) (hM : Disjoint ↑M ↑I)
Goal: Ideal.comap (algebraMap R S) (Ideal.map (algebraMap R S) I) = I
-- IsLocalization.isPrime_iff_isPrime_disjoint
theorem isPrime_iff_isPrime_disjoint (J : Ideal S) :
    J.IsPrime ↔
      (Ideal.comap (algebraMap R S) J).IsPrime ∧
        Disjoint (M : Set R) ↑(Ideal.comap (algebraMap R S) J) 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (J : Ideal S)
Goal: J.IsPrime ↔ (Ideal.comap (algebraMap R S) J).IsPrime ∧ Disjoint ↑M ↑(Ideal.comap (algebraMap R S) J)
-- IsLocalization.isPrime_of_isPrime_disjoint
theorem isPrime_of_isPrime_disjoint (I : Ideal R) (hp : I.IsPrime) (hd : Disjoint (M : Set R) ↑I) :
    (Ideal.map (algebraMap R S) I).IsPrime 
Arguments: {R : Type u_1} [CommSemiring R] (M : Submonoid R) (S : Type u_2) [CommSemiring S] [Algebra R S] [IsLocalization M S] (I : Ideal R) (hp : I.IsPrime) (hd : Disjoint ↑M ↑I)
Goal: (Ideal.map (algebraMap R S) I).IsPrime
-- IsLocalization.surjective_quotientMap_of_maximal_of_localization
theorem surjective_quotientMap_of_maximal_of_localization {I : Ideal S} [I.IsPrime] {J : Ideal R}
    {H : J ≤ I.comap (algebraMap R S)} (hI : (I.comap (algebraMap R S)).IsMaximal) :
    Function.Surjective (Ideal.quotientMap I (algebraMap R S) H) 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] {I : Ideal S} [I.IsPrime] {J : Ideal R} {H : J ≤ Ideal.comap (algebraMap R S) I} (hI : (Ideal.comap (algebraMap R S) I).IsMaximal)
Goal: Function.Surjective ⇑(Ideal.quotientMap I (algebraMap R S) H)
-- IsLocalization.bot_lt_comap_prime
theorem bot_lt_comap_prime [IsDomain R] (hM : M ≤ R⁰) (p : Ideal S) [hpp : p.IsPrime]
    (hp0 : p ≠ ⊥) : ⊥ < Ideal.comap (algebraMap R S) p 
Arguments: {R : Type u_1} [CommRing R] (M : Submonoid R) (S : Type u_2) [CommRing S] [Algebra R S] [IsLocalization M S] [IsDomain R] (hM : M ≤ nonZeroDivisors R) (p : Ideal S) [hpp : p.IsPrime] (hp0 : p ≠ ⊥)
Goal: ⊥ < Ideal.comap (algebraMap R S) p
-- IsLocalization.ideal_eq_iInf_comap_map_away
theorem ideal_eq_iInf_comap_map_away {S : Finset R} (hS : Ideal.span (α := R) S = ⊤) (I : Ideal R) :
    I = ⨅ f ∈ S, (I.map (algebraMap R (Localization.Away f))).comap
    (algebraMap R (Localization.Away f)) 
Arguments: {R : Type u_1} [CommRing R] {S : Finset R} (hS : Ideal.span ↑S = ⊤) (I : Ideal R)
Goal: I = ⨅ f ∈ S, Ideal.comap (algebraMap R (Localization.Away f)) (Ideal.map (algebraMap R (Localization.Away f)) I)
-- Localization.map_isUnit_of_le
theorem map_isUnit_of_le (hS : S ≤ A⁰) (s : S) : IsUnit (algebraMap A K s) 
Arguments: {A : Type u_1} (K : Type u_2) [CommRing A] (S : Submonoid A) [CommRing K] [Algebra A K] [IsFractionRing A K] (hS : S ≤ nonZeroDivisors A) (s : ↥S)
Goal: IsUnit ((algebraMap A K) ↑s)
-- Localization.mapToFractionRing_apply
@[simp]
theorem mapToFractionRing_apply {B : Type*} [CommRing B] [Algebra A B] [IsLocalization S B]
    (hS : S ≤ A⁰) (b : B) :
    mapToFractionRing K S B hS b = IsLocalization.lift (map_isUnit_of_le K S hS) b 
Arguments: {A : Type u_1} (K : Type u_2) [CommRing A] (S : Submonoid A) [CommRing K] [Algebra A K] [IsFractionRing A K] {B : Type u_3} [CommRing B] [Algebra A B] [IsLocalization S B] (hS : S ≤ nonZeroDivisors A) (b : B)
Goal: (Localization.mapToFractionRing K S B hS) b = (IsLocalization.lift ⋯) b