Loogle!
Result
Found 304 declarations mentioning Ideal.comap. Of these, only the first 200 are shown.
- Ideal.comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (I : Ideal S) : Ideal R - Ideal.comap_isPrime π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) (K : Ideal S) [RingHomClass F R S] [H : K.IsPrime] : (Ideal.comap f K).IsPrime - Ideal.instIsTwoSidedComap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {K : Ideal S} [RingHomClass F R S] [K.IsTwoSided] : (Ideal.comap f K).IsTwoSided - Ideal.IsPrime.comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {K : Ideal S} [RingHomClass F R S] [hK : K.IsPrime] : (Ideal.comap f K).IsPrime - Ideal.comap_id π Mathlib.RingTheory.Ideal.Maps
{R : Type u} [Semiring R] (I : Ideal R) : Ideal.comap (RingHom.id R) I = I - Ideal.comap_injective_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) : Function.Injective (Ideal.comap f) - Ideal.IsMaximal.comap_bijective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Bijective βf) {K : Ideal S} : K.IsMaximal β (Ideal.comap f K).IsMaximal - Ideal.IsRadical.comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [CommSemiring R] [CommSemiring S] [FunLike F R S] [rc : RingHomClass F R S] (f : F) {K : Ideal S} (hK : K.IsRadical) : (Ideal.comap f K).IsRadical - Ideal.isMaximal_comap_iff_of_bijective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Bijective βf) {K : Ideal S} : (Ideal.comap f K).IsMaximal β K.IsMaximal - Ideal.comap_map_of_bijective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Bijective βf) {I : Ideal R} : Ideal.comap f (Ideal.map f I) = I - Ideal.map_comap_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) (I : Ideal S) : Ideal.map f (Ideal.comap f I) = I - RingHom.ker_eq_comap_bot π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] [rcf : RingHomClass F R S] (f : F) : RingHom.ker f = Ideal.comap f β₯ - Ideal.comap_top π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} [RingHomClass F R S] : Ideal.comap f β€ = β€ - Ideal.map_comap_map π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) (I : Ideal R) [RingHomClass F R S] : Ideal.map f (Ideal.comap f (Ideal.map f I)) = Ideal.map f I - Ideal.comap_isMaximal_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Ring R] [Ring S] [FunLike F R S] [RingHomClass F R S] (f : F) (hf : Function.Surjective βf) {K : Ideal S} [H : K.IsMaximal] : (Ideal.comap f K).IsMaximal - Ideal.comap_map_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) (K : Ideal S) [RingHomClass F R S] : Ideal.comap f (Ideal.map f (Ideal.comap f K)) = Ideal.comap f K - Ideal.ker_le_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u_1} {S : Type u_2} {F : Type u_3} [Semiring R] [Semiring S] [FunLike F R S] [rc : RingHomClass F R S] {K : Ideal S} (f : F) : RingHom.ker f β€ Ideal.comap f K - Ideal.le_comap_map π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} {I : Ideal R} [RingHomClass F R S] : I β€ Ideal.comap f (Ideal.map f I) - Ideal.map_comap_le π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} {K : Ideal S} [RingHomClass F R S] : Ideal.map f (Ideal.comap f K) β€ K - Ideal.comap_isMaximal_of_equiv π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {E : Type u_4} [EquivLike E R S] [RingEquivClass E R S] (e : E) {p : Ideal S} [hp : p.IsMaximal] : (Ideal.comap e p).IsMaximal - Ideal.comap_radical π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [CommSemiring R] [CommSemiring S] [FunLike F R S] [rc : RingHomClass F R S] (f : F) (K : Ideal S) : Ideal.comap f K.radical = (Ideal.comap f K).radical - Ideal.comap_ne_top π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {K : Ideal S} [RingHomClass F R S] (hK : K β β€) : Ideal.comap f K β β€ - Ideal.comap_bot_of_injective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Injective βf) : Ideal.comap f β₯ = β₯ - Ideal.comap_eq_top_iff π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} [RingHomClass F R S] {I : Ideal S} : Ideal.comap f I = β€ β I = β€ - Ideal.gc_map_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] : GaloisConnection (Ideal.map f) (Ideal.comap f) - Ideal.coe_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (I : Ideal S) : β(Ideal.comap f I) = βf β»ΒΉ' βI - Ideal.comap_bot_le_of_injective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {I : Ideal R} [RingHomClass F R S] (hf : Function.Injective βf) : Ideal.comap f β₯ β€ I - Ideal.map_comap_eq_self_of_equiv π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {E : Type u_4} [EquivLike E R S] [RingEquivClass E R S] (e : E) (I : Ideal S) : Ideal.map e (Ideal.comap e I) = I - Ideal.comap_iInf π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] {ΞΉ : Sort u_3} (K : ΞΉ β Ideal S) : Ideal.comap f (iInf K) = β¨ i, Ideal.comap f (K i) - Ideal.comap_idβ π Mathlib.RingTheory.Ideal.Maps
{R : Type u_3} {S : Type u_4} [CommSemiring R] [Semiring S] [Algebra R S] (I : Ideal S) : Ideal.comap (AlgHom.id R S) I = I - Ideal.giMapComap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) : GaloisInsertion (Ideal.map f) (Ideal.comap f) - Ideal.comap_coe π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (I : Ideal S) : Ideal.comap (βf) I = Ideal.comap f I - Ideal.mem_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} {K : Ideal S} [RingHomClass F R S] {x : R} : x β Ideal.comap f K β f x β K - Ideal.comap_le_map_of_inverse π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {G : Type u_2} [FunLike G S R] [RingHomClass F R S] (g : G) (I : Ideal S) (h : Function.LeftInverse βg βf) : Ideal.comap f I β€ Ideal.map g I - Ideal.map_le_comap_of_inverse π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {G : Type u_2} [FunLike G S R] [RingHomClass G S R] (g : G) (I : Ideal R) (h : Function.LeftInverse βg βf) : Ideal.map f I β€ Ideal.comap g I - Ideal.comap_inf π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) (K L : Ideal S) [RingHomClass F R S] : Ideal.comap f (K β L) = Ideal.comap f K β Ideal.comap f L - Ideal.map_iInf_comap_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] {ΞΉ : Sort u_3} (hf : Function.Surjective βf) (K : ΞΉ β Ideal S) : Ideal.map f (β¨ i, Ideal.comap f (K i)) = iInf K - Ideal.le_comap_of_map_le π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} {I : Ideal R} {K : Ideal S} [RingHomClass F R S] : Ideal.map f I β€ K β I β€ Ideal.comap f K - Ideal.map_le_of_le_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} {I : Ideal R} {K : Ideal S} [RingHomClass F R S] : I β€ Ideal.comap f K β Ideal.map f I β€ K - Ideal.comap_mono π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} {K L : Ideal S} [RingHomClass F R S] (h : K β€ L) : Ideal.comap f K β€ Ideal.comap f L - Ideal.map_le_iff_le_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] {f : F} {I : Ideal R} {K : Ideal S} [RingHomClass F R S] : Ideal.map f I β€ K β I β€ Ideal.comap f K - Ideal.map_inf_comap_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) (I J : Ideal S) : Ideal.map f (Ideal.comap f I β Ideal.comap f J) = I β J - Ideal.le_map_of_comap_le_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {I : Ideal R} {K : Ideal S} [RingHomClass F R S] (hf : Function.Surjective βf) : Ideal.comap f K β€ I β K β€ Ideal.map f I - Ideal.comap_le_iff_le_map π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Bijective βf) {I : Ideal R} {K : Ideal S} : Ideal.comap f K β€ I β K β€ Ideal.map f I - Ideal.comap_le_comap_iff_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) (I J : Ideal S) : Ideal.comap f I β€ Ideal.comap f J β I β€ J - Ideal.map_le_comap_of_inv_on π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {G : Type u_2} [FunLike G S R] [RingHomClass G S R] (g : G) (I : Ideal R) (hf : Set.LeftInvOn βg βf βI) : Ideal.map f I β€ Ideal.comap g I - Ideal.IsMaximal.comap_piEvalRingHom π Mathlib.RingTheory.Ideal.Maps
{ΞΉ : Type u_4} {R : ΞΉ β Type u_5} [(i : ΞΉ) β Semiring (R i)] {i : ΞΉ} {I : Ideal (R i)} (h : I.IsMaximal) : (Ideal.comap (Pi.evalRingHom R i) I).IsMaximal - Ideal.coheight_comap_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Ring R] [Ring S] [FunLike F R S] [RingHomClass F R S] (f : F) (hf : Function.Surjective βf) (I : Ideal S) : Order.coheight (Ideal.comap f I) = Order.coheight I - Ideal.eq_bot_of_comap_eq_bot' π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {f : R β+* S} (hf : Function.Surjective βf) {I : Ideal S} (h : Ideal.comap f I = β₯) : I = β₯ - Ideal.comap_le_map_of_inv_on π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {G : Type u_2} [FunLike G S R] [RingHomClass F R S] (g : G) (I : Ideal S) (hf : Set.LeftInvOn (βg) (βf) (βf β»ΒΉ' βI)) : Ideal.comap f I β€ Ideal.map g I - Ideal.map_primeCompl_comap_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) (p : Ideal S) [p.IsPrime] : Submonoid.map f (Ideal.comap f p).primeCompl = p.primeCompl - Ideal.map_iSup_comap_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] {ΞΉ : Sort u_3} (hf : Function.Surjective βf) (K : ΞΉ β Ideal S) : Ideal.map f (β¨ i, Ideal.comap f (K i)) = iSup K - Ideal.comap_sInf π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (s : Set (Ideal S)) : Ideal.comap f (sInf s) = β¨ I β s, Ideal.comap f I - Ideal.comap_finsetInf π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] {ΞΉ : Type u_4} (s : Finset ΞΉ) (K : ΞΉ β Ideal S) : Ideal.comap f (s.inf K) = s.inf fun i => Ideal.comap f (K i) - Ideal.map_sup_comap_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) (I J : Ideal S) : Ideal.map f (Ideal.comap f I β Ideal.comap f J) = I β J - Ideal.comap_map_of_surjective' π Mathlib.RingTheory.Ideal.Maps
{R : Type u_1} {S : Type u_2} {F : Type u_3} [Ring R] [Ring S] [FunLike F R S] [rc : RingHomClass F R S] (f : F) (hf : Function.Surjective βf) (I : Ideal R) : Ideal.comap f (Ideal.map f I) = I β RingHom.ker f - Ideal.le_comap_sup π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) {K L : Ideal S} [RingHomClass F R S] : Ideal.comap f K β Ideal.comap f L β€ Ideal.comap f (K β L) - RingHom.comap_ker π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {T : Type w} [Semiring R] [Semiring S] [Semiring T] (f : S β+* R) (g : T β+* S) : Ideal.comap g (RingHom.ker f) = RingHom.ker (f.comp g) - Ideal.comap_comap π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {T : Type u_3} [Semiring T] {I : Ideal T} (f : R β+* S) (g : S β+* T) : Ideal.comap f (Ideal.comap g I) = Ideal.comap (g.comp f) I - Ideal.comap_sInf' π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (s : Set (Ideal S)) : Ideal.comap f (sInf s) = β¨ I β Ideal.comap f '' s, I - Ideal.comap_map_of_surjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Ring R] [Ring S] [FunLike F R S] [RingHomClass F R S] (f : F) (hf : Function.Surjective βf) (I : Ideal R) : Ideal.comap f (Ideal.map f I) = I β Ideal.comap f β₯ - Ideal.exists_ideal_comap_le_prime π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {F : Type u_1} [Semiring R] {S : Type u_2} [CommSemiring S] [FunLike F R S] [RingHomClass F R S] {f : F} (P : Ideal R) [P.IsPrime] (I : Ideal S) (le : Ideal.comap f I β€ P) : β Q β₯ I, Q.IsPrime β§ Ideal.comap f Q β€ P - Module.comap_annihilator π Mathlib.RingTheory.Ideal.Maps
{R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] {Rβ : Type u_4} [CommSemiring Rβ] [Module Rβ M] [Algebra Rβ R] [IsScalarTower Rβ R M] : Ideal.comap (algebraMap Rβ R) (Module.annihilator R M) = Module.annihilator Rβ M - Ideal.le_comap_pow π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [CommSemiring R] [CommSemiring S] [FunLike F R S] [rc : RingHomClass F R S] (f : F) {K : Ideal S} (n : β) : Ideal.comap f K ^ n β€ Ideal.comap f (K ^ n) - Ideal.comap_map_eq_self_of_isMaximal π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R β+* S) {p : Ideal R} [hP' : p.IsMaximal] (hP : Ideal.map f p β β€) : Ideal.comap f (Ideal.map f p) = p - Ideal.comap_map_eq_self_iff_of_isPrime π Mathlib.RingTheory.Ideal.Maps
{R : Type u} [CommSemiring R] {S : Type u_2} [CommSemiring S] {f : R β+* S} (p : Ideal R) [p.IsPrime] : Ideal.comap f (Ideal.map f p) = p β β q, q.IsPrime β§ Ideal.comap f q = p - Ideal.orderEmbeddingOfSurjective_apply π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Semiring R] [Semiring S] [FunLike F R S] (f : F) [RingHomClass F R S] (hf : Function.Surjective βf) (I : Ideal S) : (Ideal.orderEmbeddingOfSurjective f hf) I = Ideal.comap f I - Ideal.le_comap_mul π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [CommSemiring R] [CommSemiring S] [FunLike F R S] [rc : RingHomClass F R S] (f : F) {K L : Ideal S} : Ideal.comap f K * Ideal.comap f L β€ Ideal.comap f (K * L) - AlgHom.comap_ker π Mathlib.RingTheory.Ideal.Maps
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] {C : Type u_4} [Semiring C] [Algebra R C] (f : B ββ[R] C) (g : A ββ[R] B) : Ideal.comap g (RingHom.ker f) = RingHom.ker (f.comp g) - Ideal.comap_comapβ π Mathlib.RingTheory.Ideal.Maps
{R : Type u_3} {A : Type u_4} {B : Type u_5} {C : Type u_6} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] {I : Ideal C} (f : A ββ[R] B) (g : B ββ[R] C) : Ideal.comap f (Ideal.comap g I) = Ideal.comap (g.comp f) I - Ideal.relIsoOfSurjective π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} {F : Type u_1} [Ring R] [Ring S] [FunLike F R S] [RingHomClass F R S] (f : F) (hf : Function.Surjective βf) : Ideal S βo { p // Ideal.comap f β₯ β€ p } - RingEquiv.idealComapOrderIso_apply π Mathlib.RingTheory.Ideal.Maps
{R : Type u_1} {S : Type u_2} [Semiring R] [Semiring S] (e : R β+* S) (I : Ideal S) : e.idealComapOrderIso I = Ideal.comap e I - Ideal.comap_symm π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {I : Ideal R} (f : R β+* S) : Ideal.comap f.symm I = Ideal.map f I - Ideal.map_symm π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {I : Ideal S} (f : R β+* S) : Ideal.map f.symm I = Ideal.comap f I - Ideal.disjoint_map_primeCompl_iff_comap_le π Mathlib.RingTheory.Ideal.Maps
{R : Type u} [CommSemiring R] {S : Type u_2} [Semiring S] {f : R β+* S} {p : Ideal R} {I : Ideal S} [p.IsPrime] : Disjoint βI β(Submonoid.map f p.primeCompl) β Ideal.comap f I β€ p - Ideal.eq_map_of_comap_eq_ker_sup π Mathlib.RingTheory.Ideal.Maps
{A : Type u_1} {B : Type u_2} [CommRing A] [CommRing B] (f : A β+* B) (surj : Function.Surjective βf) {I : Ideal B} {J : Ideal A} (eq : Ideal.comap f I = RingHom.ker f β J) : I = Ideal.map f J - Ideal.exists_of_comap_eq_ker_sup π Mathlib.RingTheory.Ideal.Maps
{A : Type u_1} {B : Type u_2} [Ring A] [Ring B] (f : A β+* B) (surj : Function.Surjective βf) {I : Ideal B} {J : Ideal A} (eq : Ideal.comap f I = RingHom.ker f β J) {x : B} (hx : x β I) : β y β J, f y = x - Ideal.map_comap_of_equiv π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {I : Ideal R} (f : R β+* S) : Ideal.map (βf) I = Ideal.comap f.symm I - Ideal.comap_of_equiv π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] {I : Ideal R} (f : R β+* S) : Ideal.comap (βf) (Ideal.comap (βf.symm) I) = I - RingEquiv.map_primeCompl_comap_eq π Mathlib.RingTheory.Ideal.Maps
{R : Type u} {S : Type v} [Semiring R] [Semiring S] (e : R β+* S) (p : Ideal S) [p.IsPrime] : Submonoid.map e (Ideal.comap e p).primeCompl = p.primeCompl - Ideal.IsPrincipal.of_comap π Mathlib.RingTheory.PrincipalIdealDomain
{R : Type u} {S : Type u_1} {F : Type u_3} [Semiring R] [Semiring S] [FunLike F R S] [RingHomClass F R S] (f : F) (hf : Function.Surjective βf) (I : Ideal S) [hI : Submodule.IsPrincipal (Ideal.comap f I)] : Submodule.IsPrincipal I - Ideal.polynomial_mem_ideal_of_coeff_mem_ideal π Mathlib.RingTheory.Polynomial.Basic
{R : Type u} [CommSemiring R] (I : Ideal (Polynomial R)) (p : Polynomial R) (hp : β (n : β), p.coeff n β Ideal.comap Polynomial.C I) : p β I - MvPolynomial.mem_ideal_of_coeff_mem_ideal π Mathlib.RingTheory.Polynomial.Basic
{R : Type u} {Ο : Type v} [CommRing R] (I : Ideal (MvPolynomial Ο R)) (p : MvPolynomial Ο R) (hcoe : β (m : Ο ββ β), MvPolynomial.coeff m p β Ideal.comap MvPolynomial.C I) : p β I - Ideal.map_C_comap_of_comap_eq_leadingCoeff π Mathlib.RingTheory.Polynomial.Basic
{R : Type u} [CommRing R] (I : Ideal (Polynomial R)) (hI : Ideal.comap Polynomial.C I = I.leadingCoeff) : Ideal.map Polynomial.C (Ideal.comap Polynomial.C I) = I - Ideal.Quotient.algebraQuotientOfLEComap π Mathlib.RingTheory.Ideal.Quotient.Operations
{A : Type u_3} [Ring A] {R : Type u_5} [CommRing R] [Algebra R A] {p : Ideal R} {P : Ideal A} [P.IsTwoSided] (h : p β€ Ideal.comap (algebraMap R A) P) : Algebra (R β§Έ p) (A β§Έ P) - Ideal.quotientAlgebra π Mathlib.RingTheory.Ideal.Quotient.Operations
{A : Type u_3} [Ring A] {R : Type u_5} [CommRing R] {I : Ideal A} [I.IsTwoSided] [Algebra R A] : Algebra (R β§Έ Ideal.comap (algebraMap R A) I) (A β§Έ I) - Ideal.quotientMap π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {S : Type v} [Ring S] {I : Ideal R} (J : Ideal S) [I.IsTwoSided] [J.IsTwoSided] (f : R β+* S) (hIJ : I β€ Ideal.comap f J) : R β§Έ I β+* S β§Έ J - Ideal.instAlgebraQuotientComapRingHomAlgebraMap π Mathlib.RingTheory.Ideal.Quotient.Operations
(R : Type u_5) {A : Type u_6} [CommRing R] [CommRing A] (I : Ideal A) [Algebra R A] : Algebra (R β§Έ Ideal.comap (algebraMap R A) I) (A β§Έ I) - Ideal.quotientMapβ π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] [Ring B] [Algebra Rβ B] {I : Ideal A} (J : Ideal B) [I.IsTwoSided] [J.IsTwoSided] (f : A ββ[Rβ] B) (hIJ : I β€ Ideal.comap f J) : A β§Έ I ββ[Rβ] B β§Έ J - Ideal.quotientMap_comp_mk π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {S : Type v} [Ring S] {J : Ideal R} {I : Ideal S} [I.IsTwoSided] [J.IsTwoSided] {f : R β+* S} (H : J β€ Ideal.comap f I) : (Ideal.quotientMap I f H).comp (Ideal.Quotient.mk J) = (Ideal.Quotient.mk I).comp f - Ideal.comap_map_mk π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {I J : Ideal R} [I.IsTwoSided] (h : I β€ J) : Ideal.comap (Ideal.Quotient.mk I) (Ideal.map (Ideal.Quotient.mk I) J) = J - Ideal.comap_map_quotientMk π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] (I J : Ideal R) [I.IsTwoSided] : Ideal.comap (Ideal.Quotient.mk I) (Ideal.map (Ideal.Quotient.mk I) J) = I β J - Ideal.quotient_map_comp_mkβ π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] [Ring B] [Algebra Rβ B] {I : Ideal A} (J : Ideal B) [I.IsTwoSided] [J.IsTwoSided] (f : A ββ[Rβ] B) (H : I β€ Ideal.comap f J) : (Ideal.quotientMapβ J f H).comp (Ideal.Quotient.mkβ Rβ I) = (Ideal.Quotient.mkβ Rβ J).comp f - Ideal.quotientMap_surjective π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {S : Type v} [Ring S] {J : Ideal R} {I : Ideal S} [I.IsTwoSided] [J.IsTwoSided] {f : R β+* S} {H : J β€ Ideal.comap f I} (hf : Function.Surjective βf) : Function.Surjective β(Ideal.quotientMap I f H) - Ideal.quotientMap_injective' π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {S : Type v} [Ring S] {J : Ideal R} {I : Ideal S} [I.IsTwoSided] [J.IsTwoSided] {f : R β+* S} {H : J β€ Ideal.comap f I} (h : Ideal.comap f I β€ J) : Function.Injective β(Ideal.quotientMap I f H) - Ideal.quotientMap_mk π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {S : Type v} [Ring S] {J : Ideal R} {I : Ideal S} [I.IsTwoSided] [J.IsTwoSided] {f : R β+* S} {H : J β€ Ideal.comap f I} {x : R} : (Ideal.quotientMap I f H) ((Ideal.Quotient.mk J) x) = (Ideal.Quotient.mk I) (f x) - Ideal.quotient_map_mkβ π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} {B : Type u_4} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] [Ring B] [Algebra Rβ B] {I : Ideal A} (J : Ideal B) [I.IsTwoSided] [J.IsTwoSided] (f : A ββ[Rβ] B) (H : I β€ Ideal.comap f J) {x : A} : (Ideal.quotientMapβ J f H) ((Ideal.Quotient.mk I) x) = (Ideal.Quotient.mkβ Rβ J) (f x) - Ideal.quotientMap_algebraMap π Mathlib.RingTheory.Ideal.Quotient.Operations
{Rβ : Type u_1} {A : Type u_3} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] {S : Type v} [Ring S] {J : Ideal A} {I : Ideal S} [I.IsTwoSided] [J.IsTwoSided] {f : A β+* S} {H : J β€ Ideal.comap f I} {x : Rβ} : (Ideal.quotientMap I f H) ((algebraMap Rβ (A β§Έ J)) x) = (Ideal.Quotient.mk I) (f ((algebraMap Rβ A) x)) - Ideal.quotientMap_injective π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {S : Type v} [Ring S] {I : Ideal S} {f : R β+* S} [I.IsTwoSided] : Function.Injective β(Ideal.quotientMap I f β―) - Ideal.algebraMap_quotient_injective π Mathlib.RingTheory.Ideal.Quotient.Operations
{A : Type u_3} [Ring A] {R : Type u_5} [CommRing R] {I : Ideal A} [I.IsTwoSided] [Algebra R A] : Function.Injective β(algebraMap (R β§Έ Ideal.comap (algebraMap R A) I) (A β§Έ I)) - Ideal.comp_quotientMap_eq_of_comp_eq π Mathlib.RingTheory.Ideal.Quotient.Operations
{R : Type u} [Ring R] {S : Type v} [Ring S] {R' : Type u_5} {S' : Type u_6} [Ring R'] [Ring S'] {f : R β+* S} {f' : R' β+* S'} {g : R β+* R'} {g' : S β+* S'} (hfg : f'.comp g = g'.comp f) (I : Ideal S') [I.IsTwoSided] : have leq := β―; (Ideal.quotientMap I g' β―).comp (Ideal.quotientMap (Ideal.comap g' I) f β―) = (Ideal.quotientMap I f' β―).comp (Ideal.quotientMap (Ideal.comap f' I) g leq) - Ring.le_comap_jacobson π Mathlib.RingTheory.Jacobson.Radical
{R : Type u_1} {Rβ : Type u_2} [Ring R] [Ring Rβ] (f : R β+* Rβ) [RingHomSurjective f] : Ring.jacobson R β€ Ideal.comap f (Ring.jacobson Rβ) - Ideal.comap_jacobson_of_surjective π Mathlib.RingTheory.Jacobson.Ideal
{R : Type u} {S : Type v} [Ring R] [Ring S] {f : R β+* S} (hf : Function.Surjective βf) {K : Ideal S} : Ideal.comap f K.jacobson = (Ideal.comap f K).jacobson - Ideal.comap_jacobson π Mathlib.RingTheory.Jacobson.Ideal
{R : Type u} {S : Type v} [Ring R] [Ring S] {f : R β+* S} {K : Ideal S} : Ideal.comap f K.jacobson = sInf (Ideal.comap f '' {J | K β€ J β§ J.IsMaximal}) - IsLocalRing.maximalIdeal_comap π Mathlib.RingTheory.LocalRing.RingHom.Basic
{R : Type u_1} {S : Type u_2} [CommSemiring R] [IsLocalRing R] [CommSemiring S] [IsLocalRing S] (f : R β+* S) [IsLocalHom f] : Ideal.comap f (IsLocalRing.maximalIdeal S) = IsLocalRing.maximalIdeal R - IsLocalRing.local_hom_TFAE π Mathlib.RingTheory.LocalRing.RingHom.Basic
{R : Type u_1} {S : Type u_2} [CommSemiring R] [IsLocalRing R] [CommSemiring S] [IsLocalRing S] (f : R β+* S) : [IsLocalHom f, βf '' β(IsLocalRing.maximalIdeal R) β β(IsLocalRing.maximalIdeal S), Ideal.map f (IsLocalRing.maximalIdeal R) β€ IsLocalRing.maximalIdeal S, IsLocalRing.maximalIdeal R β€ Ideal.comap f (IsLocalRing.maximalIdeal S), Ideal.comap f (IsLocalRing.maximalIdeal S) = IsLocalRing.maximalIdeal R].TFAE - Ideal.pointwise_smul_eq_comap π Mathlib.RingTheory.Ideal.Pointwise
{M : Type u_1} {R : Type u_3} [Group M] [Semiring R] [MulSemiringAction M R] {a : M} (S : Ideal R) : a β’ S = Ideal.comap (RingEquiv.symm ((MulSemiringAction.toRingAut M R) a)) S - Ideal.under_def π Mathlib.RingTheory.Ideal.Over
(A : Type u_2) [CommSemiring A] {B : Type u_3} [Semiring B] [Algebra A B] (P : Ideal B) : Ideal.under A P = Ideal.comap (algebraMap A B) P - Ideal.comap_liesOver π Mathlib.RingTheory.Ideal.Over
{A : Type u_2} [CommSemiring A] {B : Type u_3} {C : Type u_4} [Semiring B] [Semiring C] [Algebra A B] [Algebra A C] (Q : Ideal C) (p : Ideal A) [Q.LiesOver p] {F : Type u_6} [FunLike F B C] [AlgHomClass F A B C] (f : F) : (Ideal.comap f Q).LiesOver p - Ideal.LiesOver.of_eq_comap π Mathlib.RingTheory.Ideal.Over
{A : Type u_2} [CommSemiring A] {B : Type u_3} {C : Type u_4} [Semiring B] [Semiring C] [Algebra A B] [Algebra A C] {P : Ideal B} {Q : Ideal C} (p : Ideal A) [Q.LiesOver p] {F : Type u_6} [FunLike F B C] [AlgHomClass F A B C] (f : F) (h : P = Ideal.comap f Q) : P.LiesOver p - Ideal.Quotient.algEquivOfEqComap π Mathlib.RingTheory.Ideal.Over
{A : Type u_3} {B : Type u_4} {C : Type u_5} [CommRing A] [CommRing B] [CommRing C] [Algebra A B] [Algebra A C] {P : Ideal B} {Q : Ideal C} (p : Ideal A) [Q.LiesOver p] [P.LiesOver p] {E : Type u_7} [EquivLike E B C] [AlgEquivClass E A B C] (Ο : E) (h : P = Ideal.comap Ο Q) : (B β§Έ P) ββ[A β§Έ p] C β§Έ Q - Ideal.comap_eq_of_scalar_tower_quotient π Mathlib.RingTheory.Ideal.Over
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {p : Ideal R} {P : Ideal S} [Algebra R S] [Algebra (R β§Έ p) (S β§Έ P)] [IsScalarTower R (R β§Έ p) (S β§Έ P)] (h : Function.Injective β(algebraMap (R β§Έ p) (S β§Έ P))) : Ideal.comap (algebraMap R S) P = p - Ideal.Quotient.algEquivOfEqComap_apply π Mathlib.RingTheory.Ideal.Over
{A : Type u_3} {B : Type u_4} {C : Type u_5} [CommRing A] [CommRing B] [CommRing C] [Algebra A B] [Algebra A C] {P : Ideal B} {Q : Ideal C} (p : Ideal A) [Q.LiesOver p] [P.LiesOver p] {E : Type u_7} [EquivLike E B C] [AlgEquivClass E A B C] (Ο : E) (h : P = Ideal.comap Ο Q) (x : B) : (Ideal.Quotient.algEquivOfEqComap p Ο h) ((Ideal.Quotient.mk P) x) = (Ideal.Quotient.mk Q) (Ο x) - Ideal.IsPrimary.comap π Mathlib.RingTheory.Ideal.IsPrimary
{R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] {I : Ideal S} (hI : I.IsPrimary) (Ο : R β+* S) : (Ideal.comap Ο I).IsPrimary - Localization.localRingHom π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) : Localization.AtPrime I β+* Localization.AtPrime J - Localization.localRingHom_id π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] (I : Ideal R) [hI : I.IsPrime] : Localization.localRingHom I I (RingHom.id R) β― = RingHom.id (Localization.AtPrime I) - Localization.localAlgHom π 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) : Localization.AtPrime I ββ[R] Localization.AtPrime J - Localization.isLocalHom_localRingHom π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [hJ : J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) : IsLocalHom (Localization.localRingHom I J f hIJ) - Localization.le_comap_primeCompl_iff π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] {I : Ideal R} [hI : I.IsPrime] {J : Ideal P} [J.IsPrime] {f : R β+* P} : I.primeCompl β€ Submonoid.comap f J.primeCompl β Ideal.comap f J β€ I - Localization.localAlgEquiv π 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) : Localization.AtPrime I ββ[R] Localization.AtPrime J - Localization.localAlgHom' π 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) : Localization.AtPrime J ββ[Localization.AtPrime I] Localization.AtPrime K - Localization.localRingHom_comp π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] {S : Type u_4} [CommSemiring S] (J : Ideal S) [hJ : J.IsPrime] (K : Ideal P) [hK : K.IsPrime] (f : R β+* S) (hIJ : I = Ideal.comap f J) (g : S β+* P) (hJK : J = Ideal.comap g K) : Localization.localRingHom I K (g.comp f) β― = (Localization.localRingHom J K g hJK).comp (Localization.localRingHom I J f hIJ) - Localization.localRingEquiv π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) : Localization.AtPrime I β+* Localization.AtPrime J - Localization.localAlgEquiv' π 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) : Localization.AtPrime J ββ[Localization.AtPrime I] Localization.AtPrime K - Localization.localRingHom_mk π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) (x : R) (y : β₯I.primeCompl) : (Localization.localRingHom I J f hIJ) (Localization.mk x y) = Localization.mk (f x) β¨f βy, β―β© - 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.localRingHom_to_map π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) (x : R) : (Localization.localRingHom I J f hIJ) ((algebraMap R (Localization.AtPrime I)) x) = (algebraMap P (Localization.AtPrime J)) (f x) - Localization.localRingHom_unique π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) {j : Localization.AtPrime I β+* Localization.AtPrime J} (hj : β (x : R), j ((algebraMap R (Localization.AtPrime I)) x) = (algebraMap P (Localization.AtPrime J)) (f x)) : Localization.localRingHom I J f hIJ = j - Localization.localAlgEquiv_symm_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 J) : (Localization.localAlgEquiv I J f hIJ).symm aβ = (Localization.localRingEquiv I J f.toRingEquiv hIJ).invFun aβ - 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] (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.localAlgEquiv' I J K f h) aβ = (Localization.localRingHom J K (βf) h) aβ - 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.AtPrime.mapPiEvalRingHom π Mathlib.RingTheory.Localization.AtPrime.Basic
{ΞΉ : Type u_4} {R : ΞΉ β Type u_5} [(i : ΞΉ) β CommSemiring (R i)] {i : ΞΉ} (I : Ideal (R i)) [I.IsPrime] : Localization.AtPrime (Ideal.comap (Pi.evalRingHom R i) I) β+* Localization.AtPrime I - Localization.localRingHom_mk' π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) (x : R) (y : β₯I.primeCompl) : (Localization.localRingHom I J f hIJ) (IsLocalization.mk' (Localization.AtPrime I) x y) = IsLocalization.mk' (Localization.AtPrime J) (f x) β¨f βy, β―β© - 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β - Localization.localRingEquiv_apply π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) (aβ : Localization.AtPrime I) : (Localization.localRingEquiv I J f hIJ) aβ = (ββ(Localization.localRingHom I J (βf) hIJ)).toFun aβ - Localization.localRingEquiv_symm_apply π Mathlib.RingTheory.Localization.AtPrime.Basic
{R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R β+* P) (hIJ : I = Ideal.comap f J) (a : Localization.AtPrime J) : (Localization.localRingEquiv I J f hIJ).symm a = (Localization.localRingHom J I βf.symm β―) a - Localization.localAlgEquiv'_symm_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 K) : (Localization.localAlgEquiv' I J K f h).symm aβ = (Localization.localRingHom K J β{ toEquiv := βf.symm, map_mul' := β―, map_add' := β― } β―) aβ - Localization.AtPrime.mapPiEvalRingHom_comp_algebraMap π Mathlib.RingTheory.Localization.AtPrime.Basic
{ΞΉ : Type u_4} {R : ΞΉ β Type u_5} [(i : ΞΉ) β CommSemiring (R i)] {i : ΞΉ} (I : Ideal (R i)) [I.IsPrime] : (Localization.AtPrime.mapPiEvalRingHom I).comp (algebraMap ((i : ΞΉ) β R i) (Localization.AtPrime (Ideal.comap (Pi.evalRingHom R i) I))) = (algebraMap (R i) (Localization.AtPrime I)).comp (Pi.evalRingHom R i) - Localization.AtPrime.mapPiEvalRingHom_bijective π Mathlib.RingTheory.Localization.AtPrime.Basic
{ΞΉ : Type u_4} {R : ΞΉ β Type u_5} [(i : ΞΉ) β CommSemiring (R i)] {i : ΞΉ} (I : Ideal (R i)) [I.IsPrime] : Function.Bijective β(Localization.AtPrime.mapPiEvalRingHom I) - Localization.AtPrime.mapPiEvalRingHom_algebraMap_apply π Mathlib.RingTheory.Localization.AtPrime.Basic
{ΞΉ : Type u_4} {R : ΞΉ β Type u_5} [(i : ΞΉ) β CommSemiring (R i)] {i : ΞΉ} (I : Ideal (R i)) [I.IsPrime] {r : (i : ΞΉ) β R i} : (Localization.AtPrime.mapPiEvalRingHom I) ((algebraMap ((i : ΞΉ) β R i) (Localization.AtPrime (Ideal.comap (Pi.evalRingHom R i) I))) r) = (algebraMap (R i) (Localization.AtPrime I)) (r i) - IsLocalization.isLocalization_isLocalization_atPrime_isLocalization π Mathlib.RingTheory.Localization.LocalizationLocalization
{R : Type u_1} [CommSemiring R] (M : Submonoid R) {S : Type u_2} [CommSemiring S] [Algebra R S] (T : Type u_3) [CommSemiring T] [Algebra R T] [Algebra S T] [IsScalarTower R S T] [IsLocalization M S] (p : Ideal S) [Hp : p.IsPrime] [IsLocalization.AtPrime T p] : IsLocalization.AtPrime T (Ideal.comap (algebraMap R S) p) - IsLocalization.isLocalization_atPrime_localization_atPrime π Mathlib.RingTheory.Localization.LocalizationLocalization
{R : Type u_1} [CommSemiring R] (M : Submonoid R) (p : Ideal (Localization M)) [p.IsPrime] : IsLocalization.AtPrime (Localization.AtPrime p) (Ideal.comap (algebraMap R (Localization M)) p) - IsLocalization.localizationLocalizationAtPrimeIsoLocalization π Mathlib.RingTheory.Localization.LocalizationLocalization
{R : Type u_1} [CommSemiring R] (M : Submonoid R) (p : Ideal (Localization M)) [p.IsPrime] : Localization.AtPrime (Ideal.comap (algebraMap R (Localization M)) p) ββ[R] Localization.AtPrime p - RingHom.HoldsForLocalization.localRingHom π Mathlib.RingTheory.LocalProperties.Basic
{P : {R S : Type u} β [inst : CommRing R] β [inst_1 : CommRing S] β (R β+* S) β Prop} (hPc : RingHom.StableUnderComposition fun {R S} [CommRing R] [CommRing S] => P) (hPp : RingHom.LocalizationPreserves fun {R S} [CommRing R] [CommRing S] => P) (hPl : RingHom.HoldsForLocalization fun {R S} [CommRing R] [CommRing S] => P) {R S : Type u} [CommRing R] [CommRing S] {p : Ideal R} [p.IsPrime] {q : Ideal S} [q.IsPrime] {f : R β+* S} (h : p = Ideal.comap f q) (hf : P f) : P (Localization.localRingHom p q f h) - Algebra.IsIntegral.quotient π Mathlib.RingTheory.IntegralClosure.IsIntegralClosure.Basic
{R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {I : Ideal A} [Algebra.IsIntegral R A] : Algebra.IsIntegral (R β§Έ Ideal.comap (algebraMap R A) I) (A β§Έ I) - RingHom.IsIntegral.quotient π Mathlib.RingTheory.IntegralClosure.IsIntegralClosure.Basic
{R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (f : R β+* S) {I : Ideal S} (hf : f.IsIntegral) : (Ideal.quotientMap I f β―).IsIntegral - isIntegral_quotientMap_iff π Mathlib.RingTheory.IntegralClosure.IsIntegralClosure.Basic
{R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (f : R β+* S) {I : Ideal S} : (Ideal.quotientMap I f β―).IsIntegral β ((Ideal.Quotient.mk I).comp f).IsIntegral - Ideal.isMaximal_comap_of_isIntegral_of_isMaximal' π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_3} {S : Type u_4} [CommRing R] [CommRing S] (f : R β+* S) (hf : f.IsIntegral) (I : Ideal S) [I.IsMaximal] : (Ideal.comap f I).IsMaximal - Ideal.isMaximal_comap_of_isIntegral_of_isMaximal π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] [Algebra R S] [Algebra.IsIntegral R S] (I : Ideal S) [hI : I.IsMaximal] : (Ideal.comap (algebraMap R S) I).IsMaximal - Ideal.isMaximal_of_isIntegral_of_isMaximal_comap' π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] (f : R β+* S) (hf : f.IsIntegral) (I : Ideal S) [I.IsPrime] (hI : (Ideal.comap f I).IsMaximal) : I.IsMaximal - Ideal.isMaximal_of_isIntegral_of_isMaximal_comap π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] [Algebra R S] [Algebra.IsIntegral R S] (I : Ideal S) [I.IsPrime] (hI : (Ideal.comap (algebraMap R S) I).IsMaximal) : I.IsMaximal - Ideal.IntegralClosure.isMaximal_of_isMaximal_comap π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] (I : Ideal A) [I.IsPrime] (hI : (Ideal.comap (algebraMap R A) I).IsMaximal) : I.IsMaximal - Ideal.IsIntegral.isMaximal_of_isMaximal_comap π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] (I : Ideal A) [I.IsPrime] (hI : (Ideal.comap (algebraMap R A) I).IsMaximal) : I.IsMaximal - Ideal.IsIntegralClosure.isMaximal_of_isMaximal_comap π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] (I : Ideal A) [I.IsPrime] (hI : (Ideal.comap (algebraMap R A) I).IsMaximal) : I.IsMaximal - Ideal.eq_bot_of_comap_eq_bot π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {I : Ideal S} [Algebra R S] [Nontrivial R] [IsDomain S] [Algebra.IsIntegral R S] (hI : Ideal.comap (algebraMap R S) I = β₯) : I = β₯ - Ideal.IntegralClosure.comap_ne_bot π Mathlib.RingTheory.Ideal.GoingUp
(R : Type u_1) [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] [IsDomain A] [Nontrivial R] {I : Ideal A} (I_ne_bot : I β β₯) : Ideal.comap (algebraMap R A) I β β₯ - Ideal.IntegralClosure.eq_bot_of_comap_eq_bot π Mathlib.RingTheory.Ideal.GoingUp
(R : Type u_1) [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] [IsDomain A] [Nontrivial R] {I : Ideal A} : Ideal.comap (algebraMap R A) I = β₯ β I = β₯ - Ideal.IsIntegral.comap_ne_bot π Mathlib.RingTheory.Ideal.GoingUp
(R : Type u_1) [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] [IsDomain A] [Nontrivial R] {I : Ideal A} (I_ne_bot : I β β₯) : Ideal.comap (algebraMap R A) I β β₯ - Ideal.IsIntegral.eq_bot_of_comap_eq_bot π Mathlib.RingTheory.Ideal.GoingUp
(R : Type u_1) [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] [IsDomain A] [Nontrivial R] {I : Ideal A} : Ideal.comap (algebraMap R A) I = β₯ β I = β₯ - Ideal.IsIntegralClosure.comap_ne_bot π Mathlib.RingTheory.Ideal.GoingUp
(R : Type u_1) [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] [IsDomain A] [Nontrivial R] {I : Ideal A} (I_ne_bot : I β β₯) : Ideal.comap (algebraMap R A) I β β₯ - Ideal.IsIntegralClosure.eq_bot_of_comap_eq_bot π Mathlib.RingTheory.Ideal.GoingUp
(R : Type u_1) [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] [IsDomain A] [Nontrivial R] {I : Ideal A} : Ideal.comap (algebraMap R A) I = β₯ β I = β₯ - Ideal.comap_ne_bot_of_algebraic_mem π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {I : Ideal S} [Algebra R S] [IsDomain S] {x : S} (x_ne_zero : x β 0) (x_mem : x β I) (hx : IsAlgebraic R x) : Ideal.comap (algebraMap R S) I β β₯ - Ideal.comap_ne_bot_of_integral_mem π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {I : Ideal S} [Algebra R S] [Nontrivial R] [IsDomain S] {x : S} (x_ne_zero : x β 0) (x_mem : x β I) (hx : IsIntegral R x) : Ideal.comap (algebraMap R S) I β β₯ - Ideal.coeff_zero_mem_comap_of_root_mem π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} {I : Ideal S} {r : S} (hr : r β I) {p : Polynomial R} (hp : Polynomial.evalβ f r p = 0) : p.coeff 0 β Ideal.comap f I - Ideal.coeff_zero_mem_comap_of_root_mem_of_eval_mem π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} {I : Ideal S} {r : S} (hr : r β I) {p : Polynomial R} (hp : Polynomial.evalβ f r p β I) : p.coeff 0 β Ideal.comap f I - Ideal.comap_ne_bot_of_root_mem π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} {I : Ideal S} [IsDomain S] {r : S} (r_ne_zero : r β 0) (hr : r β I) {p : Polynomial R} (p_ne_zero : p β 0) (hp : Polynomial.evalβ f r p = 0) : Ideal.comap f I β β₯ - Ideal.exists_ideal_over_maximal_of_isIntegral π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] [Algebra R S] [Algebra.IsIntegral R S] (P : Ideal R) [P_max : P.IsMaximal] (hP : RingHom.ker (algebraMap R S) β€ P) : β Q, Q.IsMaximal β§ Ideal.comap (algebraMap R S) Q = P - Ideal.exists_ideal_over_prime_of_isIntegral_of_isDomain π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] [Algebra R S] [IsDomain S] [Algebra.IsIntegral R S] (P : Ideal R) [P.IsPrime] (hP : RingHom.ker (algebraMap R S) β€ P) : β Q, Q.IsPrime β§ Ideal.comap (algebraMap R S) Q = P - Ideal.IntegralClosure.comap_lt_comap π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] {I J : Ideal A} [I.IsPrime] (I_lt_J : I < J) : Ideal.comap (algebraMap R A) I < Ideal.comap (algebraMap R A) J - Ideal.IsIntegral.comap_lt_comap π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] {I J : Ideal A} [I.IsPrime] (I_lt_J : I < J) : Ideal.comap (algebraMap R A) I < Ideal.comap (algebraMap R A) J - Ideal.IsIntegralClosure.comap_le_comap π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {A : Type u_3} [CommRing A] [Algebra R A] [Algebra.IsIntegral R A] {I J : Ideal A} [I.IsPrime] (I_lt_J : I < J) : Ideal.comap (algebraMap R A) I < Ideal.comap (algebraMap R A) J - Ideal.exists_coeff_ne_zero_mem_comap_of_root_mem π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} {I : Ideal S} [IsDomain S] {r : S} (r_ne_zero : r β 0) (hr : r β I) {p : Polynomial R} : p β 0 β Polynomial.evalβ f r p = 0 β β i, p.coeff i β 0 β§ p.coeff i β Ideal.comap f I - Ideal.exists_ideal_over_prime_of_isIntegral π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] [Algebra R S] [Algebra.IsIntegral R S] (P : Ideal R) [P.IsPrime] (I : Ideal S) (hIP : Ideal.comap (algebraMap R S) I β€ P) : β Q β₯ I, Q.IsPrime β§ Ideal.comap (algebraMap R S) Q = P - Ideal.exists_ideal_over_prime_of_isIntegral_of_isPrime π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] [Algebra R S] [Algebra.IsIntegral R S] (P : Ideal R) [P.IsPrime] (I : Ideal S) [I.IsPrime] (hIP : Ideal.comap (algebraMap R S) I β€ P) : β Q β₯ I, Q.IsPrime β§ Ideal.comap (algebraMap R S) Q = P - Ideal.exists_coeff_ne_zero_mem_comap_of_non_zero_divisor_root_mem π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} {I : Ideal S} {r : S} (r_non_zero_divisor : β {x : S}, x * r = 0 β x = 0) (hr : r β I) {p : Polynomial R} : p β 0 β Polynomial.evalβ f r p = 0 β β i, p.coeff i β 0 β§ p.coeff i β Ideal.comap f I - Ideal.comap_lt_comap_of_integral_mem_sdiff π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {I J : Ideal S} [Algebra R S] [hI : I.IsPrime] (hIJ : I β€ J) {x : S} (mem : x β βJ \ βI) (integral : IsIntegral R x) : Ideal.comap (algebraMap R S) I < Ideal.comap (algebraMap R S) J - Ideal.comap_lt_comap_of_root_mem_sdiff π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} {I J : Ideal S} [I.IsPrime] (hIJ : I β€ J) {r : S} (hr : r β βJ \ βI) {p : Polynomial R} (p_ne_zero : Polynomial.map (Ideal.Quotient.mk (Ideal.comap f I)) p β 0) (hp : Polynomial.evalβ f r p β I) : Ideal.comap f I < Ideal.comap f J - Ideal.exists_coeff_mem_comap_sdiff_comap_of_root_mem_sdiff π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} {I J : Ideal S} [I.IsPrime] (hIJ : I β€ J) {r : S} (hr : r β βJ \ βI) {p : Polynomial R} (p_ne_zero : Polynomial.map (Ideal.Quotient.mk (Ideal.comap f I)) p β 0) (hpI : Polynomial.evalβ f r p β I) : β i, p.coeff i β β(Ideal.comap f J) \ β(Ideal.comap f I) - Ideal.exists_nonzero_mem_of_ne_bot π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] {P : Ideal (Polynomial R)} (Pb : P β β₯) (hP : β (x : R), Polynomial.C x β P β x = 0) : β p β P, Polynomial.map (Ideal.Quotient.mk (Ideal.comap Polynomial.C P)) p β 0 - Ideal.injective_quotient_le_comap_map π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] (P : Ideal (Polynomial R)) : Function.Injective β(Ideal.quotientMap (Ideal.map (Polynomial.mapRingHom (Ideal.Quotient.mk (Ideal.comap Polynomial.C P))) P) (Polynomial.mapRingHom (Ideal.Quotient.mk (Ideal.comap Polynomial.C P))) β―) - Ideal.quotient_mk_maps_eq π Mathlib.RingTheory.Ideal.GoingUp
{R : Type u_1} [CommRing R] (P : Ideal (Polynomial R)) : ((Ideal.Quotient.mk (Ideal.map (Polynomial.mapRingHom (Ideal.Quotient.mk (Ideal.comap Polynomial.C P))) P)).comp Polynomial.C).comp (Ideal.Quotient.mk (Ideal.comap Polynomial.C P)) = (Ideal.quotientMap (Ideal.map (Polynomial.mapRingHom (Ideal.Quotient.mk (Ideal.comap Polynomial.C P))) P) (Polynomial.mapRingHom (Ideal.Quotient.mk (Ideal.comap Polynomial.C P))) β―).comp ((Ideal.Quotient.mk P).comp Polynomial.C) - RingHom.SurjectiveOnStalks.localRingHom_surjective π Mathlib.RingTheory.SurjectiveOnStalks
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} (hf : f.SurjectiveOnStalks) (P : Ideal R) [P.IsPrime] (Q : Ideal S) [Q.IsPrime] (e : P = Ideal.comap f Q) : Function.Surjective β(Localization.localRingHom P Q f e) - RingHom.surjectiveOnStalks_iff_forall_maximal π Mathlib.RingTheory.SurjectiveOnStalks
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} : f.SurjectiveOnStalks β β (I : Ideal S) (x : I.IsMaximal), Function.Surjective β(Localization.localRingHom (Ideal.comap f I) I f β―) - RingHom.surjective_localRingHom_iff π Mathlib.RingTheory.SurjectiveOnStalks
{R : Type u_1} [CommRing R] {S : Type u_2} [CommRing S] {f : R β+* S} (P : Ideal S) [P.IsPrime] : Function.Surjective β(Localization.localRingHom (Ideal.comap f P) P f β―) β β (s : S), β x r, β c β P, f r β P β§ c * f r * s = c * f x - Ideal.ResidueField.map π Mathlib.RingTheory.LocalRing.ResidueField.Ideal
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] (I : Ideal R) [I.IsPrime] (J : Ideal S) [J.IsPrime] (f : R β+* S) (hf : I = Ideal.comap f J) : I.ResidueField β+* J.ResidueField - RingHom.SurjectiveOnStalks.residueFieldMap_bijective π Mathlib.RingTheory.LocalRing.ResidueField.Ideal
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] {f : R β+* S} (H : f.SurjectiveOnStalks) (I : Ideal R) [I.IsPrime] (J : Ideal S) [J.IsPrime] (hf : I = Ideal.comap f J) : Function.Bijective β(Ideal.ResidueField.map I J f hf) - 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.residueFieldAlgEquiv π 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] (J : Ideal A) (K : Ideal B) [J.IsPrime] [K.IsPrime] (f : A ββ[R] B) (h : J = Ideal.comap f K) : J.ResidueField ββ[R] K.ResidueField - Ideal.residueFieldRingEquiv π Mathlib.RingTheory.LocalRing.ResidueField.Ideal
{A : Type u_3} {B : Type u_4} [CommRing A] [CommRing B] (J : Ideal A) (K : Ideal B) [J.IsPrime] [K.IsPrime] (f : A β+* B) (h : J = Ideal.comap f K) : J.ResidueField β+* K.ResidueField - Ideal.residueFieldAlgEquiv' π 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 R) [I.IsPrime] (J : Ideal A) (K : Ideal B) [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 : A ββ[R] B) (h : J = Ideal.comap f K) : J.ResidueField ββ[I.ResidueField] K.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 - Ideal.ResidueField.map_algebraMap π Mathlib.RingTheory.LocalRing.ResidueField.Ideal
{R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] (I : Ideal R) [I.IsPrime] (J : Ideal S) [J.IsPrime] (f : R β+* S) (hf : I = Ideal.comap f J) (r : R) : (Ideal.ResidueField.map I J f hf) ((algebraMap R I.ResidueField) r) = (algebraMap S J.ResidueField) (f r) - PrimeSpectrum.comap_asIdeal π Mathlib.RingTheory.Spectrum.Prime.RingHom
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R β+* S) (y : PrimeSpectrum S) : (PrimeSpectrum.comap f y).asIdeal = Ideal.comap f y.asIdeal - PrimeSpectrum.mem_range_comap_iff π Mathlib.RingTheory.Spectrum.Prime.RingHom
{R : Type u} {S : Type v} [CommRing R] [CommRing S] (f : R β+* S) {p : PrimeSpectrum R} : p β Set.range (PrimeSpectrum.comap f) β Ideal.comap f (Ideal.map f p.asIdeal) = p.asIdeal - image_comap_zeroLocus_eq_zeroLocus_comap π Mathlib.RingTheory.Spectrum.Prime.RingHom
{R : Type u} (S : Type v) [CommRing R] [CommRing S] (f : R β+* S) (hf : Function.Surjective βf) (I : Ideal S) : PrimeSpectrum.comap f '' PrimeSpectrum.zeroLocus βI = PrimeSpectrum.zeroLocus β(Ideal.comap f I) - Ideal.comap_surjective_of_faithfullyFlat π Mathlib.RingTheory.Flat.FaithfullyFlat.Algebra
{A : Type u_1} {B : Type u_2} [CommRing A] [CommRing B] [Algebra A B] [Module.FaithfullyFlat A B] : Function.Surjective (Ideal.comap (algebraMap A B)) - Ideal.comap_map_eq_self_of_faithfullyFlat π Mathlib.RingTheory.Flat.FaithfullyFlat.Algebra
{A : Type u_1} {B : Type u_2} [CommRing A] [CommRing B] [Algebra A B] [Module.FaithfullyFlat A B] (I : Ideal A) : Ideal.comap (algebraMap A B) (Ideal.map (algebraMap A B) I) = I - Ideal.minimalPrimes_comap_subset π Mathlib.RingTheory.Ideal.MinimalPrime.Localization
{R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] (f : R β+* S) (J : Ideal S) : (Ideal.comap f J).minimalPrimes β Ideal.comap f '' J.minimalPrimes - Ideal.exists_comap_eq_of_mem_minimalPrimes_of_injective π Mathlib.RingTheory.Ideal.MinimalPrime.Localization
{R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] {f : R β+* S} (hf : Function.Injective βf) (p : Ideal R) (H : p β minimalPrimes R) : β p', p'.IsPrime β§ Ideal.comap f p' = p - IsLocalization.minimalPrimes_comap π Mathlib.RingTheory.Ideal.MinimalPrime.Localization
{R : Type u_1} [CommSemiring R] (S : Submonoid R) (A : Type u_2) [CommSemiring A] [Algebra R A] [IsLocalization S A] (J : Ideal A) : (Ideal.comap (algebraMap R A) J).minimalPrimes = Ideal.comap (algebraMap R A) '' J.minimalPrimes
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 69fae59