Loogle!
Result
Found 227 declarations mentioning AlgHom.toRingHom. Of these, only the first 200 are shown.
- AlgHom.toRingHom π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (self : A ββ[R] B) : A β+* B - AlgHom.instRingHomCompTripleComp π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} {B : Type w} {C : Type uβ} [CommSemiring R] [Semiring A] [Semiring B] [Semiring C] [Algebra R A] [Algebra R B] [Algebra R C] {Οβ : B ββ[R] C} {Οβ : A ββ[R] B} : RingHomCompTriple Οβ.toRingHom Οβ.toRingHom (Οβ.comp Οβ).toRingHom - AlgHom.toRingHom_eq_coe π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) : f.toRingHom = βf - AlgHom.toFun_eq_coe π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) : (ββf.toRingHom).toFun = βf - AlgHom.commutes' π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (self : A ββ[R] B) (r : R) : (ββself.toRingHom).toFun ((algebraMap R A) r) = (algebraMap R B) r - Algebra.algebraMapSubmonoid_le_comap π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} [CommSemiring R] [Semiring A] [Algebra R A] (M : Submonoid R) {B : Type w} [Semiring B] [Algebra R B] (f : A ββ[R] B) : Algebra.algebraMapSubmonoid A M β€ Submonoid.comap f.toRingHom (Algebra.algebraMapSubmonoid B M) - RingHom.equivNatAlgHom_symm_apply π Mathlib.Algebra.Algebra.Hom
(R : Type u_1) (S : Type u_2) [Semiring R] [Semiring S] (self : R ββ[β] S) : (RingHom.equivNatAlgHom R S).symm self = self.toRingHom - RingHom.equivIntAlgHom_symm_apply π Mathlib.Algebra.Algebra.Hom
(R : Type u_1) (S : Type u_2) [Ring R] [Ring S] (self : R ββ[β€] S) : (RingHom.equivIntAlgHom R S).symm self = self.toRingHom - LinearEquiv.algEquivOfRing_apply π Mathlib.Algebra.Algebra.Equiv
{R : Type u_1} {A : Type u_2} [CommSemiring R] [CommSemiring A] [Algebra R A] (e : R ββ[R] A) (aβ : R) : e.algEquivOfRing aβ = (ββ(Algebra.ofId R A).toRingHom).toFun aβ - AlgEquiv.algHomUnitsEquiv_apply_apply π Mathlib.Algebra.Algebra.Equiv
(R : Type u_1) (S : Type u_2) [CommSemiring R] [Semiring S] [Algebra R S] (f : (S ββ[R] S)Λ£) (aβ : S) : ((AlgEquiv.algHomUnitsEquiv R S) f) aβ = (ββ(βf).toRingHom).toFun aβ - IsScalarTower.of_algHom π Mathlib.Algebra.Algebra.Tower
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) : IsScalarTower R A B - AlgHom.toRingHom_op π Mathlib.Algebra.Algebra.Opposite
{R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) : (AlgHom.op f).toRingHom = RingHom.op f.toRingHom - AlgHom.toRingHom_unop π Mathlib.Algebra.Algebra.Opposite
{R : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : Aα΅α΅α΅ ββ[R] Bα΅α΅α΅) : (AlgHom.unop f).toRingHom = RingHom.unop f.toRingHom - AlgHom.extendScalars π Mathlib.RingTheory.AlgebraTower
{A : Type u_3} (B : Type u_4) {C : Type u_5} {D : Type u_6} [CommSemiring A] [CommSemiring C] [CommSemiring D] [Algebra A C] [Algebra A D] [CommSemiring B] [Algebra A B] [Algebra B C] [IsScalarTower A B C] (f : C ββ[A] D) : C ββ[B] D - algHomEquivSigma π Mathlib.RingTheory.AlgebraTower
{A : Type u_3} {B : Type u_4} {C : Type u_5} {D : Type u_6} [CommSemiring A] [CommSemiring C] [CommSemiring D] [Algebra A C] [Algebra A D] [CommSemiring B] [Algebra A B] [Algebra B C] [IsScalarTower A B C] : (C ββ[A] D) β (f : B ββ[A] D) Γ (C ββ[B] D) - Subalgebra.inclusion.faithfulSMul π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} [CommSemiring R] [Semiring A] [Algebra R A] {S T : Subalgebra R A} (h : S β€ T) : FaithfulSMul β₯S β₯T - Subalgebra.inclusion.isScalarTower_left π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} [CommSemiring R] [Semiring A] [Algebra R A] {S T : Subalgebra R A} (h : S β€ T) (X : Type u_1) [SMul X R] [SMul X A] [IsScalarTower X R A] : IsScalarTower X β₯S β₯T - Subalgebra.inclusion.isScalarTower_right π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} [CommSemiring R] [Semiring A] [Algebra R A] {S T : Subalgebra R A} (h : S β€ T) (X : Type u_1) [MulAction A X] : IsScalarTower (β₯S) (β₯T) X - StarAlgHom.mk π Mathlib.Algebra.Star.StarAlgHom
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Star A] [Semiring B] [Algebra R B] [Star B] (toAlgHom : A ββ[R] B) (map_star' : β (x : A), (ββtoAlgHom.toRingHom).toFun (star x) = star ((ββtoAlgHom.toRingHom).toFun x)) : A βββ[R] B - StarAlgHom.map_star' π Mathlib.Algebra.Star.StarAlgHom
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Star A] [Semiring B] [Algebra R B] [Star B] (self : A βββ[R] B) (x : A) : (ββ(βself).toRingHom).toFun (star x) = star ((ββ(βself).toRingHom).toFun x) - StarAlgHom.coe_mk' π Mathlib.Algebra.Star.StarAlgHom
{R : Type u_2} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [Star A] [Semiring B] [Algebra R B] [Star B] (f : A ββ[R] B) (h : β (x : A), (ββf.toRingHom).toFun (star x) = star ((ββf.toRingHom).toFun x)) : β{ toAlgHom := f, map_star' := h } = βf - StarAlgHom.coe_mk π Mathlib.Algebra.Star.StarAlgHom
{R : Type u_2} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [Star A] [Semiring B] [Algebra R B] [Star B] (f : A β B) (hβ : f 1 = 1) (hβ : β (x y : A), { toFun := f, map_one' := hβ }.toFun (x * y) = { toFun := f, map_one' := hβ }.toFun x * { toFun := f, map_one' := hβ }.toFun y) (hβ : (β{ toFun := f, map_one' := hβ, map_mul' := hβ }).toFun 0 = 0) (hβ : β (x y : A), (β{ toFun := f, map_one' := hβ, map_mul' := hβ }).toFun (x + y) = (β{ toFun := f, map_one' := hβ, map_mul' := hβ }).toFun x + (β{ toFun := f, map_one' := hβ, map_mul' := hβ }).toFun y) (hβ : β (r : R), (ββ{ toFun := f, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ }).toFun ((algebraMap R A) r) = (algebraMap R B) r) (hβ : β (x : A), (ββ{ toFun := f, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ, commutes' := hβ }.toRingHom).toFun (star x) = star ((ββ{ toFun := f, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ, commutes' := hβ }.toRingHom).toFun x)) : β{ toFun := f, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ, commutes' := hβ , map_star' := hβ } = f - StarAlgHom.mk_coe π Mathlib.Algebra.Star.StarAlgHom
{R : Type u_2} {A : Type u_3} {B : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [Star A] [Semiring B] [Algebra R B] [Star B] (f : A βββ[R] B) (hβ : f 1 = 1) (hβ : β (x y : A), { toFun := βf, map_one' := hβ }.toFun (x * y) = { toFun := βf, map_one' := hβ }.toFun x * { toFun := βf, map_one' := hβ }.toFun y) (hβ : (β{ toFun := βf, map_one' := hβ, map_mul' := hβ }).toFun 0 = 0) (hβ : β (x y : A), (β{ toFun := βf, map_one' := hβ, map_mul' := hβ }).toFun (x + y) = (β{ toFun := βf, map_one' := hβ, map_mul' := hβ }).toFun x + (β{ toFun := βf, map_one' := hβ, map_mul' := hβ }).toFun y) (hβ : β (r : R), (ββ{ toFun := βf, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ }).toFun ((algebraMap R A) r) = (algebraMap R B) r) (hβ : β (x : A), (ββ{ toFun := βf, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ, commutes' := hβ }.toRingHom).toFun (star x) = star ((ββ{ toFun := βf, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ, commutes' := hβ }.toRingHom).toFun x)) : { toFun := βf, map_one' := hβ, map_mul' := hβ, map_zero' := hβ, map_add' := hβ, commutes' := hβ , map_star' := hβ } = f - AlgEquiv.extendScalarsOfIsLocalization_apply π Mathlib.RingTheory.Localization.Basic
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] (S : Type u_4) [CommSemiring S] [Algebra R S] (M : Submonoid R) [IsLocalization M S] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Algebra R B] [Algebra S B] [IsScalarTower R S B] (f : A ββ[R] B) (aβ : A) : (AlgEquiv.extendScalarsOfIsLocalization S M f) aβ = (ββ(AlgHom.extendScalarsOfIsLocalization S M βf).toRingHom).toFun aβ - IsLocalization.liftAlgHom_toRingHom π Mathlib.RingTheory.Localization.Basic
{A : Type u_4} [CommSemiring A] {R : Type u_5} [CommSemiring R] [Algebra A R] {M : Submonoid R} {S : Type u_6} [CommSemiring S] [Algebra A S] [Algebra R S] [IsScalarTower A R S] {P : Type u_7} [CommSemiring P] [Algebra A P] [IsLocalization M S] {f : R ββ[A] P} (hf : β (y : β₯M), IsUnit (f βy)) : (IsLocalization.liftAlgHom hf).toRingHom = IsLocalization.lift hf - IsLocalization.coe_liftAlgHom π Mathlib.RingTheory.Localization.Basic
{A : Type u_4} [CommSemiring A] {R : Type u_5} [CommSemiring R] [Algebra A R] {M : Submonoid R} {S : Type u_6} [CommSemiring S] [Algebra A S] [Algebra R S] [IsScalarTower A R S] {P : Type u_7} [CommSemiring P] [Algebra A P] [IsLocalization M S] {f : R ββ[A] P} (hf : β (y : β₯M), IsUnit (f βy)) : β(IsLocalization.liftAlgHom hf) = β(IsLocalization.lift hf) - IsLocalization.liftAlgHom_apply π Mathlib.RingTheory.Localization.Basic
{A : Type u_4} [CommSemiring A] {R : Type u_5} [CommSemiring R] [Algebra A R] {M : Submonoid R} {S : Type u_6} [CommSemiring S] [Algebra A S] [Algebra R S] [IsScalarTower A R S] {P : Type u_7} [CommSemiring P] [Algebra A P] [IsLocalization M S] {f : R ββ[A] P} (hf : β (y : β₯M), IsUnit (f βy)) (x : S) : (IsLocalization.liftAlgHom hf) x = (IsLocalization.lift hf) x - IsFractionRing.liftAlgHom_toRingHom π Mathlib.RingTheory.Localization.FractionRing
{R : Type u_1} [CommRing R] {A : Type u_4} [CommRing A] {K : Type u_5} [Field K] {L : Type u_7} [Field L] [Algebra A K] [IsFractionRing A K] [Algebra R A] [Algebra R K] [IsScalarTower R A K] [Algebra R L] {g : A ββ[R] L} (hg : Function.Injective βg) : (IsFractionRing.liftAlgHom hg).toRingHom = IsFractionRing.lift hg - IsFractionRing.coe_liftAlgHom π Mathlib.RingTheory.Localization.FractionRing
{R : Type u_1} [CommRing R] {A : Type u_4} [CommRing A] {K : Type u_5} [Field K] {L : Type u_7} [Field L] [Algebra A K] [IsFractionRing A K] [Algebra R A] [Algebra R K] [IsScalarTower R A K] [Algebra R L] {g : A ββ[R] L} (hg : Function.Injective βg) : β(IsFractionRing.liftAlgHom hg) = β(IsFractionRing.lift hg) - IsFractionRing.liftAlgHom_apply π Mathlib.RingTheory.Localization.FractionRing
{R : Type u_1} [CommRing R] {A : Type u_4} [CommRing A] {K : Type u_5} [Field K] {L : Type u_7} [Field L] [Algebra A K] [IsFractionRing A K] [Algebra R A] [Algebra R K] [IsScalarTower R A K] [Algebra R L] {g : A ββ[R] L} (hg : Function.Injective βg) (x : K) : (IsFractionRing.liftAlgHom hg) x = (IsFractionRing.lift hg) x - Algebra.TensorProduct.includeLeftRingHom_comp_algebraMap π Mathlib.RingTheory.TensorProduct.Basic
{R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] : Algebra.TensorProduct.includeLeftRingHom.comp (algebraMap R A) = Algebra.TensorProduct.includeRight.comp (algebraMap R B) - Algebra.TensorProduct.ringHom_ext π Mathlib.RingTheory.TensorProduct.Basic
{R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {C : Type u_2} [Semiring C] {f g : TensorProduct R A B β+* C} (hβ : f.comp Algebra.TensorProduct.includeLeftRingHom = g.comp Algebra.TensorProduct.includeLeftRingHom) (hβ : f.comp Algebra.TensorProduct.includeRight.toRingHom = g.comp Algebra.TensorProduct.includeRight.toRingHom) : f = g - Algebra.TensorProduct.ringHom_ext_iff π Mathlib.RingTheory.TensorProduct.Basic
{R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {C : Type u_2} [Semiring C] {f g : TensorProduct R A B β+* C} : f = g β f.comp Algebra.TensorProduct.includeLeftRingHom = g.comp Algebra.TensorProduct.includeLeftRingHom β§ f.comp Algebra.TensorProduct.includeRight.toRingHom = g.comp Algebra.TensorProduct.includeRight.toRingHom - RingHom.Finite.tensorProductMap π Mathlib.RingTheory.TensorProduct.Finite
{R : Type u_1} {S : Type u_2} {S' : Type u_3} {T : Type u_4} {T' : Type u_5} [CommRing R] [CommRing S] [CommRing T] [CommRing S'] [CommRing T'] [Algebra R S] [Algebra R T] [Algebra R S'] [Algebra R T'] {f : S ββ[R] S'} (Hf : f.Finite) {g : T ββ[R] T'} (Hg : g.Finite) : (Algebra.TensorProduct.map f g).Finite - RingHom.equivRatAlgHom_symm_apply π Mathlib.Algebra.Algebra.Hom.Rat
(R : Type u_1) (S : Type u_2) [Ring R] [Ring S] [Algebra β R] [Algebra β S] (self : R ββ[β] S) : (RingHom.equivRatAlgHom R S).symm self = self.toRingHom - AddMonoidAlgebra.toRingHom_mapAlgHom π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {B : Type u_5} (M : Type u_7) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] [AddMonoid M] (f : A ββ[R] B) : β(AddMonoidAlgebra.mapAlgHom M f) = AddMonoidAlgebra.mapRingHom M f.toRingHom - MonoidAlgebra.toRingHom_mapAlgHom π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {B : Type u_5} (M : Type u_7) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] [Monoid M] (f : A ββ[R] B) : β(MonoidAlgebra.mapAlgHom M f) = MonoidAlgebra.mapRingHom M f.toRingHom - MonoidAlgebra.toRingHom_mapRangeAlgHom π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {B : Type u_5} (M : Type u_7) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] [Monoid M] (f : A ββ[R] B) : β(MonoidAlgebra.mapAlgHom M f) = MonoidAlgebra.mapRingHom M f.toRingHom - AddMonoidAlgebra.mapAlgEquiv_apply π Mathlib.Algebra.MonoidAlgebra.Basic
(R : Type u_1) {A : Type u_4} {B : Type u_5} (M : Type u_7) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] [AddMonoid M] (e : A ββ[R] B) (aβ : AddMonoidAlgebra A M) : (AddMonoidAlgebra.mapAlgEquiv R M e) aβ = (ββ(AddMonoidAlgebra.mapAlgHom M βe).toRingHom).toFun aβ - MonoidAlgebra.mapAlgEquiv_apply π Mathlib.Algebra.MonoidAlgebra.Basic
(R : Type u_1) {A : Type u_4} {B : Type u_5} (M : Type u_7) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] [Monoid M] (e : A ββ[R] B) (aβ : MonoidAlgebra A M) : (MonoidAlgebra.mapAlgEquiv R M e) aβ = (ββ(MonoidAlgebra.mapAlgHom M βe).toRingHom).toFun aβ - MvPolynomial.map_comp_rename π Mathlib.Algebra.MvPolynomial.Rename
{Ο : Type u_1} {Ο : Type u_2} {R : Type u_4} {S : Type u_5} [CommSemiring R] [CommSemiring S] (f : R β+* S) (g : Ο β Ο) : (MvPolynomial.map f).comp (MvPolynomial.rename g).toRingHom = (MvPolynomial.rename g).comp (MvPolynomial.map f) - MvPolynomial.finSuccEquiv_rename_finSuccEquiv π Mathlib.Algebra.MvPolynomial.Equiv
{R : Type u} {Ο : Type u_1} [CommSemiring R] {n : β} (e : Ο β Fin n) (Ο : MvPolynomial (Option Ο) R) : (MvPolynomial.finSuccEquiv R n) ((MvPolynomial.rename β(e.optionCongr.trans (finSuccEquiv n).symm)) Ο) = Polynomial.map (MvPolynomial.rename βe).toRingHom ((MvPolynomial.optionEquivLeft R Ο) Ο) - Ideal.Quotient.mkβ_toRingHom π Mathlib.RingTheory.Ideal.Quotient.Operations
(Rβ : Type u_1) {A : Type u_3} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] (I : Ideal A) [I.IsTwoSided] : (Ideal.Quotient.mkβ Rβ I).toRingHom = Ideal.Quotient.mk I - AlgHom.liftOfSurjective π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u_5} {A : Type u_6} {B : Type u_7} {C : Type u_8} [CommRing R] [CommRing A] [CommRing B] [CommRing C] [Algebra R A] [Algebra R B] [Algebra R C] (f : A ββ[R] B) (hf : Function.Surjective βf) (g : A ββ[R] C) (H : RingHom.ker f.toRingHom β€ RingHom.ker g.toRingHom) : B ββ[R] C - AlgHom.liftOfSurjective_comp π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u_5} {A : Type u_6} {B : Type u_7} {C : Type u_8} [CommRing R] [CommRing A] [CommRing B] [CommRing C] [Algebra R A] [Algebra R B] [Algebra R C] (f : A ββ[R] B) (hf : Function.Surjective βf) (g : A ββ[R] C) (H : RingHom.ker f.toRingHom β€ RingHom.ker g.toRingHom) : (f.liftOfSurjective hf g H).comp f = g - AlgHom.liftOfSurjective_surjective π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u_5} {A : Type u_6} {B : Type u_7} {C : Type u_8} [CommRing R] [CommRing A] [CommRing B] [CommRing C] [Algebra R A] [Algebra R B] [Algebra R C] (f : A ββ[R] B) (hf : Function.Surjective βf) (g : A ββ[R] C) (H : RingHom.ker f.toRingHom β€ RingHom.ker g.toRingHom) (hg : Function.Surjective βg) : Function.Surjective β(f.liftOfSurjective hf g H) - AlgHom.liftOfSurjective_apply π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u_5} {A : Type u_6} {B : Type u_7} {C : Type u_8} [CommRing R] [CommRing A] [CommRing B] [CommRing C] [Algebra R A] [Algebra R B] [Algebra R C] (f : A ββ[R] B) (hf : Function.Surjective βf) (g : A ββ[R] C) (H : RingHom.ker f.toRingHom β€ RingHom.ker g.toRingHom) (x : A) : (f.liftOfSurjective hf g H) (f x) = g x - Ideal.KerLift.map_smul π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] [Semiring B] [Algebra Rβ B] (f : A ββ[Rβ] B) (r : Rβ) (x : A β§Έ RingHom.ker f) : f.kerLift (r β’ x) = r β’ f.kerLift x - Ideal.quotientKerAlgEquivOfSurjective_apply π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] [Semiring B] [Algebra Rβ B] {f : A ββ[Rβ] B} (hf : Function.Surjective βf) (a : A β§Έ RingHom.ker f.toRingHom) : (Ideal.quotientKerAlgEquivOfSurjective hf) a = (βf).kerLift a - Ideal.quotientKerAlgEquivOfRightInverse_apply π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] [Semiring B] [Algebra Rβ B] {f : A ββ[Rβ] B} {g : B β A} (hf : Function.RightInverse g βf) (a : A β§Έ RingHom.ker f.toRingHom) : (Ideal.quotientKerAlgEquivOfRightInverse hf) a = (βf).kerLift a - Ideal.quotientKerAlgEquivOfRightInverse_symm_apply π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] [Semiring B] [Algebra Rβ B] {f : A ββ[Rβ] B} {g : B β A} (hf : Function.RightInverse g βf) (aβ : B) : (Ideal.quotientKerAlgEquivOfRightInverse hf).symm aβ = (Ideal.Quotient.mk (RingHom.ker βf)) (g aβ) - Algebra.IsPushout.tensorProduct_tensorProduct π Mathlib.RingTheory.IsTensorProduct
(R : Type u_8) (S : Type u_9) (A : Type u_10) (B : Type u_11) [CommSemiring R] [CommSemiring S] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [Algebra A B] [IsScalarTower R A B] [Algebra R S] {xβ : Algebra (TensorProduct R A S) (TensorProduct R B S)} {xβΒΉ : IsScalarTower A (TensorProduct R A S) (TensorProduct R B S)} (H : (algebraMap (TensorProduct R A S) (TensorProduct R B S)).comp Algebra.TensorProduct.includeRight.toRingHom = Algebra.TensorProduct.includeRight.toRingHom) : Algebra.IsPushout A B (TensorProduct R A S) (TensorProduct R B S) - ModuleCat.Algebra.instLinearRestrictScalars π Mathlib.Algebra.Category.ModuleCat.ChangeOfRings
{Rβ : Type u_1} {R : Type u_2} {S : Type u_3} [CommSemiring Rβ] [Ring R] [Ring S] [Algebra Rβ R] [Algebra Rβ S] (f : R ββ[Rβ] S) : CategoryTheory.Functor.Linear Rβ (ModuleCat.restrictScalars f.toRingHom) - RingCon.liftβ π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] (c : RingCon M) (f : M ββ[R] P) (H : c β€ RingCon.ker f.toRingHom) : c.Quotient ββ[R] P - RingCon.kerLiftβ π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] (f : M ββ[R] P) : (RingCon.ker f.toRingHom).Quotient ββ[R] P - RingCon.liftβ_range π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] {c : RingCon M} {f : M ββ[R] P} (H : c β€ RingCon.ker f.toRingHom) : (c.liftβ f H).range = f.range - RingCon.kerLiftβ_range_eq π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] {f : M ββ[R] P} : (RingCon.kerLiftβ f).range = f.range - RingCon.liftβ_mk π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] (c : RingCon M) (f : M ββ[R] P) (H : c β€ RingCon.ker f.toRingHom) (x : M) : (c.liftβ f H) βx = f x - RingCon.liftβ_coe_toRingHom π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] (c : RingCon M) (f : M ββ[R] P) (H : c β€ RingCon.ker f.toRingHom) : (c.liftβ f H).toRingHom = c.lift (βf) H - RingCon.kerLiftβ_injective π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] (f : M ββ[R] P) : Function.Injective β(RingCon.kerLiftβ f) - RingCon.kerLiftβ_mk π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] {f : M ββ[R] P} (x : M) : (RingCon.kerLiftβ f) βx = f x - RingCon.coe_liftβ π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {P : Type u_3} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring P] [Algebra R P] (c : RingCon M) (f : M ββ[R] P) (H : c β€ RingCon.ker f.toRingHom) : β(c.liftβ f H) = β(c.lift (βf) H) - IsLocalization.Away.liftAlgHom_toRingHom π Mathlib.RingTheory.Localization.Away.Basic
{R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] (x : R) [IsLocalization.Away x S] {A : Type u_4} [CommSemiring A] [Algebra A R] [Algebra A S] [Algebra A P] [IsScalarTower A R S] {f : R ββ[A] P} (hf : IsUnit (f x)) : (IsLocalization.Away.liftAlgHom x hf).toRingHom = IsLocalization.Away.lift x hf - IsLocalization.Away.coe_liftAlgHom π Mathlib.RingTheory.Localization.Away.Basic
{R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] (x : R) [IsLocalization.Away x S] {A : Type u_4} [CommSemiring A] [Algebra A R] [Algebra A S] [Algebra A P] [IsScalarTower A R S] {f : R ββ[A] P} (hf : IsUnit (f x)) : β(IsLocalization.Away.liftAlgHom x hf) = β(IsLocalization.Away.lift x hf) - IsLocalization.Away.liftAlgHom_apply π Mathlib.RingTheory.Localization.Away.Basic
{R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] (x : R) [IsLocalization.Away x S] {A : Type u_4} [CommSemiring A] [Algebra A R] [Algebra A S] [Algebra A P] [IsScalarTower A R S] {f : R ββ[A] P} (hf : IsUnit (f x)) (s : S) : (IsLocalization.Away.liftAlgHom x hf) s = (IsLocalization.Away.lift x hf) s - IsLocalization.Away.mapβ_apply π Mathlib.RingTheory.Localization.Away.Basic
{R : Type u_1} [CommSemiring R] {A : Type u_5} [CommSemiring A] [Algebra R A] {B : Type u_6} [CommSemiring B] [Algebra R B] (Aβ : Type u_7) [CommSemiring Aβ] [Algebra A Aβ] [Algebra R Aβ] [IsScalarTower R A Aβ] (Bβ : Type u_8) [CommSemiring Bβ] [Algebra B Bβ] [Algebra R Bβ] [IsScalarTower R B Bβ] (f : A ββ[R] B) (a : A) [IsLocalization.Away a Aβ] [IsLocalization.Away (f a) Bβ] (x : Aβ) : (IsLocalization.Away.mapβ Aβ Bβ f a) x = (IsLocalization.Away.map Aβ Bβ f.toRingHom a) x - IsLocalization.tensorProduct_tensorProduct π Mathlib.RingTheory.Localization.BaseChange
(R : Type u_7) (S : Type u_8) [CommSemiring R] [CommSemiring S] [Algebra R S] {A : Type u_9} [CommSemiring A] [Algebra R A] (M : Submonoid A) (B : Type u_10) [CommSemiring B] [Algebra R B] [Algebra A B] [IsScalarTower R A B] [IsLocalization M B] [Algebra (TensorProduct R A S) (TensorProduct R B S)] [IsScalarTower A (TensorProduct R A S) (TensorProduct R B S)] (H : (algebraMap (TensorProduct R A S) (TensorProduct R B S)).comp Algebra.TensorProduct.includeRight.toRingHom = Algebra.TensorProduct.includeRight.toRingHom) : IsLocalization (Algebra.algebraMapSubmonoid (TensorProduct R A S) M) (TensorProduct R B S) - IsLocalization.tensorProduct_tensorProduct_right π Mathlib.RingTheory.Localization.BaseChange
(R : Type u_7) (S : Type u_8) [CommSemiring R] [CommSemiring S] [Algebra R S] {A : Type u_9} [CommSemiring A] [Algebra R A] (M : Submonoid A) (B : Type u_10) [CommSemiring B] [Algebra R B] [Algebra A B] [IsScalarTower R A B] [IsLocalization M B] [Algebra (TensorProduct R S A) (TensorProduct R S B)] [IsScalarTower S (TensorProduct R S A) (TensorProduct R S B)] (H : (algebraMap (TensorProduct R S A) (TensorProduct R S B)).comp Algebra.TensorProduct.includeRight.toRingHom = Algebra.TensorProduct.includeRight.comp (algebraMap A B)) : IsLocalization (Submonoid.map Algebra.TensorProduct.includeRight M) (TensorProduct R S B) - CommRingCat.pushoutCocone_inr π Mathlib.Algebra.Category.Ring.Constructions
(R A B : Type u) [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] : (CommRingCat.pushoutCocone R A B).inr = CommRingCat.ofHom Algebra.TensorProduct.includeRight.toRingHom - CommRingCat.coproductCocone_inr π Mathlib.Algebra.Category.Ring.Constructions
(A B : CommRingCat) : (A.coproductCocone B).inr = CommRingCat.ofHom Algebra.TensorProduct.includeRight.toRingHom - CommRingCat.isPushout_tensorProduct π Mathlib.Algebra.Category.Ring.Constructions
(R A B : Type u) [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] : CategoryTheory.IsPushout (CommRingCat.ofHom (algebraMap R A)) (CommRingCat.ofHom (algebraMap R B)) (CommRingCat.ofHom Algebra.TensorProduct.includeLeftRingHom) (CommRingCat.ofHom Algebra.TensorProduct.includeRight.toRingHom) - CommRingCat.coproductCocone_inl π Mathlib.Algebra.Category.Ring.Constructions
(A B : CommRingCat) : (A.coproductCocone B).inl = CommRingCat.ofHom Algebra.TensorProduct.includeLeft.toRingHom - CommRingCat.coproductCoconeIsColimit_desc π Mathlib.Algebra.Category.Ring.Constructions
(A B : CommRingCat) (s : CategoryTheory.Limits.BinaryCofan A B) : (A.coproductCoconeIsColimit B).desc s = CommRingCat.ofHom (Algebra.TensorProduct.lift (CommRingCat.Hom.hom s.inl).toIntAlgHom (CommRingCat.Hom.hom s.inr).toIntAlgHom β―).toRingHom - CommRingCat.coproductCocone_ΞΉ π Mathlib.Algebra.Category.Ring.Constructions
(A B : CommRingCat) : (A.coproductCocone B).ΞΉ = { app := fun x => match x.as with | CategoryTheory.Limits.WalkingPair.left => CommRingCat.ofHom βAlgebra.TensorProduct.includeLeft | CategoryTheory.Limits.WalkingPair.right => CommRingCat.ofHom βAlgebra.TensorProduct.includeRight, naturality := β― } - CommRingCat.pushout_inl_tensorProdObjIsoPushoutObj_inv_right π Mathlib.Algebra.Category.Ring.Under.Basic
{R S : CommRingCat} [Algebra βR βS] (A : CategoryTheory.Under R) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pushout.inl A.hom (CommRingCat.ofHom (algebraMap βR βS))) (CategoryTheory.Under.Hom.right (CommRingCat.tensorProdObjIsoPushoutObj S A).inv) = CommRingCat.ofHom Algebra.TensorProduct.includeRight.toRingHom - CommRingCat.pushout_inl_tensorProdObjIsoPushoutObj_inv_right_assoc π Mathlib.Algebra.Category.Ring.Under.Basic
{R S : CommRingCat} [Algebra βR βS] (A : CategoryTheory.Under R) {Z : CommRingCat} (h : (S.mkUnder (TensorProduct βR βS βA.right)).right βΆ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pushout.inl A.hom (CommRingCat.ofHom (algebraMap βR βS))) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Under.Hom.right (CommRingCat.tensorProdObjIsoPushoutObj S A).inv) h) = CategoryTheory.CategoryStruct.comp (CommRingCat.ofHom Algebra.TensorProduct.includeRight.toRingHom) h - AlgHom.FinitePresentation.of_surjective π Mathlib.RingTheory.FinitePresentation
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) (hf : Function.Surjective βf) (hker : (RingHom.ker f.toRingHom).FG) : f.FinitePresentation - Algebra.FinitePresentation.ker_fG_of_surjective π Mathlib.RingTheory.FinitePresentation
{R : Type wβ} {A : Type wβ} {B : Type wβ} [CommRing R] [CommRing A] [Algebra R A] [CommRing B] [Algebra R B] (f : A ββ[R] B) (hf : Function.Surjective βf) [Algebra.FinitePresentation R A] [Algebra.FinitePresentation R B] : (RingHom.ker f.toRingHom).FG - Algebra.FinitePresentation.of_surjective π Mathlib.RingTheory.FinitePresentation
{R : Type wβ} {A : Type wβ} {B : Type wβ} [CommRing R] [CommRing A] [Algebra R A] [CommRing B] [Algebra R B] {f : A ββ[R] B} (hf : Function.Surjective βf) (hker : (RingHom.ker f.toRingHom).FG) [Algebra.FinitePresentation R A] : Algebra.FinitePresentation R B - AlgHom.FinitePresentation.comp_surjective π Mathlib.RingTheory.FinitePresentation
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommRing R] [CommRing A] [CommRing B] [CommRing C] [Algebra R A] [Algebra R B] [Algebra R C] {f : A ββ[R] B} {g : B ββ[R] C} (hf : f.FinitePresentation) (hg : Function.Surjective βg) (hker : (RingHom.ker g.toRingHom).FG) : (g.comp f).FinitePresentation - Algebra.FinitePresentation.mk π Mathlib.RingTheory.FinitePresentation
{R : Type wβ} {A : Type wβ} [CommSemiring R] [Semiring A] [Algebra R A] (out : β n f, Function.Surjective βf β§ (RingHom.ker f.toRingHom).FG) : Algebra.FinitePresentation R A - Algebra.FinitePresentation.out π Mathlib.RingTheory.FinitePresentation
{R : Type wβ} {A : Type wβ} {instβ : CommSemiring R} {instβΒΉ : Semiring A} {instβΒ² : Algebra R A} [self : Algebra.FinitePresentation R A] : β n f, Function.Surjective βf β§ (RingHom.ker f.toRingHom).FG - Algebra.FinitePresentation.ker_fg_of_mvPolynomial π Mathlib.RingTheory.FinitePresentation
{R : Type wβ} {A : Type wβ} [CommRing R] [CommRing A] [Algebra R A] {n : β} (f : MvPolynomial (Fin n) R ββ[R] A) (hf : Function.Surjective βf) [Algebra.FinitePresentation R A] : (RingHom.ker f.toRingHom).FG - Algebra.FinitePresentation.iff_quotient_mvPolynomial' π Mathlib.RingTheory.FinitePresentation
{R : Type wβ} {A : Type wβ} [CommRing R] [CommRing A] [Algebra R A] : Algebra.FinitePresentation R A β β ΞΉ x f, Function.Surjective βf β§ (RingHom.ker f.toRingHom).FG - RingHom.CodescendsAlong.includeRight π Mathlib.RingTheory.RingHomProperties
{P : {R S : Type u} β [inst : CommRing R] β [inst_1 : CommRing S] β (R β+* S) β Prop} (Q : {R S : Type u} β [inst : CommRing R] β [inst_1 : CommRing S] β (R β+* S) β Prop) (R S T : Type u) [CommRing R] [CommRing S] [Algebra R S] [CommRing T] [Algebra R T] (hPQ : RingHom.CodescendsAlong (fun {R S} [CommRing R] [CommRing S] => P) fun {R S} [CommRing R] [CommRing S] => Q) (h : Q (algebraMap R T)) (H : P Algebra.TensorProduct.includeRight.toRingHom) : P (algebraMap R S) - Localization.localAlgHom_apply π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [Algebra R P] (I : Ideal S) [I.IsPrime] (J : Ideal P) [J.IsPrime] (f : S ββ[R] P) (hIJ : I = Ideal.comap f J) (x : Localization.AtPrime I) : (Localization.localAlgHom I J f hIJ) x = (Localization.localRingHom I J f.toRingHom hIJ) x - Localization.localAlgEquiv_apply π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [Algebra R P] (I : Ideal S) [I.IsPrime] (J : Ideal P) [J.IsPrime] (f : S ββ[R] P) (hIJ : I = Ideal.comap f J) (aβ : Localization.AtPrime I) : (Localization.localAlgEquiv I J f hIJ) aβ = (ββ(Localization.localAlgHom I J (βf) hIJ).toRingHom).toFun aβ - Localization.localAlgHom'_apply π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] [Algebra R P] (J : Ideal S) (K : Ideal P) [J.IsPrime] [K.IsPrime] [J.LiesOver I] [Algebra (Localization.AtPrime I) (Localization.AtPrime J)] [Localization.AtPrime.IsLiesOverAlgebra I J] [K.LiesOver I] [Algebra (Localization.AtPrime I) (Localization.AtPrime K)] [Localization.AtPrime.IsLiesOverAlgebra I K] (f : S ββ[R] P) (h : J = Ideal.comap f K) (aβ : Localization.AtPrime J) : (Localization.localAlgHom' I J K f h) aβ = ((Localization.monoidOf J.primeCompl).liftβ ((algebraMap P (Localization.AtPrime K)).comp βf).toMonoidWithZeroHom β―) aβ - IsLocalization.isLocalization_algebraMapSubmonoid_map_algHom π Mathlib.RingTheory.Localization.Algebra
{R : Type u_5} [CommSemiring R] (M : Submonoid R) {A : Type u_6} [CommSemiring A] [Algebra R A] {B : Type u_7} [CommSemiring B] [Algebra R B] (Bβ : Type u_10) [CommSemiring Bβ] [Algebra B Bβ] [IsLocalization (Algebra.algebraMapSubmonoid B M) Bβ] (f : A ββ[R] B) : IsLocalization (Submonoid.map f.toRingHom (Algebra.algebraMapSubmonoid A M)) Bβ - IsLocalization.mapβ_coe π Mathlib.RingTheory.Localization.Algebra
{R : Type u_5} [CommSemiring R] (M : Submonoid R) {A : Type u_6} [CommSemiring A] [Algebra R A] {B : Type u_7} [CommSemiring B] [Algebra R B] (Rβ : Type u_8) [CommSemiring Rβ] [Algebra R Rβ] [IsLocalization M Rβ] (Aβ : Type u_9) [CommSemiring Aβ] [Algebra R Aβ] [Algebra A Aβ] [IsScalarTower R A Aβ] [IsLocalization (Algebra.algebraMapSubmonoid A M) Aβ] (Bβ : Type u_10) [CommSemiring Bβ] [Algebra R Bβ] [Algebra B Bβ] [IsScalarTower R B Bβ] [IsLocalization (Algebra.algebraMapSubmonoid B M) Bβ] [Algebra Rβ Aβ] [Algebra Rβ Bβ] [IsScalarTower R Rβ Aβ] [IsScalarTower R Rβ Bβ] (f : A ββ[R] B) : β(IsLocalization.mapβ M Rβ Aβ Bβ f) = β(IsLocalization.map Bβ f.toRingHom β―) - AlgHom.toKerIsLocalization_apply π Mathlib.RingTheory.Localization.Algebra
{R : Type u_5} [CommSemiring R] (M : Submonoid R) {A : Type u_6} [CommSemiring A] [Algebra R A] {B : Type u_7} [CommSemiring B] [Algebra R B] (Rβ : Type u_8) [CommSemiring Rβ] [Algebra R Rβ] [IsLocalization M Rβ] (Aβ : Type u_9) [CommSemiring Aβ] [Algebra R Aβ] [Algebra A Aβ] [IsScalarTower R A Aβ] [IsLocalization (Algebra.algebraMapSubmonoid A M) Aβ] (Bβ : Type u_10) [CommSemiring Bβ] [Algebra R Bβ] [Algebra B Bβ] [IsScalarTower R B Bβ] [IsLocalization (Algebra.algebraMapSubmonoid B M) Bβ] [Algebra Rβ Aβ] [Algebra Rβ Bβ] [IsScalarTower R Rβ Aβ] [IsScalarTower R Rβ Bβ] (f : A ββ[R] B) (x : β₯(RingHom.ker f)) : (AlgHom.toKerIsLocalization M Rβ Aβ Bβ f) x = (RingHom.toKerIsLocalization Aβ Bβ f.toRingHom β―) x - Polynomial.Monic.quotient_isIntegral π Mathlib.RingTheory.IntegralClosure.IsIntegralClosure.Basic
{S : Type u_4} [CommRing S] {g : Polynomial S} (mon : g.Monic) {I : Ideal (Polynomial S)} (h : g β I) : ((Ideal.Quotient.mkβ S I).comp (Algebra.ofId S (Polynomial S))).IsIntegral - RingHom.SurjectiveOnStalks.baseChange' π Mathlib.RingTheory.SurjectiveOnStalks
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {T : Type u_3} [CommRing T] [Algebra R T] [Algebra R S] (hf : (algebraMap R S).SurjectiveOnStalks) : Algebra.TensorProduct.includeRight.SurjectiveOnStalks - RingHom.SurjectiveOnStalks.tensorProductMap π Mathlib.RingTheory.SurjectiveOnStalks
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {T : Type u_3} [CommRing T] {S' : Type u_4} {T' : Type u_5} [CommRing S'] [CommRing T'] [Algebra R S] [Algebra R T] [Algebra R S'] [Algebra R T'] {f : S ββ[R] S'} (Hf : f.SurjectiveOnStalks) {g : T ββ[R] T'} (Hg : g.SurjectiveOnStalks) : (Algebra.TensorProduct.map f g).SurjectiveOnStalks - Ideal.ResidueField.mapβ π Mathlib.RingTheory.LocalRing.ResidueField.Ideal
{R : Type u_1} {A : Type u_3} {B : Type u_4} [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal A) [I.IsPrime] (J : Ideal B) [J.IsPrime] (f : A ββ[R] B) (hf : I = Ideal.comap f.toRingHom J) : I.ResidueField ββ[R] J.ResidueField - Ideal.ResidueField.mapβ_apply π Mathlib.RingTheory.LocalRing.ResidueField.Ideal
{R : Type u_1} {A : Type u_3} {B : Type u_4} [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal A) [I.IsPrime] (J : Ideal B) [J.IsPrime] (f : A ββ[R] B) (hf : I = Ideal.comap f.toRingHom J) (x : I.ResidueField) : (Ideal.ResidueField.mapβ I J f hf) x = (Ideal.ResidueField.map I J f.toRingHom hf) x - MaximalSpectrum.mapPiLocalization_naturality π Mathlib.RingTheory.Spectrum.Maximal.Localization
{R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] (f : R β+* S) (hf : Function.Bijective βf) : (MaximalSpectrum.mapPiLocalization f hf).comp β(MaximalSpectrum.toPiLocalization R) = (MaximalSpectrum.toPiLocalization S).comp f - PrimeSpectrum.mapPiLocalization_naturality π Mathlib.RingTheory.Spectrum.Maximal.Localization
{R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] (f : R β+* S) : (PrimeSpectrum.mapPiLocalization f).comp β(PrimeSpectrum.toPiLocalization R) = (PrimeSpectrum.toPiLocalization S).comp f - RingHom.Flat.lTensor π Mathlib.RingTheory.RingHom.Flat
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (A : Type u_4) {B : Type u_5} {D : Type u_7} [CommRing A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [CommRing B] [Algebra R B] [CommRing D] [Algebra R D] {f : B ββ[R] D} (hf : f.Flat) : (Algebra.TensorProduct.lTensor A f).Flat - RingHom.Flat.tensorProductMap π Mathlib.RingTheory.RingHom.Flat
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] {A : Type u_4} {B : Type u_5} {C : Type u_6} {D : Type u_7} [CommRing A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [CommRing B] [Algebra R B] [CommRing C] [Algebra R C] [Algebra S C] [IsScalarTower R S C] [CommRing D] [Algebra R D] {f : A ββ[S] C} {g : B ββ[R] D} (hf : f.Flat) (hg : g.Flat) : (Algebra.TensorProduct.map f g).Flat - RingHom.Flat.mapOfCompatibleSMul π Mathlib.RingTheory.RingHom.Flat
{R S : Type u} (T A : Type u) [CommRing R] [CommRing S] [CommRing T] [CommRing A] [Algebra R S] [Algebra R T] [Algebra S T] [IsScalarTower R S T] [Algebra R A] [Algebra S A] [IsScalarTower R S A] (h : (Algebra.TensorProduct.lmul' R).Flat) : (Algebra.TensorProduct.mapOfCompatibleSMul S R T T A).Flat - AlgHom.kerSquareLift π Mathlib.RingTheory.Ideal.Cotangent
{R : Type u} [CommRing R] {A : Type u_1} {B : Type u_2} [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) : A β§Έ RingHom.ker f.toRingHom ^ 2 ββ[R] B - AlgHom.ker_kerSquareLift π Mathlib.RingTheory.Ideal.Cotangent
{R : Type u} [CommRing R] {A : Type u_1} {B : Type u_2} [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) : RingHom.ker f.kerSquareLift.toRingHom = (RingHom.ker f.toRingHom).cotangentIdeal - AlgHom.kerSquareLift_mk π Mathlib.RingTheory.Ideal.Cotangent
{R : Type u} [CommRing R] {A : Type u_1} {B : Type u_2} [CommRing A] [CommRing B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) (x : A) : f.kerSquareLift ((Ideal.Quotient.mk (RingHom.ker f.toRingHom ^ 2)) x) = f x - KaehlerDifferential.endEquiv π Mathlib.RingTheory.Kaehler.Basic
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] : Module.End S Ξ©[SβR] β { f // (Algebra.TensorProduct.lmul' R).kerSquareLift.comp f = AlgHom.id R S } - KaehlerDifferential.End_equiv_aux π Mathlib.RingTheory.Kaehler.Basic
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] (f : S ββ[R] TensorProduct R S S β§Έ KaehlerDifferential.ideal R S ^ 2) : (Ideal.Quotient.mkβ R (KaehlerDifferential.ideal R S).cotangentIdeal).comp f = IsScalarTower.toAlgHom R S ((TensorProduct R S S β§Έ KaehlerDifferential.ideal R S ^ 2) β§Έ (KaehlerDifferential.ideal R S).cotangentIdeal) β (Algebra.TensorProduct.lmul' R).kerSquareLift.comp f = AlgHom.id R S - KaehlerDifferential.endEquivAuxEquiv π Mathlib.RingTheory.Kaehler.Basic
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] : { f // (Ideal.Quotient.mkβ R (KaehlerDifferential.ideal R S).cotangentIdeal).comp f = IsScalarTower.toAlgHom R S ((TensorProduct R S S β§Έ KaehlerDifferential.ideal R S ^ 2) β§Έ (KaehlerDifferential.ideal R S).cotangentIdeal) } β { f // (Algebra.TensorProduct.lmul' R).kerSquareLift.comp f = AlgHom.id R S } - Algebra.IsEffective.eqLocus_includeLeft_includeRight π Mathlib.RingTheory.TensorProduct.IncludeLeftSubRight
{R : Type u_1} [CommSemiring R] {S : Type u_2} [Ring S] [Algebra R S] (h : Algebra.IsEffective R S) : β(Algebra.TensorProduct.includeLeftRingHom.eqLocus Algebra.TensorProduct.includeRight.toRingHom) = Set.range β(algebraMap R S) - AdjoinRoot.coe_liftAlgHom π Mathlib.RingTheory.AdjoinRoot
{R : Type u_1} {S : Type u_2} {T : Type u_3} [CommRing R] [CommRing S] [CommRing T] [Algebra S R] [Algebra S T] (p : Polynomial R) (i : R ββ[S] T) (x : T) (h : Polynomial.evalβ (βi) x p = 0) : β(AdjoinRoot.liftAlgHom p i x h) = β(AdjoinRoot.lift i.toRingHom x h) - AdjoinRoot.toRingHom_liftAlgHom π Mathlib.RingTheory.AdjoinRoot
{R : Type u_1} {S : Type u_2} {T : Type u_3} [CommRing R] [CommRing S] [CommRing T] [Algebra S R] [Algebra S T] (p : Polynomial R) (i : R ββ[S] T) (x : T) (h : Polynomial.evalβ (βi) x p = 0) : β(AdjoinRoot.liftAlgHom p i x h) = AdjoinRoot.lift i.toRingHom x h - AdjoinRoot.tensorAlgEquiv π Mathlib.RingTheory.AdjoinRoot
{R : Type u_6} {S : Type u_7} {T : Type u_8} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] (p : Polynomial S) (q : Polynomial (TensorProduct R T S)) (h : Polynomial.map Algebra.TensorProduct.includeRight.toRingHom p = q) : TensorProduct R T (AdjoinRoot p) ββ[T] AdjoinRoot q - AdjoinRoot.tensorAlgEquiv_root π Mathlib.RingTheory.AdjoinRoot
{R : Type u_6} {S : Type u_7} {T : Type u_8} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] (p : Polynomial S) (q : Polynomial (TensorProduct R T S)) (h : Polynomial.map Algebra.TensorProduct.includeRight.toRingHom p = q) : (AdjoinRoot.tensorAlgEquiv p q h) (1 ββ[R] AdjoinRoot.root p) = AdjoinRoot.root q - AdjoinRoot.tensorAlgEquiv_of π Mathlib.RingTheory.AdjoinRoot
{R : Type u_6} {S : Type u_7} {T : Type u_8} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] (p : Polynomial S) (q : Polynomial (TensorProduct R T S)) (h : Polynomial.map Algebra.TensorProduct.includeRight.toRingHom p = q) {x : S} : (AdjoinRoot.tensorAlgEquiv p q h) (1 ββ[R] (AdjoinRoot.of p) x) = (AdjoinRoot.of q) (1 ββ[R] x) - IntermediateField.exists_algHom_of_splits' π Mathlib.FieldTheory.Extension
{F : Type u_1} {E : Type u_2} {K : Type u_3} [Field F] [Field E] [Field K] [Algebra F E] [Algebra F K] {L : Type u_4} [Field L] [Algebra F L] [Algebra L E] [IsScalarTower F L E] (f : L ββ[F] K) (hK : β (s : E), IsIntegral L s β§ (Polynomial.map f.toRingHom (minpoly L s)).Splits) : β Ο, AlgHom.domRestrict L Ο = f - IntermediateField.exists_algHom_of_adjoin_splits' π Mathlib.FieldTheory.Extension
{F : Type u_1} {E : Type u_2} {K : Type u_3} [Field F] [Field E] [Field K] [Algebra F E] [Algebra F K] {S : Set E} {L : Type u_4} [Field L] [Algebra F L] [Algebra L E] [IsScalarTower F L E] (f : L ββ[F] K) (hK : β s β S, IsIntegral L s β§ (Polynomial.map f.toRingHom (minpoly L s)).Splits) (hS : IntermediateField.adjoin L S = β€) : β Ο, AlgHom.domRestrict L Ο = f - IntermediateField.Lifts.exists_lift_of_splits' π Mathlib.FieldTheory.Extension
{F : Type u_1} {E : Type u_2} {K : Type u_3} [Field F] [Field E] [Field K] [Algebra F E] [Algebra F K] (x : IntermediateField.Lifts F E K) {s : E} (h1 : IsIntegral (β₯x.carrier) s) (h2 : (Polynomial.map x.emb.toRingHom (minpoly (β₯x.carrier) s)).Splits) : β y, x β€ y β§ s β y.carrier - IntermediateField.exists_algHom_adjoin_of_splits' π Mathlib.FieldTheory.Extension
{F : Type u_1} {E : Type u_2} {K : Type u_3} [Field F] [Field E] [Field K] [Algebra F E] [Algebra F K] {S : Set E} {L : Type u_4} [Field L] [Algebra F L] [Algebra L E] [IsScalarTower F L E] (f : L ββ[F] K) (hK : β s β S, IsIntegral L s β§ (Polynomial.map f.toRingHom (minpoly L s)).Splits) : β Ο, AlgHom.domRestrict L Ο = f - LinearMap.polyCharpolyAux_map_aeval π Mathlib.Algebra.Module.LinearMap.Polynomial
{R : Type u_1} {L : Type u_2} {M : Type u_3} {ΞΉ : Type u_5} {ΞΉM : Type u_7} [CommRing R] [AddCommGroup L] [Module R L] [AddCommGroup M] [Module R M] (Ο : L ββ[R] Module.End R M) [Fintype ΞΉ] [Fintype ΞΉM] [DecidableEq ΞΉ] [DecidableEq ΞΉM] (b : Module.Basis ΞΉ R L) (bβ : Module.Basis ΞΉM R M) (A : Type u_8) [CommRing A] [Algebra R A] [Module.Finite A (TensorProduct R A M)] [Module.Free A (TensorProduct R A M)] (x : ΞΉ β A) : Polynomial.map (MvPolynomial.aeval x).toRingHom (Ο.polyCharpolyAux b bβ) = ((LinearMap.tensorProduct R A M M ββ LinearMap.baseChange A Ο) ((Algebra.TensorProduct.basis A b).repr.symm (Finsupp.equivFunOnFinite.symm x))).charpoly - LieRinehartAlgebra.Hom.toLinearMap' π Mathlib.Algebra.LieRinehartAlgebra.Defs
{R : Type u_1} {Aβ : Type u_2} {Lβ : Type u_3} {Aβ : Type u_4} {Lβ : Type u_5} [CommRing R] [CommRing Aβ] [LieRing Lβ] [Module Aβ Lβ] [LieRingModule Lβ Aβ] [CommRing Aβ] [LieRing Lβ] [Module Aβ Lβ] [LieRingModule Lβ Aβ] [Algebra R Aβ] [LieAlgebra R Lβ] [Algebra R Aβ] [LieAlgebra R Lβ] {Οββ : Aβ ββ[R] Aβ} (f : LieRinehartAlgebra.Hom Οββ Lβ Lβ) : Lβ βββ[Οββ.toRingHom] Lβ - LieRinehartAlgebra.Hom.toLinearMap'_apply π Mathlib.Algebra.LieRinehartAlgebra.Defs
{R : Type u_1} {Aβ : Type u_2} {Lβ : Type u_3} {Aβ : Type u_4} {Lβ : Type u_5} [CommRing R] [CommRing Aβ] [LieRing Lβ] [Module Aβ Lβ] [LieRingModule Lβ Aβ] [CommRing Aβ] [LieRing Lβ] [Module Aβ Lβ] [LieRingModule Lβ Aβ] [Algebra R Aβ] [LieAlgebra R Lβ] [Algebra R Aβ] [LieAlgebra R Lβ] {Οββ : Aβ ββ[R] Aβ} (f : LieRinehartAlgebra.Hom Οββ Lβ Lβ) (x : Lβ) : f.toLinearMap' x = f.toLieHom x - Algebra.Extension.toBaseChange_toRingHom π Mathlib.RingTheory.Extension.Basic
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {P : Algebra.Extension R S} (T : Type u_1) [CommRing T] [Algebra R T] : (Algebra.Extension.toBaseChange T).toRingHom = Algebra.TensorProduct.includeRight.toRingHom - Algebra.Extension.Hom.ofAlgHom_toRingHom π Mathlib.RingTheory.Extension.Basic
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {P : Algebra.Extension R S} {R' : Type u_1} {S' : Type u_2} [CommRing R'] [CommRing S'] [Algebra R' S'] {P' : Algebra.Extension R' S'} [Algebra R R'] [Algebra S S'] [Algebra R S'] [IsScalarTower R R' S'] [IsScalarTower R S S'] (f : P.Ring ββ[R] P'.Ring) (H : (IsScalarTower.toAlgHom R P'.Ring S').comp f = (IsScalarTower.toAlgHom R S S').comp (IsScalarTower.toAlgHom R P.Ring S)) : (Algebra.Extension.Hom.ofAlgHom f H).toRingHom = f.toRingHom - Algebra.Extension.ker_baseChange π Mathlib.RingTheory.Extension.Basic
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Extension R S) (T : Type u_1) [CommRing T] [Algebra R T] : P.baseChange.ker = Ideal.map Algebra.TensorProduct.includeRight.toRingHom P.ker - Algebra.Generators.self_algebra_algebraMap π Mathlib.RingTheory.Extension.Generators
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] : algebraMap (MvPolynomial S R) S = (MvPolynomial.aeval id).toRingHom - Algebra.Generators.self_algebra_smul π Mathlib.RingTheory.Extension.Generators
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] (c : MvPolynomial S R) (x : S) : SMul.smul c x = (MvPolynomial.aeval id).toRingHom c * x - Algebra.Generators.Hom.toExtensionHom_toRingHom π Mathlib.RingTheory.Extension.Generators
{R : Type u} {S : Type v} {ΞΉ : Type w} [CommRing R] [CommRing S] [Algebra R S] {P : Algebra.Generators R S ΞΉ} {R' : Type u_1} {S' : Type u_2} {ΞΉ' : Type u_3} [CommRing R'] [CommRing S'] [Algebra R' S'] {P' : Algebra.Generators R' S' ΞΉ'} [Algebra R R'] [Algebra S S'] [Algebra R S'] [IsScalarTower R R' S'] [IsScalarTower R S S'] (f : P.Hom P') : f.toExtensionHom.toRingHom = f.toAlgHom.toRingHom - Algebra.Generators.ker_ofAlgHom π Mathlib.RingTheory.Extension.Generators
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {I : Type u_8} (f : MvPolynomial I R ββ[R] S) (h : Function.Surjective βf) : (Algebra.Generators.ofAlgHom f h).ker = RingHom.ker f.toRingHom - Algebra.Extension.CotangentSpace.map_tmul_eq_tmul_map π Mathlib.RingTheory.Extension.Cotangent.Basic
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {P : Algebra.Extension R S} {R' : Type u'} {S' : Type v'} [CommRing R'] [CommRing S'] [Algebra R' S'] {P' : Algebra.Extension R' S'} [Algebra R R'] [Algebra S S'] [Algebra R S'] [IsScalarTower R R' S'] (f : P.Hom P') (x : S) (y : Ξ©[P.RingβR]) : (Algebra.Extension.CotangentSpace.map f) (x ββ[P.Ring] y) = (algebraMap S S') x ββ[P'.Ring] (KaehlerDifferential.map R R' P.Ring P'.Ring) y - PrimeSpectrum.preimageEquivFiber_symm_apply_coe π Mathlib.RingTheory.LocalRing.ResidueField.Fiber
(R : Type u_1) (S : Type u_2) [CommRing R] [CommRing S] [Algebra R S] (p : PrimeSpectrum R) (q : PrimeSpectrum (p.asIdeal.Fiber S)) : β((PrimeSpectrum.preimageEquivFiber R S p).symm q) = PrimeSpectrum.comap Algebra.TensorProduct.includeRight.toRingHom q - PrimeSpectrum.preimageEquivFiber_apply_asIdeal π Mathlib.RingTheory.LocalRing.ResidueField.Fiber
(R : Type u_1) (S : Type u_2) [CommRing R] [CommRing S] [Algebra R S] (p : PrimeSpectrum R) (q : β(PrimeSpectrum.comap (algebraMap R S) β»ΒΉ' {p})) : ((PrimeSpectrum.preimageEquivFiber R S p) q).asIdeal = RingHom.ker (Algebra.TensorProduct.lift (Ideal.ResidueField.mapβ p.asIdeal (βq).asIdeal (Algebra.ofId R S) β―) (IsScalarTower.toAlgHom R S (βq).asIdeal.ResidueField) β―).toRingHom - Algebra.QuasiFiniteAt.of_surjectiveOnStalks π Mathlib.RingTheory.QuasiFinite.Basic
{R : Type u_1} {S : Type u_2} {T : Type u_3} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] (p : Ideal S) [p.IsPrime] [Algebra.QuasiFiniteAt R p] (f : S ββ[R] T) (hf : f.SurjectiveOnStalks) (q : Ideal T) [q.IsPrime] (hq : p = Ideal.comap f.toRingHom q) : Algebra.QuasiFiniteAt R q - Algebra.QuasiFiniteAt.baseChange π Mathlib.RingTheory.QuasiFinite.Basic
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (p : Ideal S) [p.IsPrime] [Algebra.QuasiFiniteAt R p] {A : Type u_4} [CommRing A] [Algebra R A] (q : Ideal (TensorProduct R A S)) [q.IsPrime] (hq : p = Ideal.comap Algebra.TensorProduct.includeRight.toRingHom q) : Algebra.QuasiFiniteAt A q - AlgebraicIndependent.aevalEquivField_apply_coe π Mathlib.RingTheory.AlgebraicIndependent.Adjoin
{ΞΉ : Type u_1} {F : Type u_2} {E : Type u_3} {x : ΞΉ β E} [Field F] [Field E] [Algebra F E] (hx : AlgebraicIndependent F x) (a : FractionRing (MvPolynomial ΞΉ F)) : β(hx.aevalEquivField a) = (IsFractionRing.lift β―) a - AlgebraicIndependent.lift_reprField π Mathlib.RingTheory.AlgebraicIndependent.Adjoin
{ΞΉ : Type u_1} {F : Type u_2} {E : Type u_3} {x : ΞΉ β E} [Field F] [Field E] [Algebra F E] (hx : AlgebraicIndependent F x) (p : β₯(IntermediateField.adjoin F (Set.range x))) : (IsFractionRing.lift β―) (hx.reprField p) = βp - algebraicIndependent_iff_ker_eq_bot π Mathlib.RingTheory.AlgebraicIndependent.Basic
{ΞΉ : Type u} {R : Type u_2} {A : Type v} {x : ΞΉ β A} [CommRing R] [CommRing A] [Algebra R A] : AlgebraicIndependent R x β RingHom.ker (MvPolynomial.aeval x).toRingHom = β₯ - IntermediateField.restrictNormalHomSupProd_apply π Mathlib.FieldTheory.Galois.Basic
{F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] (K L : IntermediateField F E) [Normal F β₯K] [Normal F β₯L] (Ο : Gal(β₯(K β L)/F)) : (K.restrictNormalHomSupProd L) Ο = ((AlgEquiv.restrictNormalHom β₯K) Ο, (AlgEquiv.restrictNormalHom β₯L) Ο) - isScalarTower_of_section_of_ker_sqZero π Mathlib.RingTheory.Smooth.Kaehler
{R : Type u_1} {P : Type u_2} {S : Type u_3} [CommRing R] [CommRing P] [CommRing S] [Algebra R P] [Algebra P S] [Algebra R S] [IsScalarTower R P S] (g : S ββ[R] P) (hf' : RingHom.ker (algebraMap P S) ^ 2 = β₯) (hg : (IsScalarTower.toAlgHom R P S).comp g = AlgHom.id R S) : IsScalarTower P S β₯(RingHom.ker (algebraMap P S)) - retractionKerCotangentToTensorEquivSection π Mathlib.RingTheory.Smooth.Kaehler
{R : Type u_1} {P : Type u_2} {S : Type u_3} [CommRing R] [CommRing P] [CommRing S] [Algebra R P] [Algebra P S] [Algebra R S] [IsScalarTower R P S] (hf : Function.Surjective β(algebraMap P S)) : { l // l ββ KaehlerDifferential.kerCotangentToTensor R P S = LinearMap.id } β { g // (IsScalarTower.toAlgHom R P S).kerSquareLift.comp g = AlgHom.id R S } - Algebra.FormallySmooth.of_split π Mathlib.RingTheory.Smooth.Basic
{R : Type u} {A : Type v} [CommRing R] [CommRing A] [Algebra R A] {P : Type u_2} [CommRing P] [Algebra R P] [Algebra.FormallySmooth R P] (f : P ββ[R] A) (g : A ββ[R] P β§Έ RingHom.ker f.toRingHom ^ 2) (h : f.kerSquareLift.comp g = AlgHom.id R A) : Algebra.FormallySmooth R A - Algebra.FormallySmooth.iff_split_surjection π Mathlib.RingTheory.Smooth.Basic
{R : Type u} {A : Type v} [CommRing R] [CommRing A] [Algebra R A] {P : Type u_2} [CommRing P] [Algebra R P] [Algebra.FormallySmooth R P] (f : P ββ[R] A) (hf : Function.Surjective βf) : Algebra.FormallySmooth R A β β g, f.kerSquareLift.comp g = AlgHom.id R A - Algebra.IsUnramifiedAt.residueField π Mathlib.RingTheory.Unramified.Locus
{R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (P : Ideal R) [P.IsPrime] (Q : Ideal A) [Q.IsPrime] [Q.LiesOver P] [Algebra.IsUnramifiedAt R Q] (Q' : Ideal (P.Fiber A)) [Q'.IsPrime] (hQ' : Q = Ideal.comap Algebra.TensorProduct.includeRight.toRingHom Q') : Algebra.IsUnramifiedAt P.ResidueField Q' - Algebra.IsUnramifiedAt.not_minpoly_sq_dvd π Mathlib.RingTheory.Unramified.Field
{K : Type u_1} {A : Type u_2} [Field K] [CommRing A] [Algebra K A] (Q : Ideal A) [Q.IsPrime] [Algebra.IsUnramifiedAt K Q] (x : A) (p : Polynomial K) (hpβ : Ideal.span {p} = RingHom.ker (Polynomial.aeval x).toRingHom) (hpβ : Function.Surjective β(Polynomial.aeval x)) : Β¬minpoly K ((algebraMap A Q.ResidueField) x) ^ 2 β£ p - ContinuousAlgHom.cont π Mathlib.Topology.Algebra.Algebra
{R : Type u_3} [CommSemiring R] {A : Type u_4} [Semiring A] [TopologicalSpace A] {B : Type u_5} [Semiring B] [TopologicalSpace B] [Algebra R A] [Algebra R B] (self : A βA[R] B) : Continuous (ββ(βself).toRingHom).toFun - ContinuousAlgHom.mk π Mathlib.Topology.Algebra.Algebra
{R : Type u_3} [CommSemiring R] {A : Type u_4} [Semiring A] [TopologicalSpace A] {B : Type u_5} [Semiring B] [TopologicalSpace B] [Algebra R A] [Algebra R B] (toAlgHom : A ββ[R] B) (cont : Continuous (ββtoAlgHom.toRingHom).toFun := by fun_prop) : A βA[R] B - ContinuousAlgHom.coe_mk π Mathlib.Topology.Algebra.Algebra
{R : Type u_1} [CommSemiring R] {A : Type u_2} [Semiring A] [TopologicalSpace A] {B : Type u_3} [Semiring B] [TopologicalSpace B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) (h : Continuous (ββf.toRingHom).toFun) : β{ toAlgHom := f, cont := h } = f - ContinuousAlgHom.coe_mk' π Mathlib.Topology.Algebra.Algebra
{R : Type u_1} [CommSemiring R] {A : Type u_2} [Semiring A] [TopologicalSpace A] {B : Type u_3} [Semiring B] [TopologicalSpace B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) (h : Continuous (ββf.toRingHom).toFun) : β{ toAlgHom := f, cont := h } = βf - AlgebraicGeometry.diagonal_SpecMap π Mathlib.AlgebraicGeometry.Pullbacks
(R S : Type u) [CommRing R] [CommRing S] [Algebra R S] : CategoryTheory.Limits.pullback.diagonal (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (algebraMap R S))) = CategoryTheory.CategoryStruct.comp (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (Algebra.TensorProduct.lmul' R).toRingHom)) (AlgebraicGeometry.pullbackSpecIso R S S).inv - WeierstrassCurve.Affine.Point.map_some π Mathlib.AlgebraicGeometry.EllipticCurve.Affine.Point
{R : Type r} {S : Type s} {F : Type u} {K : Type v} [CommRing R] [CommRing S] [Field F] [Field K] {W' : WeierstrassCurve.Affine R} [DecidableEq F] [DecidableEq K] [Algebra R S] [Algebra R F] [Algebra S F] [IsScalarTower R S F] [Algebra R K] [Algebra S K] [IsScalarTower R S K] (f : F ββ[S] K) {x y : F} (h : (W'.baseChange F).Nonsingular x y) : (WeierstrassCurve.Affine.Point.map f) (WeierstrassCurve.Affine.Point.some x y h) = WeierstrassCurve.Affine.Point.some (f x) (f y) β― - minpoly.ker_eval π Mathlib.FieldTheory.Minpoly.IsIntegrallyClosed
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [IsDomain R] [Algebra R S] [IsIntegrallyClosed R] [IsDomain S] [Module.IsTorsionFree R S] {s : S} (hs : IsIntegral R s) : RingHom.ker (Polynomial.aeval s).toRingHom = Ideal.span {minpoly R s} - MvPowerSeries.comp_aeval π Mathlib.RingTheory.MvPowerSeries.Evaluation
{Ο : Type u_1} {R : Type u_2} [CommRing R] [UniformSpace R] {S : Type u_3} [CommRing S] [UniformSpace S] {a : Ο β S} [IsTopologicalSemiring R] [IsUniformAddGroup R] [IsUniformAddGroup S] [CompleteSpace S] [T2Space S] [IsTopologicalRing S] [IsLinearTopology S S] [Algebra R S] [ContinuousSMul R S] (ha : MvPowerSeries.HasEval a) {T : Type u_4} [CommRing T] [UniformSpace T] [IsUniformAddGroup T] [IsTopologicalRing T] [IsLinearTopology T T] [T2Space T] [Algebra R T] [ContinuousSMul R T] [CompleteSpace T] {Ξ΅ : S ββ[R] T} (hΞ΅ : Continuous βΞ΅) : Ξ΅.comp (MvPowerSeries.aeval ha) = MvPowerSeries.aeval β― - MvPowerSeries.aeval_unique π Mathlib.RingTheory.MvPowerSeries.Evaluation
{Ο : Type u_1} {R : Type u_2} [CommRing R] [UniformSpace R] {S : Type u_3} [CommRing S] [UniformSpace S] [IsTopologicalSemiring R] [IsUniformAddGroup R] [IsUniformAddGroup S] [CompleteSpace S] [T2Space S] [IsTopologicalRing S] [IsLinearTopology S S] [Algebra R S] [ContinuousSMul R S] {Ξ΅ : MvPowerSeries Ο R ββ[R] S} (hΞ΅ : Continuous βΞ΅) : MvPowerSeries.aeval β― = Ξ΅ - MvPowerSeries.comp_substAlgHom π Mathlib.RingTheory.MvPowerSeries.Substitution
{Ο : Type u_1} {R : Type u_3} [CommRing R] {Ο : Type u_4} {S : Type u_5} [CommRing S] [Algebra R S] {a : Ο β MvPowerSeries Ο S} {T : Type u_6} [CommRing T] [UniformSpace T] [T2Space T] [CompleteSpace T] [IsUniformAddGroup T] [IsTopologicalRing T] [IsLinearTopology T T] [Algebra R T] {Ξ΅ : MvPowerSeries Ο S ββ[R] T} [UniformSpace R] [DiscreteUniformity R] [UniformSpace S] [DiscreteUniformity S] (ha : MvPowerSeries.HasSubst a) (hΞ΅ : Continuous βΞ΅) : Ξ΅.comp (MvPowerSeries.substAlgHom ha) = MvPowerSeries.aeval β― - MvPowerSeries.comp_subst_apply π Mathlib.RingTheory.MvPowerSeries.Substitution
{Ο : Type u_1} {R : Type u_3} [CommRing R] {Ο : Type u_4} {S : Type u_5} [CommRing S] [Algebra R S] {a : Ο β MvPowerSeries Ο S} {T : Type u_6} [CommRing T] [UniformSpace T] [T2Space T] [CompleteSpace T] [IsUniformAddGroup T] [IsTopologicalRing T] [IsLinearTopology T T] [Algebra R T] {Ξ΅ : MvPowerSeries Ο S ββ[R] T} [UniformSpace R] [DiscreteUniformity R] [UniformSpace S] [DiscreteUniformity S] (ha : MvPowerSeries.HasSubst a) (hΞ΅ : Continuous βΞ΅) (f : MvPowerSeries Ο R) : Ξ΅ (MvPowerSeries.subst a f) = (MvPowerSeries.aeval β―) f - MvPowerSeries.comp_subst π Mathlib.RingTheory.MvPowerSeries.Substitution
{Ο : Type u_1} {R : Type u_3} [CommRing R] {Ο : Type u_4} {S : Type u_5} [CommRing S] [Algebra R S] {a : Ο β MvPowerSeries Ο S} {T : Type u_6} [CommRing T] [UniformSpace T] [T2Space T] [CompleteSpace T] [IsUniformAddGroup T] [IsTopologicalRing T] [IsLinearTopology T T] [Algebra R T] {Ξ΅ : MvPowerSeries Ο S ββ[R] T} [UniformSpace R] [DiscreteUniformity R] [UniformSpace S] [DiscreteUniformity S] (ha : MvPowerSeries.HasSubst a) (hΞ΅ : Continuous βΞ΅) : βΞ΅ β MvPowerSeries.subst a = β(MvPowerSeries.aeval β―) - PowerSeries.aeval_unique π Mathlib.RingTheory.PowerSeries.Evaluation
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] [UniformSpace R] [UniformSpace S] [IsUniformAddGroup R] [IsTopologicalSemiring R] [IsUniformAddGroup S] [T2Space S] [CompleteSpace S] [IsTopologicalRing S] [IsLinearTopology S S] [Algebra R S] [ContinuousSMul R S] {Ξ΅ : PowerSeries R ββ[R] S} (hΞ΅ : Continuous βΞ΅) : PowerSeries.aeval β― = Ξ΅ - PowerSeries.comp_aeval π Mathlib.RingTheory.PowerSeries.Evaluation
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {a : S} [UniformSpace R] [UniformSpace S] [IsUniformAddGroup R] [IsTopologicalSemiring R] [IsUniformAddGroup S] [T2Space S] [CompleteSpace S] [IsTopologicalRing S] [IsLinearTopology S S] [Algebra R S] [ContinuousSMul R S] (ha : PowerSeries.HasEval a) {T : Type u_3} [CommRing T] [UniformSpace T] [IsUniformAddGroup T] [IsTopologicalRing T] [IsLinearTopology T T] [T2Space T] [Algebra R T] [ContinuousSMul R T] [CompleteSpace T] {Ξ΅ : S ββ[R] T} (hΞ΅ : Continuous βΞ΅) : Ξ΅.comp (PowerSeries.aeval ha) = PowerSeries.aeval β― - AdicCompletion.evalOneβ_comp_algebraMap_eq_mk π Mathlib.RingTheory.AdicCompletion.Algebra
{R : Type u_1} [CommRing R] (I : Ideal R) : (AdicCompletion.evalOneβ I).comp (algebraMap R (AdicCompletion I R)) = Ideal.Quotient.mk I - Algebra.SubmersivePresentation.ofSubsingleton_algebra_algebraMap π Mathlib.RingTheory.Extension.Presentation.Submersive
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] [Subsingleton S] : algebraMap (MvPolynomial PUnit.{u_2 + 1} R) S = (MvPolynomial.aeval fun x => 1).toRingHom - Algebra.SubmersivePresentation.ofSubsingleton_algebra_smul π Mathlib.RingTheory.Extension.Presentation.Submersive
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] [Subsingleton S] (c : MvPolynomial PUnit.{u_2 + 1} R) (x : S) : SMul.smul c x = (MvPolynomial.aeval fun x => 1).toRingHom c * x - Algebra.SubmersivePresentation.ofSubsingleton_relation π Mathlib.RingTheory.Extension.Presentation.Submersive
(R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] [Subsingleton S] (xβ : PUnit.{u_1 + 1}) : (Algebra.SubmersivePresentation.ofSubsingleton R S).relation xβ = 1 - Algebra.IsStandardSmoothOfRelativeDimension.exists_etale_mvPolynomial π Mathlib.RingTheory.RingHom.StandardSmooth
(n : β) (R : Type u) (S : Type v) [CommRing R] [CommRing S] [Algebra R S] [Algebra.IsStandardSmoothOfRelativeDimension n R S] : β g, g.Etale - Algebra.FormallyUnramified.isOpenImmersion_SpecMap_lmul π Mathlib.AlgebraicGeometry.Morphisms.FormallyUnramified
{R S : Type u} [CommRing R] [CommRing S] [Algebra R S] [Algebra.FormallyUnramified R S] [Algebra.EssFiniteType R S] : AlgebraicGeometry.IsOpenImmersion (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (Algebra.TensorProduct.lmul' R).toRingHom)) - Algebra.WeaklyQuasiFiniteAt.of_surjectiveOnStalks π Mathlib.RingTheory.QuasiFinite.Weakly
{R : Type u_1} {S : Type u_2} {T : Type u_3} [CommRing R] [CommRing S] [Algebra R S] [CommRing T] [Algebra R T] (p : Ideal S) [p.IsPrime] [Algebra.WeaklyQuasiFiniteAt R p] (q : Ideal T) [q.IsPrime] (f : S ββ[R] T) (hf : f.SurjectiveOnStalks) (hq : p = Ideal.comap f q) : Algebra.WeaklyQuasiFiniteAt R q - Algebra.WeaklyQuasiFiniteAt.baseChange π Mathlib.RingTheory.QuasiFinite.Weakly
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (p : Ideal S) [p.IsPrime] [Algebra.WeaklyQuasiFiniteAt R p] {A : Type u_4} [CommRing A] [Algebra R A] (q : Ideal (TensorProduct R A S)) [q.IsPrime] (hq : p = Ideal.comap Algebra.TensorProduct.includeRight.toRingHom q) : Algebra.WeaklyQuasiFiniteAt A q - Algebra.WeaklyQuasiFiniteAt.of_quasiFiniteAt_residueField π Mathlib.RingTheory.QuasiFinite.Weakly
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (p : Ideal R) (q : Ideal S) [q.IsPrime] [p.IsPrime] [q.LiesOver p] (Q : Ideal (p.Fiber S)) [Q.IsPrime] (hQ : Ideal.comap Algebra.TensorProduct.includeRight.toRingHom Q = q) [Algebra.QuasiFiniteAt p.ResidueField Q] : Algebra.WeaklyQuasiFiniteAt R q - Algebra.not_isStronglyTranscendental_of_quasiFiniteAt π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] [IsReduced S] {x : S} (hx' : (Polynomial.aeval x).Finite) (P : Ideal S) [P.IsPrime] [Algebra.QuasiFiniteAt R P] : Β¬IsStronglyTranscendental R x - Algebra.not_isStronglyTranscendental_of_weaklyQuasiFiniteAt π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] [IsReduced S] {x : S} (hx' : (Polynomial.aeval x).Finite) (P : Ideal S) [P.IsPrime] [Algebra.WeaklyQuasiFiniteAt R P] : Β¬IsStronglyTranscendental R x - isIntegral_of_isIntegralElem_of_monic_of_natDegree_lt π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (Ο : Polynomial R ββ[R] S) (t : S) (p r : Polynomial R) (ht : Ο.IsIntegralElem t) (hpm : p.Monic) (hpr : r.natDegree < p.natDegree) (hp : Ο p * t = Ο r) : IsIntegral R t - exists_isIntegral_sub_of_isIntegralElem_of_mul_mem_range π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (Ο : Polynomial R ββ[R] S) (t : S) (p : Polynomial R) (ht : Ο.IsIntegralElem t) (hpm : p.Monic) (hp : Ο p * t β Ο.range) : β q, IsIntegral R (t - Ο q) - exists_isIntegral_leadingCoeff_pow_smul_sub_of_isIntegralElem_of_mul_mem_range π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (Ο : Polynomial R ββ[R] S) (t : S) (p : Polynomial R) (ht : Ο.IsIntegralElem t) (hp : Ο p * t β Ο.range) : β q n, IsIntegral R (p.leadingCoeff ^ n β’ t - Ο q) - exists_leadingCoeff_pow_smul_mem_conductor π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (Ο : Polynomial R ββ[R] S) (t : S) (p : Polynomial R) (hRS : integralClosure R S = β₯) (hΟ : Ο.Finite) (hp : Ο p * t β conductor R (Ο Polynomial.X)) : β n, p.leadingCoeff ^ n β’ t β conductor R (Ο Polynomial.X) - exists_leadingCoeff_pow_smul_mem_radical_conductor π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (Ο : Polynomial R ββ[R] S) (t : S) (p : Polynomial R) (hRS : integralClosure R S = β₯) (hΟ : Ο.Finite) (hp : Ο p * t β (conductor R (Ο Polynomial.X)).radical) (i : β) : p.coeff i β’ t β (conductor R (Ο Polynomial.X)).radical - Algebra.QuasiFiniteAt.of_quasiFiniteAt_residueField π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] [Algebra.FiniteType R S] (p : Ideal R) (q : Ideal S) [q.IsPrime] [p.IsPrime] [q.LiesOver p] (Q : Ideal (p.Fiber S)) [Q.IsPrime] (hQ : Ideal.comap Algebra.TensorProduct.includeRight.toRingHom Q = q) [Algebra.QuasiFiniteAt p.ResidueField Q] : Algebra.QuasiFiniteAt R q - Algebra.ZariskisMainProperty.exists_fg_and_exists_notMem_and_awayMap_bijective π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] [Algebra.FiniteType R S] (p : Ideal S) (H : Algebra.ZariskisMainProperty R p) : β S', (Subalgebra.toSubmodule S').FG β§ β r, βr β p β§ Function.Bijective β(Localization.awayMap S'.val.toRingHom r) - Algebra.QuasiFiniteAt.exists_fg_and_exists_notMem_and_awayMap_bijective π Mathlib.RingTheory.ZariskisMainTheorem
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] [Algebra.FiniteType R S] (p : Ideal S) [p.IsPrime] [Algebra.WeaklyQuasiFiniteAt R p] : β S', (Subalgebra.toSubmodule S').FG β§ β r, βr β p β§ Function.Bijective β(Localization.awayMap S'.val.toRingHom r) - exists_derivative_mul_eq_and_isIntegral_coeff π Mathlib.RingTheory.Smooth.IntegralClosure
{R : Type u_1} {S : Type u_2} {B : Type u_3} [CommRing R] [CommRing S] [Algebra R S] [CommRing B] [Algebra R B] {Ο : Polynomial S ββ[R] B} (hΟ : Function.Surjective βΟ) {f : Polynomial S} (hf : f.Monic) (hf' : β (i : β), IsIntegral R (f.coeff i)) (hfx : RingHom.ker Ο.toRingHom = Ideal.span {f}) {y : B} (hy : IsIntegral R y) : β g, Ο (Polynomial.derivative f) * y = Ο g β§ β (i : β), IsIntegral R (g.coeff i) - AlgebraicGeometry.Scheme.Hom.normalizationObjIso_hom_val π Mathlib.AlgebraicGeometry.Normalization
{X Y : AlgebraicGeometry.Scheme} (f : X βΆ Y) [AlgebraicGeometry.QuasiCompact f] [AlgebraicGeometry.QuasiSeparated f] {U : Y.Opens} (hU : AlgebraicGeometry.IsAffineOpen U) : CategoryTheory.CategoryStruct.comp (AlgebraicGeometry.Scheme.Hom.normalizationObjIso f hU).hom (CommRingCat.ofHom (integralClosure β(Y.presheaf.obj (Opposite.op U)) β(X.presheaf.obj (Opposite.op ((TopologicalSpace.Opens.map f.base).obj U)))).val.toRingHom) = AlgebraicGeometry.Scheme.Hom.appLE (AlgebraicGeometry.Scheme.Hom.toNormalization f) ((TopologicalSpace.Opens.map (AlgebraicGeometry.Scheme.Hom.fromNormalization f).base).obj U) ((TopologicalSpace.Opens.map f.base).obj U) β― - AlgebraicGeometry.Scheme.Hom.ΞΉ_toNormalization π Mathlib.AlgebraicGeometry.Normalization
{X Y : AlgebraicGeometry.Scheme} (f : X βΆ Y) [AlgebraicGeometry.QuasiCompact f] [AlgebraicGeometry.QuasiSeparated f] (U : βY.affineOpens) : CategoryTheory.CategoryStruct.comp ((TopologicalSpace.Opens.map f.base).obj βU).ΞΉ (AlgebraicGeometry.Scheme.Hom.toNormalization f) = CategoryTheory.CategoryStruct.comp ((TopologicalSpace.Opens.map f.base).obj βU).toSpecΞ (CategoryTheory.CategoryStruct.comp (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (integralClosure β(Y.presheaf.obj (Opposite.op βU)) β(X.presheaf.obj (Opposite.op ((TopologicalSpace.Opens.map f.base).obj βU)))).val.toRingHom)) ((AlgebraicGeometry.Scheme.Hom.normalizationOpenCover f).f U)) - AlgebraicGeometry.Scheme.Hom.ΞΉ_toNormalization_assoc π Mathlib.AlgebraicGeometry.Normalization
{X Y : AlgebraicGeometry.Scheme} (f : X βΆ Y) [AlgebraicGeometry.QuasiCompact f] [AlgebraicGeometry.QuasiSeparated f] (U : βY.affineOpens) {Z : AlgebraicGeometry.Scheme} (h : AlgebraicGeometry.Scheme.Hom.normalization f βΆ Z) : CategoryTheory.CategoryStruct.comp ((TopologicalSpace.Opens.map f.base).obj βU).ΞΉ (CategoryTheory.CategoryStruct.comp (AlgebraicGeometry.Scheme.Hom.toNormalization f) h) = CategoryTheory.CategoryStruct.comp ((TopologicalSpace.Opens.map f.base).obj βU).toSpecΞ (CategoryTheory.CategoryStruct.comp (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (integralClosure β(Y.presheaf.obj (Opposite.op βU)) β(X.presheaf.obj (Opposite.op ((TopologicalSpace.Opens.map f.base).obj βU)))).val.toRingHom)) (CategoryTheory.CategoryStruct.comp ((AlgebraicGeometry.Scheme.Hom.normalizationOpenCover f).f U) h)) - MvPolynomial.universalFactorizationMapPresentation π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) : Algebra.PreSubmersivePresentation (MvPolynomial (Fin n) R) (TensorProduct R (MvPolynomial (Fin m) R) (MvPolynomial (Fin k) R)) (Fin m β Fin k) (Fin n) - MvPolynomial.universalFactorizationMapPresentation_map π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) (aβ : Fin n) : (MvPolynomial.universalFactorizationMapPresentation R n m k hn).map aβ = (βfinSumFinEquiv.symm β β(finCongr hn)) aβ - MvPolynomial.universalFactorizationMapPresentation_val π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) (aβ : Fin m β Fin k) : (MvPolynomial.universalFactorizationMapPresentation R n m k hn).val aβ = Sum.elim (fun x => MvPolynomial.X x ββ[R] 1) (fun x => 1 ββ[R] MvPolynomial.X x) aβ - Algebra.exists_etale_bijective_residueFieldMap_and_map_eq_mul_and_isCoprime π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
{R : Type u} [CommRing R] (P : Ideal R) [P.IsPrime] (p : Polynomial R) (f g : Polynomial P.ResidueField) (hp : p.Monic) (hf : f.Monic) (hg : g.Monic) (H : Polynomial.map (algebraMap R P.ResidueField) p = f * g) (Hpq : IsCoprime f g) : β R' x x_1, β (_ : Algebra.Etale R R'), β Q, β (x_3 : Q.IsPrime) (x_4 : Q.LiesOver P), β f' g', Function.Bijective β(Ideal.ResidueField.mapβ P Q (Algebra.ofId R R') β―) β§ f'.Monic β§ g'.Monic β§ Polynomial.map (algebraMap R R') p = f' * g' β§ IsCoprime f' g' β§ Polynomial.map (Ideal.ResidueField.mapβ P Q (Algebra.ofId R R') β―).toRingHom f = Polynomial.map (algebraMap R' Q.ResidueField) f' β§ Polynomial.map (Ideal.ResidueField.mapβ P Q (Algebra.ofId R R') β―).toRingHom g = Polynomial.map (algebraMap R' Q.ResidueField) g' - MvPolynomial.universalFactorizationMapPresentation_Ο' π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) (f : TensorProduct R (MvPolynomial (Fin m) R) (MvPolynomial (Fin k) R)) : (MvPolynomial.universalFactorizationMapPresentation R n m k hn).Ο' f = (MvPolynomial.map MvPolynomial.C) ((MvPolynomial.tensorEquivSum R (Fin m) (Fin k) R) f) - MvPolynomial.universalFactorizationMapPresentation_algebra_algebraMap π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) : algebraMap (MvPolynomial (Fin m β Fin k) (MvPolynomial (Fin n) R)) (TensorProduct R (MvPolynomial (Fin m) R) (MvPolynomial (Fin k) R)) = (MvPolynomial.aeval (Sum.elim (fun x => MvPolynomial.X x ββ[R] 1) fun x => 1 ββ[R] MvPolynomial.X x)).toRingHom - MvPolynomial.universalFactorizationMapPresentation_jacobiMatrix π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) : (MvPolynomial.universalFactorizationMapPresentation R n m k hn).jacobiMatrix = -((Matrix.reindex (finCongr β―) (finCongr β―)) ((Polynomial.map ((MvPolynomial.mapAlgHom (Algebra.ofId R (MvPolynomial (Fin n) R))).comp (MvPolynomial.rename Sum.inl)).toRingHom (Polynomial.freeMonic R m)).sylvester (Polynomial.map ((MvPolynomial.mapAlgHom (Algebra.ofId R (MvPolynomial (Fin n) R))).comp (MvPolynomial.rename Sum.inr)).toRingHom (Polynomial.freeMonic R k)) m k)).transpose - MvPolynomial.universalFactorizationMapPresentation_jacobian π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) : (MvPolynomial.universalFactorizationMapPresentation R n m k hn).jacobian = (-1) ^ n * (Polynomial.map Algebra.TensorProduct.includeLeftRingHom (Polynomial.freeMonic R m)).resultant (Polynomial.map Algebra.TensorProduct.includeRight.toRingHom (Polynomial.freeMonic R k)) - MvPolynomial.universalFactorizationMapPresentation_algebra_smul π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) (c : MvPolynomial (Fin m β Fin k) (MvPolynomial (Fin n) R)) (x : TensorProduct R (MvPolynomial (Fin m) R) (MvPolynomial (Fin k) R)) : SMul.smul c x = (MvPolynomial.aeval (Sum.elim (fun x => MvPolynomial.X x ββ[R] 1) fun x => 1 ββ[R] MvPolynomial.X x)).toRingHom c * x - MvPolynomial.universalFactorizationMapPresentation_relation π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) [CommRing R] (n m k : β) (hn : n = m + k) (i : Fin n) : (MvPolynomial.universalFactorizationMapPresentation R n m k hn).relation i = MvPolynomial.C (MvPolynomial.X i) - (MvPolynomial.map MvPolynomial.C) ((MvPolynomial.tensorEquivSum R (Fin m) (Fin k) R) ((MvPolynomial.universalFactorizationMap R n m k hn) (MvPolynomial.X i))) - MvPolynomial.universalFactorizationMap_comp_map π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
(R : Type u_1) (S : Type u_2) [CommRing R] [CommRing S] [Algebra R S] (n m k : β) (hn : n = m + k) : (MvPolynomial.universalFactorizationMap S n m k hn).comp (MvPolynomial.map (algebraMap R S)) = (Algebra.TensorProduct.lift (Algebra.TensorProduct.includeLeft.comp (MvPolynomial.mapAlgHom (Algebra.ofId R S))) ((AlgHom.restrictScalars R Algebra.TensorProduct.includeRight).comp (MvPolynomial.mapAlgHom (Algebra.ofId R S))) β―).comp (MvPolynomial.universalFactorizationMap R n m k hn).toRingHom - Polynomial.UniversalCoprimeFactorizationRing.exists_liesOver_residueFieldMap_bijective π Mathlib.RingTheory.Polynomial.UniversalFactorizationRing
{R : Type u_1} [CommRing R] {n : β} (m k : β) (hn : n = m + k) (p : Polynomial.MonicDegreeEq R n) (P : Ideal R) [P.IsPrime] (f : Polynomial.MonicDegreeEq P.ResidueField m) (g : Polynomial.MonicDegreeEq P.ResidueField k) (H : Polynomial.map (algebraMap R P.ResidueField) βp = βf * βg) (Hpq : IsCoprime βf βg) : β Q, β (x : Q.IsPrime) (x_1 : Q.LiesOver P), Function.Bijective β(Ideal.ResidueField.mapβ P Q (Algebra.ofId R (Polynomial.UniversalCoprimeFactorizationRing m k hn p)) β―) β§ f.map (Ideal.ResidueField.mapβ P Q (Algebra.ofId R (Polynomial.UniversalCoprimeFactorizationRing m k hn p)) β―).toRingHom = (Polynomial.UniversalCoprimeFactorizationRing.factorβ m k hn p).map (algebraMap (Polynomial.UniversalCoprimeFactorizationRing m k hn p) Q.ResidueField) β§ g.map (Ideal.ResidueField.mapβ P Q (Algebra.ofId R (Polynomial.UniversalCoprimeFactorizationRing m k hn p)) β―).toRingHom = (Polynomial.UniversalCoprimeFactorizationRing.factorβ m k hn p).map (algebraMap (Polynomial.UniversalCoprimeFactorizationRing m k hn p) Q.ResidueField) - Ideal.ncard_primesOver_lt_of_not_le π Mathlib.RingTheory.Ideal.Quotient.Over
{R : Type u_1} {S : Type u_2} {T : Type u_3} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] (f : S ββ[R] T) (Hf : Function.Surjective βf) (P : Ideal R) (P' : Ideal S) [P'.IsPrime] [P'.LiesOver P] (hkP' : Β¬RingHom.ker f.toRingHom β€ P') (H : (P.primesOver S).Finite) : (P.primesOver T).ncard < (P.primesOver S).ncard - Ideal.eq_of_comap_eq_comap_of_bijective_residueFieldMap π Mathlib.RingTheory.Etale.QuasiFinite
{R : Type u_1} {R' : Type u_2} {S : Type u_3} [CommRing R] [CommRing R'] [CommRing S] [Algebra R R'] [Algebra R S] {p : Ideal R} {q : Ideal R'} [p.IsPrime] [q.IsPrime] [q.LiesOver p] (H : Function.Bijective β(Ideal.ResidueField.mapβ p q (Algebra.ofId R R') β―)) (Pβ Pβ : Ideal (TensorProduct R R' S)) [Pβ.IsPrime] [Pβ.IsPrime] [Pβ.LiesOver q] [Pβ.LiesOver q] (Hβ : Ideal.comap Algebra.TensorProduct.includeRight.toRingHom Pβ = Ideal.comap Algebra.TensorProduct.includeRight.toRingHom Pβ) : Pβ = Pβ - Algebra.exists_etale_isIdempotentElem_forall_liesOver_eq π Mathlib.RingTheory.Etale.QuasiFinite
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] [Algebra.FiniteType R S] (p : Ideal R) [p.IsPrime] (q : Ideal S) [q.IsPrime] [q.LiesOver p] [Algebra.QuasiFiniteAt R q] : β R' x x_1, β (_ : Algebra.Etale R R'), β P, β (x_3 : P.IsPrime) (x_4 : P.LiesOver p), β e, β (_ : IsIdempotentElem e), β P', β (_ : P'.IsPrime) (_ : P'.LiesOver P), Ideal.comap Algebra.TensorProduct.includeRight.toRingHom P' = q β§ e β P' β§ Function.Bijective β(Ideal.ResidueField.mapβ p P (Algebra.ofId R R') β―) β§ Module.Finite R' (Localization.Away e) β§ β (P'' : Ideal (TensorProduct R R' S)), P''.IsPrime β P''.LiesOver P β e β P'' β P'' = P' - Algebra.exists_etale_isIdempotentElem_forall_liesOver_eq_aux π Mathlib.RingTheory.Etale.QuasiFinite
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] [Algebra.FiniteType R S] (p : Ideal R) [p.IsPrime] (q : Ideal S) [q.IsPrime] [q.LiesOver p] [Algebra.QuasiFiniteAt R q] : β R' x x_1, β (_ : Algebra.Etale R R'), β P, β (x_3 : P.IsPrime) (x_4 : P.LiesOver p), β e, β (_ : IsIdempotentElem e), β eβ, β (_ : IsIdempotentElem eβ) (_ : (Algebra.TensorProduct.map (AlgHom.id R' R') (integralClosure R S).val) eβ = e), β P', β (_ : P'.IsPrime) (_ : P'.LiesOver P), Ideal.comap Algebra.TensorProduct.includeRight.toRingHom P' = q β§ e β P' β§ Function.Bijective β(Ideal.ResidueField.mapβ p P (Algebra.ofId R R') β―) β§ (β (P'' : Ideal (TensorProduct R R' β₯(integralClosure R S))), P''.IsPrime β P''.LiesOver P β eβ β P'' β P'' = Ideal.comap (Algebra.TensorProduct.map (AlgHom.id R' R') (integralClosure R S).val).toRingHom P') β§ β (P'' : Ideal (TensorProduct R R' S)), P''.IsPrime β P''.LiesOver P β e β P'' β P'' = P' - Algebra.exists_etale_isIdempotentElem_forall_liesOver_eq_auxβ π Mathlib.RingTheory.Etale.QuasiFinite
{R : Type u_2} {S : Type u_3} {R' : Type u_4} {R'' : Type u_5} [CommRing R] [CommRing S] [Algebra R S] [Algebra.FiniteType R S] [CommRing R'] [Algebra R R'] [CommRing R''] [Algebra R R''] [Algebra R'' S] [Algebra.IsIntegral R R''] [IsScalarTower R R'' S] (q : Ideal S) (P : Ideal R') [P.IsPrime] (e : TensorProduct R R' S) (eβ : TensorProduct R R' R'') (heβ : IsIdempotentElem eβ) (heβe : (Algebra.TensorProduct.map (AlgHom.id R' R') (IsScalarTower.toAlgHom R R'' S)) eβ = e) (P' : Ideal (TensorProduct R R' S)) (hP'q : Ideal.comap Algebra.TensorProduct.includeRight.toRingHom P' = q) (H : β (P'' : Ideal (TensorProduct R R' R'')), P''.IsPrime β P''.LiesOver P β eβ β P'' β P'' = Ideal.comap (Algebra.TensorProduct.map (AlgHom.id R' R') (IsScalarTower.toAlgHom R R'' S)).toRingHom P') (g : R'') (hgq : (algebraMap R'' S) g β q) (hg : Function.Surjective β(Localization.awayMap (algebraMap R'' S) g)) : β f β P, Module.Finite (Localization.Away f) (Localization.Away ((Algebra.TensorProduct.map (Algebra.ofId R' (Localization.Away f)) (AlgHom.id R S)) e)) - AlgebraicGeometry.instIsOverMapOfHomSpecOf π Mathlib.AlgebraicGeometry.Group.Affine
{R S T : Type u} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] (f : S ββ[R] T) : AlgebraicGeometry.Scheme.Hom.IsOver (AlgebraicGeometry.Spec.map (CommRingCat.ofHom f.toRingHom)) (AlgebraicGeometry.Spec (CommRingCat.of R)) - AlgebraicGeometry.ΞΌ_pullback_left_fst π Mathlib.AlgebraicGeometry.Group.Affine
(R S T : Type u) [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] : CategoryTheory.CategoryStruct.comp (CategoryTheory.Over.Hom.left (CategoryTheory.Functor.LaxMonoidal.ΞΌ (CategoryTheory.Over.pullback (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (algebraMap R S)))) (CategoryTheory.Over.mk (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (algebraMap R T)))) (CategoryTheory.Over.mk (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (algebraMap R T)))))) (CategoryTheory.Limits.pullback.fst (CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.Over.mk (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (algebraMap R T)))) (CategoryTheory.Over.mk (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (algebraMap R T))))).hom (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (algebraMap R S)))) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Over.Hom.left (CategoryTheory.MonoidalCategoryStruct.tensorHom (AlgebraicGeometry.Scheme.Hom.asOver (CategoryTheory.Limits.pullbackSymmetry (AlgebraicGeometry.Spec (CommRingCat.of T) β AlgebraicGeometry.Spec (CommRingCat.of R)) (AlgebraicGeometry.Spec (CommRingCat.of S) β AlgebraicGeometry.Spec (CommRingCat.of R)) βͺβ« AlgebraicGeometry.pullbackSpecIso' R S T).hom (AlgebraicGeometry.Spec (CommRingCat.of S))) (AlgebraicGeometry.Scheme.Hom.asOver (CategoryTheory.Limits.pullbackSymmetry (AlgebraicGeometry.Spec (CommRingCat.of T) β AlgebraicGeometry.Spec (CommRingCat.of R)) (AlgebraicGeometry.Spec (CommRingCat.of S) β AlgebraicGeometry.Spec (CommRingCat.of R)) βͺβ« AlgebraicGeometry.pullbackSpecIso' R S T).hom (AlgebraicGeometry.Spec (CommRingCat.of S))))) (CategoryTheory.CategoryStruct.comp (AlgebraicGeometry.pullbackSpecIso S (TensorProduct R S T) (TensorProduct R S T)).hom (CategoryTheory.CategoryStruct.comp (AlgebraicGeometry.Spec.map (CommRingCat.ofHom (Algebra.TensorProduct.mapRingHom (algebraMap R S) Algebra.TensorProduct.includeRight.toRingHom Algebra.TensorProduct.includeRight.toRingHom β― β―))) (AlgebraicGeometry.pullbackSpecIso R T T).inv)) - Ideal.tensorCotangentHom π Mathlib.RingTheory.Ideal.CotangentBaseChange
(R : Type u_1) {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (T : Type u_3) [CommRing T] [Algebra R T] (I : Ideal S) : TensorProduct R T I.Cotangent ββ[T] (Ideal.map Algebra.TensorProduct.includeRight.toRingHom I).Cotangent - Ideal.tensorCotangentEquiv π Mathlib.RingTheory.Ideal.CotangentBaseChange
(R : Type u_1) {S : Type u_2} [CommRing R] [CommRing S] [Algebra R S] (T : Type u_3) [CommRing T] [Algebra R T] (I : Ideal S) [Module.Flat R T] : TensorProduct R T I.Cotangent ββ[T] (Ideal.map Algebra.TensorProduct.includeRight.toRingHom I).Cotangent
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
πReal.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
π"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
π_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
πReal.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
π(?a -> ?b) -> List ?a -> List ?b
πList ?a -> (?a -> ?b) -> List ?bBy main conclusion:
π|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of allβandβ) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
π|- _ < _ β tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
β’ (_ : Type _)finds all definitions which provide data whileβ’ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
π Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ β _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision ce5dd8c