Loogle!
Result
Found 356 declarations mentioning AlgHom.comp. Of these, only the first 200 are shown.
- AlgHom.comp π 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) : A ββ[R] C - AlgHom.comp_id π 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] (Ο : A ββ[R] B) : Ο.comp (AlgHom.id R A) = Ο - AlgHom.id_comp π 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] (Ο : A ββ[R] B) : (AlgHom.id R B).comp Ο = Ο - Algebra.comp_ofId π Mathlib.Algebra.Algebra.Hom
{R : Type u} (A : Type v) (B : Type w) [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] (Ο : A ββ[R] B) : Ο.comp (Algebra.ofId R A) = Algebra.ofId R 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.End_toMul_mul π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} [CommSemiring R] [Semiring A] [Algebra R A] (Οβ Οβ : A ββ[R] A) : Οβ * Οβ = Οβ.comp Οβ - AlgHom.comp_assoc π Mathlib.Algebra.Algebra.Hom
{R : Type u} {A : Type v} {B : Type w} {C : Type uβ} {D : Type vβ} [CommSemiring R] [Semiring A] [Semiring B] [Semiring C] [Semiring D] [Algebra R A] [Algebra R B] [Algebra R C] [Algebra R D] (Οβ : C ββ[R] D) (Οβ : B ββ[R] C) (Οβ : A ββ[R] B) : (Οβ.comp Οβ).comp Οβ = Οβ.comp (Οβ.comp Οβ) - AlgHom.cancel_left π 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] {gβ gβ : A ββ[R] B} {f : B ββ[R] C} (hf : Function.Injective βf) : f.comp gβ = f.comp gβ β gβ = gβ - AlgHom.cancel_right π 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] {gβ gβ : B ββ[R] C} {f : A ββ[R] B} (hf : Function.Surjective βf) : gβ.comp f = gβ.comp f β gβ = gβ - AlgHom.comp_apply π 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) (p : A) : (Οβ.comp Οβ) p = Οβ (Οβ p) - AlgHom.coe_comp π 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) : β(Οβ.comp Οβ) = βΟβ β βΟβ - AlgHom.comp_toLinearMap π 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] (f : A ββ[R] B) (g : B ββ[R] C) : (g.comp f).toLinearMap = g.toLinearMap ββ f.toLinearMap - AlgHom.comp_toRingHom π 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) : β(Οβ.comp Οβ) = (βΟβ).comp βΟβ - AlgEquiv.comp_symm π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (e : Aβ ββ[R] Aβ) : (βe).comp βe.symm = AlgHom.id R Aβ - AlgEquiv.symm_comp π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (e : Aβ ββ[R] Aβ) : (βe.symm).comp βe = AlgHom.id R Aβ - AlgEquiv.ofAlgHom π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : f.comp g = AlgHom.id R Aβ) (hβ : g.comp f = AlgHom.id R Aβ) : Aβ ββ[R] Aβ - AlgEquiv.coe_algHom_ofAlgHom π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : f.comp g = AlgHom.id R Aβ) (hβ : g.comp f = AlgHom.id R Aβ) : β(AlgEquiv.ofAlgHom f g hβ hβ) = f - AlgEquiv.toAlgHom_ofAlgHom π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : f.comp g = AlgHom.id R Aβ) (hβ : g.comp f = AlgHom.id R Aβ) : β(AlgEquiv.ofAlgHom f g hβ hβ) = f - AlgEquiv.ofAlgHom_symm π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : f.comp g = AlgHom.id R Aβ) (hβ : g.comp f = AlgHom.id R Aβ) : (AlgEquiv.ofAlgHom f g hβ hβ).symm = AlgEquiv.ofAlgHom g f hβ hβ - AlgEquiv.ofAlgHom_coe_algHom π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : (βf).comp g = AlgHom.id R Aβ) (hβ : g.comp βf = AlgHom.id R Aβ) : AlgEquiv.ofAlgHom (βf) g hβ hβ = f - AlgEquiv.ofAlgHom_toAlgHom π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : (βf).comp g = AlgHom.id R Aβ) (hβ : g.comp βf = AlgHom.id R Aβ) : AlgEquiv.ofAlgHom (βf) g hβ hβ = f - AlgEquiv.ofAlgHom_apply π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : f.comp g = AlgHom.id R Aβ) (hβ : g.comp f = AlgHom.id R Aβ) (a : Aβ) : (AlgEquiv.ofAlgHom f g hβ hβ) a = f a - AlgEquiv.toLinearMap_ofAlgHom π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : f.comp g = AlgHom.id R Aβ) (hβ : g.comp f = AlgHom.id R Aβ) : (AlgEquiv.ofAlgHom f g hβ hβ).toLinearMap = f.toLinearMap - AlgEquiv.ofAlgHom_symm_apply π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Algebra R Aβ] [Algebra R Aβ] (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) (hβ : f.comp g = AlgHom.id R Aβ) (hβ : g.comp f = AlgHom.id R Aβ) (a : Aβ) : (AlgEquiv.ofAlgHom f g hβ hβ).symm a = g a - AlgEquiv.arrowCongr_apply π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} {Aβ' : Type uAβ'} {Aβ' : Type uAβ'} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Semiring Aβ'] [Semiring Aβ'] [Algebra R Aβ] [Algebra R Aβ] [Algebra R Aβ'] [Algebra R Aβ'] (eβ : Aβ ββ[R] Aβ') (eβ : Aβ ββ[R] Aβ') (f : Aβ ββ[R] Aβ) : (eβ.arrowCongr eβ) f = ((βeβ).comp f).comp βeβ.symm - AlgEquiv.arrowCongr_comp π Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {Aβ : Type uAβ} {Aβ : Type uAβ} {Aβ : Type uAβ} {Aβ' : Type uAβ'} {Aβ' : Type uAβ'} {Aβ' : Type uAβ'} [CommSemiring R] [Semiring Aβ] [Semiring Aβ] [Semiring Aβ] [Semiring Aβ'] [Semiring Aβ'] [Semiring Aβ'] [Algebra R Aβ] [Algebra R Aβ] [Algebra R Aβ] [Algebra R Aβ'] [Algebra R Aβ'] [Algebra R Aβ'] (eβ : Aβ ββ[R] Aβ') (eβ : Aβ ββ[R] Aβ') (eβ : Aβ ββ[R] Aβ') (f : Aβ ββ[R] Aβ) (g : Aβ ββ[R] Aβ) : (eβ.arrowCongr eβ) (g.comp f) = ((eβ.arrowCongr eβ) g).comp ((eβ.arrowCongr eβ) f) - AlgHom.fst_prod π Mathlib.Algebra.Algebra.Prod
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (f : A ββ[R] B) (g : A ββ[R] C) : (AlgHom.fst R B C).comp (f.prod g) = f - AlgHom.snd_prod π Mathlib.Algebra.Algebra.Prod
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (f : A ββ[R] B) (g : A ββ[R] C) : (AlgHom.snd R B C).comp (f.prod g) = g - AlgHom.prod_comp π Mathlib.Algebra.Algebra.Prod
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] {C' : Type u_5} [Semiring C'] [Algebra R C'] (f : A ββ[R] B) (g : B ββ[R] C) (g' : B ββ[R] C') : (g.prod g').comp f = (g.comp f).prod (g'.comp f) - AlgHom.prodEquiv_symm_apply π Mathlib.Algebra.Algebra.Prod
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (f : A ββ[R] B Γ C) : AlgHom.prodEquiv.symm f = ((AlgHom.fst R B C).comp f, (AlgHom.snd R B C).comp f) - AlgHom.Finite.of_comp_finite π Mathlib.RingTheory.Finiteness.Basic
{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} (h : (g.comp f).Finite) : g.Finite - AlgHom.Finite.comp π Mathlib.RingTheory.Finiteness.Basic
{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] {g : B ββ[R] C} {f : A ββ[R] B} (hg : g.Finite) (hf : f.Finite) : (g.comp f).Finite - AlgHom.pi_comp π Mathlib.Algebra.Algebra.Pi
{ΞΉ : Type u_1} {R : Type u_2} {A : ΞΉ β Type u_3} [CommSemiring R] [(i : ΞΉ) β Semiring (A i)] [(i : ΞΉ) β Algebra R (A i)] {B : Type u_4} {C : Type u_5} [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (g : (i : ΞΉ) β C ββ[R] A i) (h : B ββ[R] C) : (AlgHom.pi g).comp h = AlgHom.pi fun i => (g i).comp h - Pi.algHom_comp π Mathlib.Algebra.Algebra.Pi
{ΞΉ : Type u_1} (R : Type u_2) (A : ΞΉ β Type u_3) [CommSemiring R] [(i : ΞΉ) β Semiring (A i)] [(i : ΞΉ) β Algebra R (A i)] {B : Type u_4} {C : Type u_5} [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (g : (i : ΞΉ) β C ββ[R] A i) (h : B ββ[R] C) : (Pi.algHom R A g).comp h = Pi.algHom R A fun i => (g i).comp h - Ideal.map_mapβ π 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 A} (f : A ββ[R] B) (g : B ββ[R] C) : Ideal.map g (Ideal.map f I) = Ideal.map (g.comp f) I - 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 - AlgHom.mapMatrix_comp π Mathlib.Data.Matrix.Basic
{m : Type u_2} {R : Type u_4} {Ξ± : Type u_8} {Ξ² : Type u_9} {Ξ³ : Type u_10} [Fintype m] [DecidableEq m] [CommSemiring R] [Semiring Ξ±] [Semiring Ξ²] [Semiring Ξ³] [Algebra R Ξ±] [Algebra R Ξ²] [Algebra R Ξ³] (f : Ξ² ββ[R] Ξ³) (g : Ξ± ββ[R] Ξ²) : f.mapMatrix.comp g.mapMatrix = (f.comp g).mapMatrix - AlgHom.range_comp π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} {B : Type w} {C : Type w'} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (f : A ββ[R] B) (g : B ββ[R] C) : (g.comp f).range = Subalgebra.map g f.range - Subalgebra.map_map π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} {B : Type w} {C : Type w'} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (S : Subalgebra R A) (g : B ββ[R] C) (f : A ββ[R] B) : Subalgebra.map g (Subalgebra.map f S) = Subalgebra.map (g.comp f) S - AlgHom.range_comp_le_range π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} {B : Type w} {C : Type w'} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (f : A ββ[R] B) (g : B ββ[R] C) : (g.comp f).range β€ g.range - AlgHom.val_comp_rangeRestrict π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] (Ο : A ββ[R] B) : Ο.range.val.comp Ο.rangeRestrict = Ο - Subalgebra.range_comp_val π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] (S : Subalgebra R A) (f : A ββ[R] B) : (f.comp S.val).range = Subalgebra.map f S - AlgHom.val_comp_codRestrict π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] (f : A ββ[R] B) (S : Subalgebra R B) (hf : β (x : A), f x β S) : S.val.comp (f.codRestrict S hf) = f - Subalgebra.val_comp_inclusion π Mathlib.Algebra.Algebra.Subalgebra.Basic
{R : Type u} {A : Type v} [CommSemiring R] [Semiring A] [Algebra R A] {S T : Subalgebra R A} (hst : S β€ T) : T.val.comp (Subalgebra.inclusion hst) = S.val - IsLocalization.algHom_ext π Mathlib.RingTheory.Localization.Basic
{R : Type u_1} {A : Type u_2} {L : Type u_3} {B : Type u_4} [CommSemiring R] [CommSemiring A] [CommSemiring L] [Semiring B] (W : Submonoid A) [Algebra A L] [IsLocalization W L] [Algebra R A] [Algebra R L] [IsScalarTower R A L] [Algebra R B] {f g : L ββ[R] B} (h : f.comp (Algebra.algHom R A L) = g.comp (Algebra.algHom R A L)) : f = g - Localization.algHom_ext π Mathlib.RingTheory.Localization.Basic
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [CommSemiring A] [Semiring B] [Algebra R A] [Algebra R B] (W : Submonoid A) {f g : Localization W ββ[R] B} (h : f.comp (Algebra.algHom R A (Localization W)) = g.comp (Algebra.algHom R A (Localization W))) : f = g - Localization.algHom_ext_iff π Mathlib.RingTheory.Localization.Basic
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [CommSemiring A] [Semiring B] [Algebra R A] [Algebra R B] {W : Submonoid A} {f g : Localization W ββ[R] B} : f = g β f.comp (Algebra.algHom R A (Localization W)) = g.comp (Algebra.algHom R A (Localization W)) - Algebra.TensorProduct.ext_ring π Mathlib.RingTheory.TensorProduct.Basic
{R : Type u_4} {S : Type u_5} {A : Type u_6} {B : Type u_7} [CommSemiring R] [CommSemiring S] [Semiring A] [Semiring B] [Algebra R A] [Algebra S B] [Algebra R S] [Algebra R B] [IsScalarTower R S B] {f g : TensorProduct R S A ββ[S] B} (h : (AlgHom.restrictScalars R f).comp Algebra.TensorProduct.includeRight = (AlgHom.restrictScalars R g).comp Algebra.TensorProduct.includeRight) : f = g - Algebra.TensorProduct.ext_ring_iff π Mathlib.RingTheory.TensorProduct.Basic
{R : Type u_4} {S : Type u_5} {A : Type u_6} {B : Type u_7} [CommSemiring R] [CommSemiring S] [Semiring A] [Semiring B] [Algebra R A] [Algebra S B] [Algebra R S] [Algebra R B] [IsScalarTower R S B] {f g : TensorProduct R S A ββ[S] B} : f = g β (AlgHom.restrictScalars R f).comp Algebra.TensorProduct.includeRight = (AlgHom.restrictScalars R g).comp Algebra.TensorProduct.includeRight - Algebra.TensorProduct.ext π Mathlib.RingTheory.TensorProduct.Basic
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [CommSemiring S] [Algebra S A] [Algebra R S] [Algebra S C] [IsScalarTower R S A] [IsScalarTower R S C] β¦f g : TensorProduct R A B ββ[S] Cβ¦ (ha : f.comp Algebra.TensorProduct.includeLeft = g.comp Algebra.TensorProduct.includeLeft) (hb : (AlgHom.restrictScalars R f).comp Algebra.TensorProduct.includeRight = (AlgHom.restrictScalars R g).comp Algebra.TensorProduct.includeRight) : f = g - Algebra.TensorProduct.ext_iff π Mathlib.RingTheory.TensorProduct.Basic
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [CommSemiring S] [Algebra S A] [Algebra R S] [Algebra S C] [IsScalarTower R S A] [IsScalarTower R S C] {f g : TensorProduct R A B ββ[S] C} : f = g β f.comp Algebra.TensorProduct.includeLeft = g.comp Algebra.TensorProduct.includeLeft β§ (AlgHom.restrictScalars R f).comp Algebra.TensorProduct.includeRight = (AlgHom.restrictScalars R g).comp Algebra.TensorProduct.includeRight - Algebra.TensorProduct.lmul'_comp_includeRight π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} [CommSemiring R] [CommSemiring S] [Algebra R S] : (Algebra.TensorProduct.lmul' R).comp Algebra.TensorProduct.includeRight = AlgHom.id R S - Algebra.TensorProduct.lmul'_comp_includeLeft π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} [CommSemiring R] [CommSemiring S] [Algebra R S] : (Algebra.TensorProduct.lmul' R).comp Algebra.TensorProduct.includeLeft = AlgHom.id R S - Algebra.TensorProduct.productMap_right π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} [CommSemiring R] [Semiring A] [Semiring B] [CommSemiring S] [Algebra R A] [Algebra R B] [Algebra R S] (f : A ββ[R] S) (g : B ββ[R] S) : (Algebra.TensorProduct.productMap f g).comp Algebra.TensorProduct.includeRight = g - Algebra.TensorProduct.productMap_left π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} [CommSemiring R] [Semiring A] [Semiring B] [CommSemiring S] [Algebra R A] [Algebra R B] [Algebra R S] (f : A ββ[R] S) (g : B ββ[R] S) : (Algebra.TensorProduct.productMap f g).comp Algebra.TensorProduct.includeLeft = f - Algebra.TensorProduct.comm_comp_includeLeft π Mathlib.RingTheory.TensorProduct.Maps
(R : Type uR) (A : Type uA) (B : Type uB) [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] : (β(Algebra.TensorProduct.comm R A B)).comp Algebra.TensorProduct.includeLeft = Algebra.TensorProduct.includeRight - Algebra.TensorProduct.comm_comp_includeRight π Mathlib.RingTheory.TensorProduct.Maps
(R : Type uR) (A : Type uA) (B : Type uB) [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] : (β(Algebra.TensorProduct.comm R A B)).comp Algebra.TensorProduct.includeRight = Algebra.TensorProduct.includeLeft - Algebra.TensorProduct.lift_comp_includeLeft π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring B] [Algebra R B] [Semiring C] [Algebra S C] [Algebra R C] [IsScalarTower R S C] (f : A ββ[S] C) (g : B ββ[R] C) (hfg : β (x : A) (y : B), Commute (f x) (g y)) : (Algebra.TensorProduct.lift f g hfg).comp Algebra.TensorProduct.includeLeft = f - Algebra.TensorProduct.lift_comp_includeRight' π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {A : Type uA} {B : Type uB} {C : Type uC} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] (f : A ββ[R] C) (g : B ββ[R] C) (hfg : β (x : A) (y : B), Commute (f x) (g y)) : (Algebra.TensorProduct.lift f g hfg).comp Algebra.TensorProduct.includeRight = g - Algebra.TensorProduct.productMap_eq_comp_map π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} [CommSemiring R] [Semiring A] [Semiring B] [CommSemiring S] [Algebra R A] [Algebra R B] [Algebra R S] (f : A ββ[R] S) (g : B ββ[R] S) : Algebra.TensorProduct.productMap f g = (Algebra.TensorProduct.lmul' R).comp (Algebra.TensorProduct.map f g) - Algebra.TensorProduct.lift_comp_includeRight π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring B] [Algebra R B] [Semiring C] [Algebra S C] [Algebra R C] [IsScalarTower R S C] (f : A ββ[S] C) (g : B ββ[R] C) (hfg : β (x : A) (y : B), Commute (f x) (g y)) : (AlgHom.restrictScalars R (Algebra.TensorProduct.lift f g hfg)).comp Algebra.TensorProduct.includeRight = g - Algebra.TensorProduct.lmul''_eq_lid_comp_mapOfCompatibleSMul π Mathlib.RingTheory.TensorProduct.Maps
(R : Type uR) {S : Type uS} [CommSemiring R] [CommSemiring S] [Algebra R S] : Algebra.TensorProduct.lmul'' R = (β(Algebra.TensorProduct.lid S S)).comp (Algebra.TensorProduct.mapOfCompatibleSMul S R S S S) - Algebra.TensorProduct.map_comp_includeLeft π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} {D : Type uD} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [Algebra S C] [IsScalarTower R S C] [Semiring D] [Algebra R D] (f : A ββ[S] C) (g : B ββ[R] D) : (Algebra.TensorProduct.map f g).comp Algebra.TensorProduct.includeLeft = Algebra.TensorProduct.includeLeft.comp f - Algebra.TensorProduct.map_id_comp π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {D : Type uD} {F : Type uF} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring B] [Algebra R B] [Semiring D] [Algebra R D] [Semiring F] [Algebra R F] (gβ : D ββ[R] F) (gβ : B ββ[R] D) : Algebra.TensorProduct.map (AlgHom.id S A) (gβ.comp gβ) = (Algebra.TensorProduct.map (AlgHom.id S A) gβ).comp (Algebra.TensorProduct.map (AlgHom.id S A) gβ) - Algebra.TensorProduct.map_comp_includeRight π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {A : Type uA} {B : Type uB} {C : Type uC} {D : Type uD} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [Semiring D] [Algebra R D] (f : A ββ[R] C) (g : B ββ[R] D) : (Algebra.TensorProduct.map f g).comp Algebra.TensorProduct.includeRight = Algebra.TensorProduct.includeRight.comp g - Algebra.TensorProduct.map_comp_id π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {C : Type uC} {E : Type uE} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring C] [Algebra R C] [Algebra S C] [IsScalarTower R S C] [Semiring E] [Algebra R E] [Algebra S E] [IsScalarTower R S E] (fβ : C ββ[S] E) (fβ : A ββ[S] C) : Algebra.TensorProduct.map (fβ.comp fβ) (AlgHom.id R E) = (Algebra.TensorProduct.map fβ (AlgHom.id R E)).comp (Algebra.TensorProduct.map fβ (AlgHom.id R E)) - Algebra.TensorProduct.lmul'_comp_map π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} [CommSemiring R] [Semiring A] [Semiring B] [CommSemiring S] [Algebra R A] [Algebra R B] [Algebra R S] (f : A ββ[R] S) (g : B ββ[R] S) : (Algebra.TensorProduct.lmul' R).comp (Algebra.TensorProduct.map f g) = Algebra.TensorProduct.lift f g β― - Algebra.TensorProduct.map_comp π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} {D : Type uD} {E : Type uE} {F : Type uF} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [Algebra S C] [IsScalarTower R S C] [Semiring D] [Algebra R D] [Semiring E] [Algebra R E] [Algebra S E] [IsScalarTower R S E] [Semiring F] [Algebra R F] (fβ : C ββ[S] E) (fβ : A ββ[S] C) (gβ : D ββ[R] F) (gβ : B ββ[R] D) : Algebra.TensorProduct.map (fβ.comp fβ) (gβ.comp gβ) = (Algebra.TensorProduct.map fβ gβ).comp (Algebra.TensorProduct.map fβ gβ) - Algebra.TensorProduct.map_restrictScalars_comp_includeRight π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} {D : Type uD} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [Algebra S C] [IsScalarTower R S C] [Semiring D] [Algebra R D] (f : A ββ[S] C) (g : B ββ[R] D) : (AlgHom.restrictScalars R (Algebra.TensorProduct.map f g)).comp Algebra.TensorProduct.includeRight = Algebra.TensorProduct.includeRight.comp g - Algebra.TensorProduct.liftEquivRight_symm_apply π Mathlib.RingTheory.TensorProduct.Maps
(R : Type uR) (S : Type uS) (B : Type uB) [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring B] [Algebra R B] (C : Type u_3) [CommRing C] [Algebra R C] [Algebra S C] [IsScalarTower R S C] (f : TensorProduct R S B ββ[S] C) : (Algebra.TensorProduct.liftEquivRight R S B C).symm f = (AlgHom.restrictScalars R f).comp Algebra.TensorProduct.includeRight - Algebra.TensorProduct.comm_comp_map π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {A : Type uA} {B : Type uB} {C : Type uC} {D : Type uD} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [Semiring D] [Algebra R D] (f : A ββ[R] C) (g : B ββ[R] D) : (β(Algebra.TensorProduct.comm R C D)).comp (Algebra.TensorProduct.map f g) = (Algebra.TensorProduct.map g f).comp β(Algebra.TensorProduct.comm R A B) - Algebra.TensorProduct.map_range π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {A : Type uA} {B : Type uB} {C : Type uC} {D : Type uD} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] [Semiring C] [Algebra R C] [Semiring D] [Algebra R D] (f : A ββ[R] C) (g : B ββ[R] D) : (Algebra.TensorProduct.map f g).range = (Algebra.TensorProduct.includeLeft.comp f).range β (Algebra.TensorProduct.includeRight.comp g).range - Algebra.TensorProduct.liftEquiv_symm_apply_coe π Mathlib.RingTheory.TensorProduct.Maps
{R : Type uR} {S : Type uS} {A : Type uA} {B : Type uB} {C : Type uC} [CommSemiring R] [CommSemiring S] [Algebra R S] [Semiring A] [Algebra R A] [Algebra S A] [IsScalarTower R S A] [Semiring B] [Algebra R B] [Semiring C] [Algebra S C] [Algebra R C] [IsScalarTower R S C] (f' : TensorProduct R A B ββ[S] C) : β(Algebra.TensorProduct.liftEquiv.symm f') = (f'.comp Algebra.TensorProduct.includeLeft, (AlgHom.restrictScalars R f').comp Algebra.TensorProduct.includeRight) - Algebra.TensorProduct.lmul'_ulift π Mathlib.RingTheory.TensorProduct.Maps
(R : Type u_4) (S : Type u_5) [CommSemiring R] [CommSemiring S] [Algebra R S] : Algebra.TensorProduct.lmul' (ULift.{uβ, u_4} R) = (AlgHom.ulift.{u_8, uβ, uβ, u_4, u_5, u_5} (Algebra.TensorProduct.lmul' R)).comp β(Algebra.TensorProduct.uliftEquiv R (ULift.{uβ, u_4} R) S S).symm - Subalgebra.iSupLift π Mathlib.Algebra.Algebra.Subalgebra.Directed
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ΞΉ : Type u_4} [Nonempty ΞΉ] (K : ΞΉ β Subalgebra R A) (dir : Directed (fun x1 x2 => x1 β€ x2) K) (f : (i : ΞΉ) β β₯(K i) ββ[R] B) (hf : β (i j : ΞΉ) (h : K i β€ K j), f i = (f j).comp (Subalgebra.inclusion h)) (T : Subalgebra R A) (hT : T β€ iSup K) : β₯T ββ[R] B - Subalgebra.iSupLift_comp_inclusion π Mathlib.Algebra.Algebra.Subalgebra.Directed
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ΞΉ : Type u_4} [Nonempty ΞΉ] (K : ΞΉ β Subalgebra R A) {dir : Directed (fun x1 x2 => x1 β€ x2) K} {f : (i : ΞΉ) β β₯(K i) ββ[R] B} {hf : β (i j : ΞΉ) (h : K i β€ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T β€ iSup K} {i : ΞΉ} (h : K i β€ T) : (Subalgebra.iSupLift K dir f hf T hT).comp (Subalgebra.inclusion h) = f i - Subalgebra.iSupLift_of_mem π Mathlib.Algebra.Algebra.Subalgebra.Directed
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ΞΉ : Type u_4} [Nonempty ΞΉ] (K : ΞΉ β Subalgebra R A) {dir : Directed (fun x1 x2 => x1 β€ x2) K} {f : (i : ΞΉ) β β₯(K i) ββ[R] B} {hf : β (i j : ΞΉ) (h : K i β€ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T β€ iSup K} {i : ΞΉ} (x : β₯T) (hx : βx β K i) : (Subalgebra.iSupLift K dir f hf T hT) x = (f i) β¨βx, hxβ© - Subalgebra.iSupLift_mk π Mathlib.Algebra.Algebra.Subalgebra.Directed
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ΞΉ : Type u_4} [Nonempty ΞΉ] (K : ΞΉ β Subalgebra R A) {dir : Directed (fun x1 x2 => x1 β€ x2) K} {f : (i : ΞΉ) β β₯(K i) ββ[R] B} {hf : β (i j : ΞΉ) (h : K i β€ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T β€ iSup K} {i : ΞΉ} (x : β₯(K i)) (hx : βx β T) : (Subalgebra.iSupLift K dir f hf T hT) β¨βx, hxβ© = (f i) x - Subalgebra.iSupLift_inclusion π Mathlib.Algebra.Algebra.Subalgebra.Directed
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] {ΞΉ : Type u_4} [Nonempty ΞΉ] (K : ΞΉ β Subalgebra R A) {dir : Directed (fun x1 x2 => x1 β€ x2) K} {f : (i : ΞΉ) β β₯(K i) ββ[R] B} {hf : β (i j : ΞΉ) (h : K i β€ K j), f i = (f j).comp (Subalgebra.inclusion h)} {T : Subalgebra R A} {hT : T β€ iSup K} {i : ΞΉ} (x : β₯(K i)) (h : K i β€ T) : (Subalgebra.iSupLift K dir f hf T hT) ((Subalgebra.inclusion h) x) = (f i) x - AddMonoidAlgebra.mapRangeAlgHom_comp π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {B : Type u_5} {C : Type u_6} {M : Type u_7} [CommSemiring R] [Semiring A] [Semiring B] [Semiring C] [Algebra R A] [Algebra R B] [Algebra R C] [AddMonoid M] (f : A ββ[R] B) (g : B ββ[R] C) : AddMonoidAlgebra.mapAlgHom M (g.comp f) = (AddMonoidAlgebra.mapAlgHom M g).comp (AddMonoidAlgebra.mapAlgHom M f) - MonoidAlgebra.mapRangeAlgHom_comp π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {B : Type u_5} {C : Type u_6} {M : Type u_7} [CommSemiring R] [Semiring A] [Semiring B] [Semiring C] [Algebra R A] [Algebra R B] [Algebra R C] [Monoid M] (f : A ββ[R] B) (g : B ββ[R] C) : MonoidAlgebra.mapAlgHom M (g.comp f) = (MonoidAlgebra.mapAlgHom M g).comp (MonoidAlgebra.mapAlgHom M f) - AddMonoidAlgebra.mapDomainAlgHom_comp π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {M : Type u_7} {N : Type u_8} {O : Type u_9} [CommSemiring R] [Semiring A] [Algebra R A] [AddMonoid M] [AddMonoid N] [AddMonoid O] (f : M β+ N) (g : N β+ O) : AddMonoidAlgebra.mapDomainAlgHom R A (g.comp f) = (AddMonoidAlgebra.mapDomainAlgHom R A g).comp (AddMonoidAlgebra.mapDomainAlgHom R A f) - MonoidAlgebra.mapDomainAlgHom_comp π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {M : Type u_7} {N : Type u_8} {O : Type u_9} [CommSemiring R] [Semiring A] [Algebra R A] [Monoid M] [Monoid N] [Monoid O] (f : M β* N) (g : N β* O) : MonoidAlgebra.mapDomainAlgHom R A (g.comp f) = (MonoidAlgebra.mapDomainAlgHom R A g).comp (MonoidAlgebra.mapDomainAlgHom R A f) - AddMonoidAlgebra.algHom_ext π 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] β¦Οβ Οβ : AddMonoidAlgebra A M ββ[R] Bβ¦ (single_zero_right : β (m : M), Οβ (AddMonoidAlgebra.single m 1) = Οβ (AddMonoidAlgebra.single m 1)) (single_zero_left : Οβ.comp AddMonoidAlgebra.singleZeroAlgHom = Οβ.comp AddMonoidAlgebra.singleZeroAlgHom) : Οβ = Οβ - MonoidAlgebra.algHom_ext π 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] β¦Οβ Οβ : MonoidAlgebra A M ββ[R] Bβ¦ (single_one_right : β (m : M), Οβ (MonoidAlgebra.single m 1) = Οβ (MonoidAlgebra.single m 1)) (single_one_left : Οβ.comp MonoidAlgebra.singleOneAlgHom = Οβ.comp MonoidAlgebra.singleOneAlgHom) : Οβ = Οβ - AddMonoidAlgebra.algHom_ext_iff π 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] {Οβ Οβ : AddMonoidAlgebra A M ββ[R] B} : Οβ = Οβ β (β (m : M), Οβ (AddMonoidAlgebra.single m 1) = Οβ (AddMonoidAlgebra.single m 1)) β§ Οβ.comp AddMonoidAlgebra.singleZeroAlgHom = Οβ.comp AddMonoidAlgebra.singleZeroAlgHom - MonoidAlgebra.algHom_ext_iff π 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] {Οβ Οβ : MonoidAlgebra A M ββ[R] B} : Οβ = Οβ β (β (m : M), Οβ (MonoidAlgebra.single m 1) = Οβ (MonoidAlgebra.single m 1)) β§ Οβ.comp MonoidAlgebra.singleOneAlgHom = Οβ.comp MonoidAlgebra.singleOneAlgHom - MonoidAlgebra.algHom_ext' π 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] β¦Οβ Οβ : MonoidAlgebra A M ββ[R] Bβ¦ (single_one_right : (βΟβ).comp (MonoidAlgebra.of A M) = (βΟβ).comp (MonoidAlgebra.of A M)) (single_one_left : Οβ.comp MonoidAlgebra.singleOneAlgHom = Οβ.comp MonoidAlgebra.singleOneAlgHom) : Οβ = Οβ - AddMonoidAlgebra.algHom_ext' π Mathlib.Algebra.MonoidAlgebra.Basic
{R : Type u_1} {A : Type u_4} {B : Type u_5} {M : Type u_7} [CommSemiring R] [AddMonoid M] [Semiring A] [Algebra R A] [Semiring B] [Algebra R B] β¦Οβ Οβ : AddMonoidAlgebra A M ββ[R] Bβ¦ (single_one_right : (βΟβ).comp (AddMonoidAlgebra.of A M) = (βΟβ).comp (AddMonoidAlgebra.of A M)) (single_one_left : Οβ.comp AddMonoidAlgebra.singleZeroAlgHom = Οβ.comp AddMonoidAlgebra.singleZeroAlgHom) : Οβ = Οβ - Polynomial.aeval_algHom π Mathlib.Algebra.Polynomial.AlgebraMap
{R : Type u} {A : Type z} {B : Type u_2} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) (x : A) : Polynomial.aeval (f x) = f.comp (Polynomial.aeval x) - Polynomial.aeval_algEquiv π Mathlib.Algebra.Polynomial.AlgebraMap
{R : Type u} {A : Type z} {B : Type u_2} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) (x : A) : Polynomial.aeval (f x) = (βf).comp (Polynomial.aeval x) - Polynomial.mapAlgHom_comp π Mathlib.Algebra.Polynomial.AlgebraMap
{R : Type u} {A : Type z} {B : Type u_2} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (C : Type u_3) [Semiring C] [Algebra R C] (f : B ββ[R] C) (g : A ββ[R] B) : (Polynomial.mapAlgHom f).comp (Polynomial.mapAlgHom g) = Polynomial.mapAlgHom (f.comp g) - Polynomial.algHom_ext' π Mathlib.Algebra.Polynomial.AlgebraMap
{R : Type u} {A : Type z} {B : Type u_2} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] {f g : Polynomial A ββ[R] B} (hC : f.comp Polynomial.CAlgHom = g.comp Polynomial.CAlgHom) (hX : f Polynomial.X = g Polynomial.X) : f = g - Polynomial.algHom_ext'_iff π Mathlib.Algebra.Polynomial.AlgebraMap
{R : Type u} {A : Type z} {B : Type u_2} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] {f g : Polynomial A ββ[R] B} : f = g β f.comp Polynomial.CAlgHom = g.comp Polynomial.CAlgHom β§ f Polynomial.X = g Polynomial.X - Polynomial.mapAlgHom_eq_evalβAlgHom_CAlgHom π Mathlib.Algebra.Polynomial.AlgebraMap
{R : Type u} {A : Type z} {B : Type u_2} [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] (f : A ββ[R] B) : Polynomial.mapAlgHom f = Polynomial.evalβAlgHom (Polynomial.CAlgHom.comp f) Polynomial.X β― - Polynomial.aevalTower_comp_toAlgHom π Mathlib.Algebra.Polynomial.AlgebraMap
{R : Type u} {S : Type v} {A' : Type u_1} [CommSemiring R] [CommSemiring A'] [CommSemiring S] [Algebra S R] [Algebra S A'] (g : R ββ[S] A') (y : A') : (Polynomial.aevalTower g y).comp (IsScalarTower.toAlgHom S R (Polynomial R)) = g - MvPolynomial.algHom_ext' π Mathlib.Algebra.MvPolynomial.Basic
{R : Type u} {Ο : Type u_1} [CommSemiring R] {A : Type u_2} {B : Type u_3} [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] {f g : MvPolynomial Ο A ββ[R] B} (hβ : f.comp (IsScalarTower.toAlgHom R A (MvPolynomial Ο A)) = g.comp (IsScalarTower.toAlgHom R A (MvPolynomial Ο A))) (hβ : β (i : Ο), f (MvPolynomial.X i) = g (MvPolynomial.X i)) : f = g - MvPolynomial.algHom_ext'_iff π Mathlib.Algebra.MvPolynomial.Basic
{R : Type u} {Ο : Type u_1} [CommSemiring R] {A : Type u_2} {B : Type u_3} [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] {f g : MvPolynomial Ο A ββ[R] B} : f = g β f.comp (IsScalarTower.toAlgHom R A (MvPolynomial Ο A)) = g.comp (IsScalarTower.toAlgHom R A (MvPolynomial Ο A)) β§ β (i : Ο), f (MvPolynomial.X i) = g (MvPolynomial.X i) - MvPolynomial.comp_aeval π Mathlib.Algebra.MvPolynomial.Eval
{R : Type u} {Sβ : Type v} {Ο : Type u_1} [CommSemiring R] [CommSemiring Sβ] [Algebra R Sβ] (f : Ο β Sβ) {B : Type u_2} [CommSemiring B] [Algebra R B] (Ο : Sβ ββ[R] B) : Ο.comp (MvPolynomial.aeval f) = MvPolynomial.aeval fun i => Ο (f i) - MvPolynomial.aevalTower_comp_toAlgHom π Mathlib.Algebra.MvPolynomial.Eval
{R : Type u} {Ο : Type u_1} [CommSemiring R] {S : Type u_2} {A : Type u_3} [CommSemiring S] [CommSemiring A] [Algebra S R] [Algebra S A] (g : R ββ[S] A) (y : Ο β A) : (MvPolynomial.aevalTower g y).comp (IsScalarTower.toAlgHom S R (MvPolynomial Ο R)) = g - MvPolynomial.aeval_comp_rename π Mathlib.Algebra.MvPolynomial.Rename
{Ο : Type u_1} {Ο : Type u_2} {R : Type u_4} {S : Type u_5} [CommSemiring R] [CommSemiring S] (k : Ο β Ο) (g : Ο β S) [Algebra R S] : (MvPolynomial.aeval g).comp (MvPolynomial.rename k) = MvPolynomial.aeval (g β k) - MvPolynomial.rename_comp_rename π Mathlib.Algebra.MvPolynomial.Rename
{Ο : Type u_1} {Ο : Type u_2} {Ξ± : Type u_3} {R : Type u_4} [CommSemiring R] (f : Ο β Ο) (g : Ο β Ξ±) : (MvPolynomial.rename g).comp (MvPolynomial.rename f) = MvPolynomial.rename (g β f) - MvPolynomial.killCompl_comp_rename π Mathlib.Algebra.MvPolynomial.Rename
{Ο : Type u_1} {Ο : Type u_2} {R : Type u_4} [CommSemiring R] {f : Ο β Ο} (hf : Function.Injective f) : (MvPolynomial.killCompl hf).comp (MvPolynomial.rename f) = AlgHom.id R (MvPolynomial Ο R) - MvPolynomial.aeval_comp_toMvPolynomial π Mathlib.Algebra.MvPolynomial.Equiv
{R : Type u_1} {S : Type u_2} {Ο : Type u_3} [CommSemiring R] [CommSemiring S] [Algebra R S] (f : Ο β S) (i : Ο) : (MvPolynomial.aeval f).comp (Polynomial.toMvPolynomial i) = Polynomial.aeval (f i) - MvPolynomial.rename_comp_toMvPolynomial π Mathlib.Algebra.MvPolynomial.Equiv
{R : Type u_1} {Ο : Type u_3} {Ο : Type u_4} [CommSemiring R] (f : Ο β Ο) (a : Ο) : (MvPolynomial.rename f).comp (Polynomial.toMvPolynomial a) = Polynomial.toMvPolynomial (f a) - Polynomial.toMvPolynomial_eq_rename_comp π Mathlib.Algebra.MvPolynomial.Equiv
{R : Type u_1} {Ο : Type u_3} [CommSemiring R] (i : Ο) : Polynomial.toMvPolynomial i = (MvPolynomial.rename fun x => i).comp β(MvPolynomial.uniqueAlgEquiv R Unit).symm - MvPolynomial.sumAlgEquiv_comp_rename_inl π Mathlib.Algebra.MvPolynomial.Equiv
(R : Type u) (Sβ : Type v) (Sβ : Type w) [CommSemiring R] : (β(MvPolynomial.sumAlgEquiv R Sβ Sβ)).comp (MvPolynomial.rename Sum.inl) = MvPolynomial.mapAlgHom (Algebra.ofId R (MvPolynomial Sβ R)) - MvPolynomial.sumAlgEquiv_comp_rename_inr π Mathlib.Algebra.MvPolynomial.Equiv
(R : Type u) (Sβ : Type v) (Sβ : Type w) [CommSemiring R] : (β(MvPolynomial.sumAlgEquiv R Sβ Sβ)).comp (MvPolynomial.rename Sum.inr) = IsScalarTower.toAlgHom R (MvPolynomial Sβ R) (MvPolynomial Sβ (MvPolynomial Sβ R)) - Ideal.Quotient.liftβ_comp π 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] (I : Ideal A) [I.IsTwoSided] (f : A ββ[Rβ] B) (hI : β a β I, f a = 0) : (Ideal.Quotient.liftβ I f hI).comp (Ideal.Quotient.mkβ Rβ I) = f - Ideal.Quotient.factorβ_comp_mk π Mathlib.RingTheory.Ideal.Quotient.Operations
(Rβ : Type u_1) {A : Type u_3} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] {I J : Ideal A} [I.IsTwoSided] [J.IsTwoSided] (hIJ : I β€ J) : (Ideal.Quotient.factorβ Rβ hIJ).comp (Ideal.Quotient.mkβ Rβ I) = Ideal.Quotient.mkβ Rβ J - Ideal.Quotient.algHom_ext π 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] {S : Type u_5} [Semiring S] [Algebra Rβ S] β¦f g : A β§Έ I ββ[Rβ] Sβ¦ (h : f.comp (Ideal.Quotient.mkβ Rβ I) = g.comp (Ideal.Quotient.mkβ Rβ I)) : f = g - Ideal.Quotient.factorβ_comp π Mathlib.RingTheory.Ideal.Quotient.Operations
(Rβ : Type u_1) {A : Type u_3} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] {I J : Ideal A} [I.IsTwoSided] [J.IsTwoSided] (hIJ : I β€ J) {K : Ideal A} [K.IsTwoSided] (hJK : J β€ K) : (Ideal.Quotient.factorβ Rβ hJK).comp (Ideal.Quotient.factorβ Rβ hIJ) = Ideal.Quotient.factorβ Rβ β― - 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 - 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 - DoubleQuot.quotQuotEquivQuotOfLE_comp_quotQuotMkβ π Mathlib.RingTheory.Ideal.Quotient.Operations
(R : Type u) {A : Type u_1} [CommSemiring R] [CommRing A] [Algebra R A] {I J : Ideal A} (h : I β€ J) : (β(DoubleQuot.quotQuotEquivQuotOfLEβ R h)).comp (DoubleQuot.quotQuotMkβ R I J) = Ideal.Quotient.mkβ R J - DoubleQuot.quotQuotEquivQuotOfLEβ_comp_mkβ π Mathlib.RingTheory.Ideal.Quotient.Operations
(R : Type u) {A : Type u_1} [CommSemiring R] [CommRing A] [Algebra R A] {I J : Ideal A} (h : I β€ J) : (β(DoubleQuot.quotQuotEquivQuotOfLEβ R h)).comp (Ideal.Quotient.mkβ R (Ideal.map (Ideal.Quotient.mkβ R I) J)) = Ideal.Quotient.factorβ R h - DoubleQuot.quotQuotEquivQuotOfLE_symm_comp_mkβ π Mathlib.RingTheory.Ideal.Quotient.Operations
(R : Type u) {A : Type u_1} [CommSemiring R] [CommRing A] [Algebra R A] {I J : Ideal A} (h : I β€ J) : (β(DoubleQuot.quotQuotEquivQuotOfLEβ R h).symm).comp (Ideal.Quotient.mkβ R J) = DoubleQuot.quotQuotMkβ R I J - DoubleQuot.quotQuotEquivComm_comp_quotQuotMkβ π Mathlib.RingTheory.Ideal.Quotient.Operations
(R : Type u) {A : Type u_1} [CommSemiring R] [CommRing A] [Algebra R A] (I J : Ideal A) : (β(DoubleQuot.quotQuotEquivCommβ R I J)).comp (DoubleQuot.quotQuotMkβ R I J) = DoubleQuot.quotQuotMkβ R J I - AlgHom.FiniteType.of_comp_finiteType π Mathlib.RingTheory.FiniteType
{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} (h : (g.comp f).FiniteType) : g.FiniteType - AlgHom.FiniteType.comp π Mathlib.RingTheory.FiniteType
{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] {g : B ββ[R] C} {f : A ββ[R] B} (hg : g.FiniteType) (hf : f.FiniteType) : (g.comp f).FiniteType - AlgHom.FiniteType.comp_surjective π Mathlib.RingTheory.FiniteType
{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.FiniteType) (hg : Function.Surjective βg) : (g.comp f).FiniteType - DirectLimit.Algebra.lift_comp_of π Mathlib.Algebra.Colimit.DirectLimit
{R : Type u_1} {ΞΉ : Type u_2} [Preorder ΞΉ] {G : ΞΉ β Type u_3} {T : β¦i j : ΞΉβ¦ β i β€ j β Type u_6} {f : (x x_1 : ΞΉ) β (h : x β€ x_1) β T h} [(i j : ΞΉ) β (h : i β€ j) β FunLike (T h) (G i) (G j)] [DirectedSystem G fun x1 x2 x3 => β(f x1 x2 x3)] [IsDirectedOrder ΞΉ] [CommSemiring R] [(i : ΞΉ) β Semiring (G i)] [(i : ΞΉ) β Algebra R (G i)] [β (i j : ΞΉ) (h : i β€ j), AlgHomClass (T h) R (G i) (G j)] [Nonempty ΞΉ] (P : Type u_7) [Semiring P] [Algebra R P] (g : (i : ΞΉ) β G i ββ[R] P) (Hg : β (i j : ΞΉ) (hij : i β€ j) (x : G i), (g j) ((f i j hij) x) = (g i) x) {i : ΞΉ} : (DirectLimit.Algebra.lift G f P g Hg).comp (DirectLimit.Algebra.of G f i) = g i - DirectLimit.Algebra.hom_ext π Mathlib.Algebra.Colimit.DirectLimit
{R : Type u_1} {ΞΉ : Type u_2} [Preorder ΞΉ] {G : ΞΉ β Type u_3} {T : β¦i j : ΞΉβ¦ β i β€ j β Type u_6} {f : (x x_1 : ΞΉ) β (h : x β€ x_1) β T h} [(i j : ΞΉ) β (h : i β€ j) β FunLike (T h) (G i) (G j)] [DirectedSystem G fun x1 x2 x3 => β(f x1 x2 x3)] [IsDirectedOrder ΞΉ] [CommSemiring R] [(i : ΞΉ) β Semiring (G i)] [(i : ΞΉ) β Algebra R (G i)] [β (i j : ΞΉ) (h : i β€ j), AlgHomClass (T h) R (G i) (G j)] [Nonempty ΞΉ] (P : Type u_7) [Semiring P] [Algebra R P] {gβ gβ : DirectLimit G f ββ[R] P} (h : β (i : ΞΉ), gβ.comp (DirectLimit.Algebra.of G f i) = gβ.comp (DirectLimit.Algebra.of G f i)) : gβ = gβ - DirectLimit.Algebra.hom_ext_iff π Mathlib.Algebra.Colimit.DirectLimit
{R : Type u_1} {ΞΉ : Type u_2} [Preorder ΞΉ] {G : ΞΉ β Type u_3} {T : β¦i j : ΞΉβ¦ β i β€ j β Type u_6} {f : (x x_1 : ΞΉ) β (h : x β€ x_1) β T h} [(i j : ΞΉ) β (h : i β€ j) β FunLike (T h) (G i) (G j)] [DirectedSystem G fun x1 x2 x3 => β(f x1 x2 x3)] [IsDirectedOrder ΞΉ] [CommSemiring R] [(i : ΞΉ) β Semiring (G i)] [(i : ΞΉ) β Algebra R (G i)] [β (i j : ΞΉ) (h : i β€ j), AlgHomClass (T h) R (G i) (G j)] [Nonempty ΞΉ] {P : Type u_7} [Semiring P] [Algebra R P] {gβ gβ : DirectLimit G f ββ[R] P} : gβ = gβ β β (i : ΞΉ), gβ.comp (DirectLimit.Algebra.of G f i) = gβ.comp (DirectLimit.Algebra.of G f i) - Algebra.IsPushout.algHom_ext π Mathlib.RingTheory.IsTensorProduct
{R : Type u_1} {S : Type vβ} [CommSemiring R] [CommSemiring S] [Algebra R S] {R' : Type u_6} (S' : Type u_7) [CommSemiring R'] [CommSemiring S'] [Algebra R R'] [Algebra S S'] [Algebra R' S'] [Algebra R S'] [IsScalarTower R R' S'] [IsScalarTower R S S'] [H : Algebra.IsPushout R S R' S'] {A : Type u_8} [Semiring A] [Algebra R A] {f g : S' ββ[R] A} (hβ : f.comp (IsScalarTower.toAlgHom R R' S') = g.comp (IsScalarTower.toAlgHom R R' S')) (hβ : f.comp (IsScalarTower.toAlgHom R S S') = g.comp (IsScalarTower.toAlgHom R S S')) : f = g - Algebra.lift_algHom_comp_left π Mathlib.RingTheory.IsTensorProduct
{R : Type u_1} {S : Type vβ} [CommSemiring R] [CommSemiring S] [Algebra R S] {R' : Type u_6} (S' : Type u_7) [CommSemiring R'] [CommSemiring S'] [Algebra R R'] [Algebra S S'] [Algebra R' S'] [Algebra R S'] [IsScalarTower R R' S'] [IsScalarTower R S S'] [Algebra.IsPushout R S R' S'] {A : Type u_8} [Semiring A] [Algebra R A] (f : S ββ[R] A) (g : R' ββ[R] A) (H : β (x : S) (y : R'), f x * g y = g y * f x) : (Algebra.pushoutDesc S' f g H).comp (IsScalarTower.toAlgHom R S S') = f - Algebra.lift_algHom_comp_right π Mathlib.RingTheory.IsTensorProduct
{R : Type u_1} {S : Type vβ} [CommSemiring R] [CommSemiring S] [Algebra R S] {R' : Type u_6} (S' : Type u_7) [CommSemiring R'] [CommSemiring S'] [Algebra R R'] [Algebra S S'] [Algebra R' S'] [Algebra R S'] [IsScalarTower R R' S'] [IsScalarTower R S S'] [Algebra.IsPushout R S R' S'] {A : Type u_8} [Semiring A] [Algebra R A] (f : S ββ[R] A) (g : R' ββ[R] A) (H : β (x : S) (y : R'), f x * g y = g y * f x) : (Algebra.pushoutDesc S' f g H).comp (IsScalarTower.toAlgHom R R' S') = g - Algebra.IsPushout.cancelBaseChange_symm_comp_lTensor π Mathlib.RingTheory.IsTensorProduct
(R : Type u_1) [CommSemiring R] (A : Type u_8) [CommRing A] [Algebra R A] (C : Type u_11) [CommRing C] [Algebra R C] [Algebra A C] [IsScalarTower R A C] (S : Type u_12) [CommRing S] [Algebra R S] : (β(Algebra.IsPushout.cancelBaseChangeAlg R S A (TensorProduct R S A) C).symm).comp (Algebra.TensorProduct.lTensor S (IsScalarTower.toAlgHom R A C)) = Algebra.TensorProduct.includeLeft - IsAzumaya.mulLeftRight_comp_congr π Mathlib.Algebra.Azumaya.Basic
(R : Type u_1) (A : Type u_2) (B : Type u_3) [CommSemiring R] [Ring A] [Ring B] [Algebra R A] [Algebra R B] (e : A ββ[R] B) : (AlgHom.mulLeftRight R B).comp β(Algebra.TensorProduct.congr e (AlgEquiv.op e)) = (β(LinearEquiv.conjAlgEquiv R βe)).comp (AlgHom.mulLeftRight R A) - AlgCat.hom_comp π Mathlib.Algebra.Category.AlgCat.Basic
(R : Type u) [CommRing R] {A B C : AlgCat R} (f : A βΆ B) (g : B βΆ C) : AlgCat.Hom.hom (CategoryTheory.CategoryStruct.comp f g) = (AlgCat.Hom.hom g).comp (AlgCat.Hom.hom f) - AlgCat.ofHom_comp π Mathlib.Algebra.Category.AlgCat.Basic
(R : Type u) [CommRing R] {X Y Z : Type v} [Ring X] [Ring Y] [Ring Z] [Algebra R X] [Algebra R Y] [Algebra R Z] (f : X ββ[R] Y) (g : Y ββ[R] Z) : AlgCat.ofHom (g.comp f) = CategoryTheory.CategoryStruct.comp (AlgCat.ofHom f) (AlgCat.ofHom g) - TrivSqZeroExt.lift_comp_inlHom π Mathlib.Algebra.TrivSqZeroExt.Basic
{S : Type u_1} {R : Type u} {M : Type v} [CommSemiring S] [Semiring R] [AddCommMonoid M] [Algebra S R] [Module S M] [Module R M] [Module Rα΅α΅α΅ M] [SMulCommClass R Rα΅α΅α΅ M] [IsScalarTower S R M] [IsScalarTower S Rα΅α΅α΅ M] {A : Type u_2} [Semiring A] [Algebra S A] (f : R ββ[S] A) (g : M ββ[S] A) (hg : β (x y : M), g x * g y = 0) (hfg : β (r : R) (x : M), g (r β’ x) = f r * g x) (hgf : β (r : R) (x : M), g (MulOpposite.op r β’ x) = g x * f r) : (TrivSqZeroExt.lift f g hg hfg hgf).comp (TrivSqZeroExt.inlAlgHom S R M) = f - TrivSqZeroExt.map_comp_map π Mathlib.Algebra.TrivSqZeroExt.Basic
{R' : Type u} {M : Type v} [CommSemiring R'] [AddCommMonoid M] [Module R' M] [Module R'α΅α΅α΅ M] [IsCentralScalar R' M] {N : Type u_3} {P : Type u_4} [AddCommMonoid N] [Module R' N] [Module R'α΅α΅α΅ N] [IsCentralScalar R' N] [AddCommMonoid P] [Module R' P] [Module R'α΅α΅α΅ P] [IsCentralScalar R' P] (f : M ββ[R'] N) (g : N ββ[R'] P) : TrivSqZeroExt.map (g ββ f) = (TrivSqZeroExt.map g).comp (TrivSqZeroExt.map f) - TrivSqZeroExt.algHom_ext' π Mathlib.Algebra.TrivSqZeroExt.Basic
{S : Type u_1} {R : Type u} {M : Type v} [CommSemiring S] [Semiring R] [AddCommMonoid M] [Algebra S R] [Module S M] [Module R M] [Module Rα΅α΅α΅ M] [SMulCommClass R Rα΅α΅α΅ M] [IsScalarTower S R M] [IsScalarTower S Rα΅α΅α΅ M] {A : Type u_2} [Semiring A] [Algebra S A] β¦f g : TrivSqZeroExt R M ββ[S] Aβ¦ (hinl : f.comp (TrivSqZeroExt.inlAlgHom S R M) = g.comp (TrivSqZeroExt.inlAlgHom S R M)) (hinr : f.toLinearMap ββ βS (TrivSqZeroExt.inrHom R M) = g.toLinearMap ββ βS (TrivSqZeroExt.inrHom R M)) : f = g - TrivSqZeroExt.algHom_ext'_iff π Mathlib.Algebra.TrivSqZeroExt.Basic
{S : Type u_1} {R : Type u} {M : Type v} [CommSemiring S] [Semiring R] [AddCommMonoid M] [Algebra S R] [Module S M] [Module R M] [Module Rα΅α΅α΅ M] [SMulCommClass R Rα΅α΅α΅ M] [IsScalarTower S R M] [IsScalarTower S Rα΅α΅α΅ M] {A : Type u_2} [Semiring A] [Algebra S A] {f g : TrivSqZeroExt R M ββ[S] A} : f = g β f.comp (TrivSqZeroExt.inlAlgHom S R M) = g.comp (TrivSqZeroExt.inlAlgHom S R M) β§ f.toLinearMap ββ βS (TrivSqZeroExt.inrHom R M) = g.toLinearMap ββ βS (TrivSqZeroExt.inrHom R M) - TrivSqZeroExt.map_comp_inlAlgHom π Mathlib.Algebra.TrivSqZeroExt.Basic
{R' : Type u} {M : Type v} [CommSemiring R'] [AddCommMonoid M] [Module R' M] [Module R'α΅α΅α΅ M] [IsCentralScalar R' M] {N : Type u_3} [AddCommMonoid N] [Module R' N] [Module R'α΅α΅α΅ N] [IsCentralScalar R' N] (f : M ββ[R'] N) : (TrivSqZeroExt.map f).comp (TrivSqZeroExt.inlAlgHom R' R' M) = TrivSqZeroExt.inlAlgHom R' R' N - TrivSqZeroExt.fstHom_comp_map π Mathlib.Algebra.TrivSqZeroExt.Basic
{R' : Type u} {M : Type v} [CommSemiring R'] [AddCommMonoid M] [Module R' M] [Module R'α΅α΅α΅ M] [IsCentralScalar R' M] {N : Type u_3} [AddCommMonoid N] [Module R' N] [Module R'α΅α΅α΅ N] [IsCentralScalar R' N] (f : M ββ[R'] N) : (TrivSqZeroExt.fstHom R' R' N).comp (TrivSqZeroExt.map f) = TrivSqZeroExt.fstHom R' R' M - TrivSqZeroExt.liftEquiv_symm_apply_coe π Mathlib.Algebra.TrivSqZeroExt.Basic
{S : Type u_1} {R : Type u} {M : Type v} [CommSemiring S] [Semiring R] [AddCommMonoid M] [Algebra S R] [Module S M] [Module R M] [Module Rα΅α΅α΅ M] [SMulCommClass R Rα΅α΅α΅ M] [IsScalarTower S R M] [IsScalarTower S Rα΅α΅α΅ M] {A : Type u_2} [Semiring A] [Algebra S A] (F : TrivSqZeroExt R M ββ[S] A) : β(TrivSqZeroExt.liftEquiv.symm F) = (F.comp (TrivSqZeroExt.inlAlgHom S R M), F.toLinearMap ββ βS (TrivSqZeroExt.inrHom R M)) - RingCon.mkβ_comp_factorβ_comp_mkβ π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] {c d : RingCon M} (h : c β€ d) : (RingCon.factorβ R h).comp (RingCon.mkβ R c) = RingCon.mkβ R d - RingCon.Quotient.hom_extβ π 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 g : c.Quotient ββ[R] P} (h : f.comp (RingCon.mkβ R c) = g.comp (RingCon.mkβ R c)) : f = g - RingCon.Quotient.hom_extβ_iff π 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 g : c.Quotient ββ[R] P} : f = g β f.comp (RingCon.mkβ R c) = g.comp (RingCon.mkβ R c) - RingCon.comapQuotientEquivRangeβ π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {N : Type u_2} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring N] [Algebra R N] (c : RingCon M) (f : N ββ[R] M) {d : RingCon N} (h : d = c.comap f) : d.Quotient ββ[R] β₯((RingCon.mkβ R c).comp f).range - RingCon.quotientKerEquivRangeβ_comp_mkβ π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {N : Type u_2} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring N] [Algebra R N] (Ο : M ββ[R] N) : (β(RingCon.quotientKerEquivRangeβ Ο)).comp (RingCon.mkβ R (RingCon.ker βΟ)) = Ο.rangeRestrict - RingCon.liftβEquiv_symm_apply_coe π 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 : c.Quotient ββ[R] P) : β(c.liftβEquiv.symm F) = F.comp (RingCon.mkβ R c) - RingCon.coe_comapQuotientEquivRangeβ_mk π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {N : Type u_2} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring N] [Algebra R N] (c : RingCon M) (f : N ββ[R] M) (x : N) {d : RingCon N} (h : d = c.comap f) : β((c.comapQuotientEquivRangeβ f h) βx) = β(f x) - RingCon.comapQuotientEquivRangeβ_mk π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {N : Type u_2} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring N] [Algebra R N] (c : RingCon M) (f : N ββ[R] M) {d : RingCon N} (h : d = c.comap f) (x : N) : (c.comapQuotientEquivRangeβ f h) βx = β¨β(f x), β―β© - RingCon.coe_comapQuotientEquivRangeβ_symm_mk π Mathlib.RingTheory.Congruence.Hom
{M : Type u_1} {N : Type u_2} {R : Type u_4} [CommSemiring R] [Semiring M] [Algebra R M] [Semiring N] [Algebra R N] (c : RingCon M) (f : N ββ[R] M) (x : N) {d : RingCon N} (h : d = c.comap f) : (c.comapQuotientEquivRangeβ f h).symm β¨β(f x), β―β© = βx - Bialgebra.ofAlgHom π Mathlib.RingTheory.Bialgebra.Basic
{R : Type u_1} {A : Type u_2} [CommSemiring R] [Semiring A] [Algebra R A] (comul : A ββ[R] TensorProduct R A A) (counit : A ββ[R] R) (h_coassoc : (β(Algebra.TensorProduct.assoc R R R A A A)).comp ((Algebra.TensorProduct.map comul (AlgHom.id R A)).comp comul) = (Algebra.TensorProduct.map (AlgHom.id R A) comul).comp comul) (h_rTensor : (Algebra.TensorProduct.map counit (AlgHom.id R A)).comp comul = β(Algebra.TensorProduct.lid R A).symm) (h_lTensor : (Algebra.TensorProduct.map (AlgHom.id R A) counit).comp comul = β(Algebra.TensorProduct.rid R R A).symm) : Bialgebra R A - BialgHom.comp_toAlgHom π Mathlib.RingTheory.Bialgebra.Hom
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [Semiring A] [Semiring B] [Semiring C] [Algebra R A] [Algebra R B] [Algebra R C] [CoalgebraStruct R A] [CoalgebraStruct R B] [CoalgebraStruct R C] (Οβ : B ββc[R] C) (Οβ : A ββc[R] B) : β(Οβ.comp Οβ) = (βΟβ).comp βΟβ - BialgHom.counitAlgHom_comp π Mathlib.RingTheory.Bialgebra.Hom
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Bialgebra R A] [Bialgebra R B] (f : A ββc[R] B) : (Bialgebra.counitAlgHom R B).comp βf = Bialgebra.counitAlgHom R A - BialgHomClass.counitAlgHom_comp π Mathlib.RingTheory.Bialgebra.Hom
{R : Type u_1} {A : Type u_2} {B : Type u_3} {F : Type u_4} [CommSemiring R] [Semiring A] [Bialgebra R A] [Semiring B] [Bialgebra R B] [FunLike F A B] [BialgHomClass F R A B] (f : F) : (Bialgebra.counitAlgHom R B).comp βf = Bialgebra.counitAlgHom R A - BialgHom.ofAlgHom π Mathlib.RingTheory.Bialgebra.Hom
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Bialgebra R A] [Bialgebra R B] (f : A ββ[R] B) (counit_comp : (Bialgebra.counitAlgHom R B).comp f = Bialgebra.counitAlgHom R A) (map_comp_comul : (Algebra.TensorProduct.map f f).comp (Bialgebra.comulAlgHom R A) = (Bialgebra.comulAlgHom R B).comp f) : A ββc[R] B - BialgHom.map_comp_comulAlgHom π Mathlib.RingTheory.Bialgebra.Hom
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Bialgebra R A] [Bialgebra R B] (f : A ββc[R] B) : (Algebra.TensorProduct.map βf βf).comp (Bialgebra.comulAlgHom R A) = (Bialgebra.comulAlgHom R B).comp βf - BialgHom.ofAlgHom_apply π Mathlib.RingTheory.Bialgebra.Hom
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [Semiring A] [Semiring B] [Bialgebra R A] [Bialgebra R B] (f : A ββ[R] B) (counit_comp : (Bialgebra.counitAlgHom R B).comp f = Bialgebra.counitAlgHom R A) (map_comp_comul : (Algebra.TensorProduct.map f f).comp (Bialgebra.comulAlgHom R A) = (Bialgebra.comulAlgHom R B).comp f) (aβ : A) : (BialgHom.ofAlgHom f counit_comp map_comp_comul) aβ = f aβ - BialgHomClass.map_comp_comulAlgHom π Mathlib.RingTheory.Bialgebra.Hom
{R : Type u_1} {A : Type u_2} {B : Type u_3} {F : Type u_4} [CommSemiring R] [Semiring A] [Bialgebra R A] [Semiring B] [Bialgebra R B] [FunLike F A B] [BialgHomClass F R A B] (f : F) : (Algebra.TensorProduct.map βf βf).comp (Bialgebra.comulAlgHom R A) = (Bialgebra.comulAlgHom R B).comp βf - BialgEquiv.ofAlgEquiv π Mathlib.RingTheory.Bialgebra.Equiv
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Semiring B] [Bialgebra R A] [Bialgebra R B] (f : A ββ[R] B) (counit_comp : (Bialgebra.counitAlgHom R B).comp βf = Bialgebra.counitAlgHom R A) (map_comp_comul : (Algebra.TensorProduct.map βf βf).comp (Bialgebra.comulAlgHom R A) = (Bialgebra.comulAlgHom R B).comp βf) : A ββc[R] B - BialgEquiv.ofAlgEquiv_apply π Mathlib.RingTheory.Bialgebra.Equiv
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Semiring B] [Bialgebra R A] [Bialgebra R B] (f : A ββ[R] B) (counit_comp : (Bialgebra.counitAlgHom R B).comp βf = Bialgebra.counitAlgHom R A) (map_comp_comul : (Algebra.TensorProduct.map βf βf).comp (Bialgebra.comulAlgHom R A) = (Bialgebra.comulAlgHom R B).comp βf) (aβ : A) : (BialgEquiv.ofAlgEquiv f counit_comp map_comp_comul) aβ = f.toFun aβ - BialgEquiv.toLinearMap_ofAlgEquiv π Mathlib.RingTheory.Bialgebra.Equiv
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [Semiring A] [Semiring B] [Bialgebra R A] [Bialgebra R B] (f : A ββ[R] B) (counit_comp : (Bialgebra.counitAlgHom R B).comp βf = Bialgebra.counitAlgHom R A) (map_comp_comul : (Algebra.TensorProduct.map βf βf).comp (Bialgebra.comulAlgHom R A) = (Bialgebra.comulAlgHom R B).comp βf) : ββ(BialgEquiv.ofAlgEquiv f counit_comp map_comp_comul).toAlgEquiv = ββf - Bialgebra.counitAlgHom_comp_includeRight π Mathlib.RingTheory.Bialgebra.TensorProduct
{R : Type u_1} {A : Type u_2} {B : Type u_3} [CommSemiring R] [CommSemiring A] [Semiring B] [Algebra R A] [Bialgebra R B] : (AlgHom.restrictScalars R (Bialgebra.counitAlgHom A (TensorProduct R A B))).comp Algebra.TensorProduct.includeRight = (Algebra.ofId R A).comp (Bialgebra.counitAlgHom R B) - Bialgebra.TensorProduct.counitAlgHom_def π Mathlib.RingTheory.Bialgebra.TensorProduct
(R : Type u_1) (S : Type u_2) (A : Type u_3) (B : Type u_4) [CommSemiring R] [CommSemiring S] [Semiring A] [Semiring B] [Bialgebra S A] [Bialgebra R B] [Algebra R A] [Algebra R S] [IsScalarTower R S A] : Bialgebra.counitAlgHom S (TensorProduct R A B) = (β(Algebra.TensorProduct.rid R S S)).comp (Algebra.TensorProduct.map (Bialgebra.counitAlgHom S A) (Bialgebra.counitAlgHom R B)) - Bialgebra.TensorProduct.counit_eq_algHom_toLinearMap π Mathlib.RingTheory.Bialgebra.TensorProduct
(R : Type u_1) (S : Type u_2) (A : Type u_3) (B : Type u_4) [CommSemiring R] [CommSemiring S] [Semiring A] [Semiring B] [Bialgebra S A] [Bialgebra R B] [Algebra R A] [Algebra R S] [IsScalarTower R S A] : CoalgebraStruct.counit = ((β(Algebra.TensorProduct.rid R S S)).comp (Algebra.TensorProduct.map (Bialgebra.counitAlgHom S A) (Bialgebra.counitAlgHom R B))).toLinearMap - Bialgebra.TensorProduct.comulAlgHom_def π Mathlib.RingTheory.Bialgebra.TensorProduct
(R : Type u_1) (S : Type u_2) (A : Type u_3) (B : Type u_4) [CommSemiring R] [CommSemiring S] [Semiring A] [Semiring B] [Bialgebra S A] [Bialgebra R B] [Algebra R A] [Algebra R S] [IsScalarTower R S A] : Bialgebra.comulAlgHom S (TensorProduct R A B) = (β(Algebra.TensorProduct.tensorTensorTensorComm R S R S A A B B)).comp (Algebra.TensorProduct.map (Bialgebra.comulAlgHom S A) (Bialgebra.comulAlgHom R B)) - Bialgebra.TensorProduct.comul_eq_algHom_toLinearMap π Mathlib.RingTheory.Bialgebra.TensorProduct
(R : Type u_1) (S : Type u_2) (A : Type u_3) (B : Type u_4) [CommSemiring R] [CommSemiring S] [Semiring A] [Semiring B] [Bialgebra S A] [Bialgebra R B] [Algebra R A] [Algebra R S] [IsScalarTower R S A] : CoalgebraStruct.comul = ((β(Algebra.TensorProduct.tensorTensorTensorComm R S R S A A B B)).comp (Algebra.TensorProduct.map (Bialgebra.comulAlgHom S A) (Bialgebra.comulAlgHom R B))).toLinearMap - AlgHom.toUnder_comp π Mathlib.Algebra.Category.Ring.Under.Basic
{R : CommRingCat} {A B C : Type u} [CommRing A] [CommRing B] [CommRing C] [Algebra (βR) A] [Algebra (βR) B] [Algebra (βR) C] (f : A ββ[βR] B) (g : B ββ[βR] C) : (g.comp f).toUnder = CategoryTheory.CategoryStruct.comp f.toUnder g.toUnder - CommRingCat.toAlgHom_comp π Mathlib.Algebra.Category.Ring.Under.Basic
{R : CommRingCat} {A B C : CategoryTheory.Under R} (f : A βΆ B) (g : B βΆ C) : CommRingCat.toAlgHom (CategoryTheory.CategoryStruct.comp f g) = (CommRingCat.toAlgHom g).comp (CommRingCat.toAlgHom f) - CommAlgCat.ofHom_comp π Mathlib.Algebra.Category.CommAlgCat.Basic
{R : Type u} [CommRing R] {X Y Z : Type v} [CommRing X] [Algebra R X] [CommRing Y] [Algebra R Y] [CommRing Z] [Algebra R Z] (f : X ββ[R] Y) (g : Y ββ[R] Z) : CommAlgCat.ofHom (g.comp f) = CategoryTheory.CategoryStruct.comp (CommAlgCat.ofHom f) (CommAlgCat.ofHom g) - CommAlgCat.hom_comp π Mathlib.Algebra.Category.CommAlgCat.Basic
{R : Type u} [CommRing R] {A B C : CommAlgCat R} (f : A βΆ B) (g : B βΆ C) : CommAlgCat.Hom.hom (CategoryTheory.CategoryStruct.comp f g) = (CommAlgCat.Hom.hom g).comp (CommAlgCat.Hom.hom f) - AlgHom.FinitePresentation.comp π 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] {g : B ββ[R] C} {f : A ββ[R] B} (hg : g.FinitePresentation) (hf : f.FinitePresentation) : (g.comp f).FinitePresentation - AlgHom.FinitePresentation.of_comp_finiteType π 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} (h : (g.comp f).FinitePresentation) (h' : f.FiniteType) : g.FinitePresentation - 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 - AlgHom.convOne_def π Mathlib.RingTheory.Bialgebra.Convolution
{R : Type u_1} {A : Type u_2} {C : Type u_4} [CommSemiring R] [CommSemiring A] [Semiring C] [Bialgebra R C] [Algebra R A] : 1 = WithConv.toConv ((Algebra.ofId R A).comp (Bialgebra.counitAlgHom R C)) - AlgHom.comp_convMul_distrib π Mathlib.RingTheory.Bialgebra.Convolution
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Semiring C] [Bialgebra R C] [Algebra R A] [Algebra R B] (h : A ββ[R] B) (f g : WithConv (C ββ[R] A)) : h.comp (f * g).ofConv = (WithConv.toConv (h.comp f.ofConv) * WithConv.toConv (h.comp g.ofConv)).ofConv - AlgHom.convMul_def π Mathlib.RingTheory.Bialgebra.Convolution
{R : Type u_1} {A : Type u_2} {C : Type u_4} [CommSemiring R] [CommSemiring A] [Semiring C] [Bialgebra R C] [Algebra R A] (f g : WithConv (C ββ[R] A)) : f * g = WithConv.toConv ((Algebra.TensorProduct.lmul' R).comp ((Algebra.TensorProduct.map f.ofConv g.ofConv).comp (Bialgebra.comulAlgHom R C))) - AlgHom.convMul_comp_bialgHom_distrib π Mathlib.RingTheory.Bialgebra.Convolution
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Semiring C] [Bialgebra R C] [Algebra R A] [Bialgebra R B] (f g : WithConv (C ββ[R] A)) (h : B ββc[R] C) : (f * g).ofConv.comp βh = (WithConv.toConv (f.ofConv.comp βh) * WithConv.toConv (g.ofConv.comp βh)).ofConv - HopfAlgebra.ofAlgHom π Mathlib.RingTheory.HopfAlgebra.Basic
{R : Type u_1} {A : Type u_2} [CommSemiring R] [CommSemiring A] [Bialgebra R A] (antipode : A ββ[R] A) (mul_antipode_rTensor_comul : (Algebra.TensorProduct.lift antipode (AlgHom.id R A) β―).comp (Bialgebra.comulAlgHom R A) = (Algebra.ofId R A).comp (Bialgebra.counitAlgHom R A)) (mul_antipode_lTensor_comul : (Algebra.TensorProduct.lift (AlgHom.id R A) antipode β―).comp (Bialgebra.comulAlgHom R A) = (Algebra.ofId R A).comp (Bialgebra.counitAlgHom R A)) : HopfAlgebra R A - AlgHom.counitAlgHom_comp_antipodeAlgHom π Mathlib.RingTheory.HopfAlgebra.Convolution
{R : Type u_1} {A : Type u_2} [CommSemiring R] [CommSemiring A] [HopfAlgebra R A] : (Bialgebra.counitAlgHom R A).comp (HopfAlgebra.antipodeAlgHom R A) = Bialgebra.counitAlgHom R A - Ideal.Quotient.algHom_ext_iff π Mathlib.RingTheory.TensorProduct.Quotient
{Rβ : Type u_1} {A : Type u_3} [CommSemiring Rβ] [Ring A] [Algebra Rβ A] {I : Ideal A} [I.IsTwoSided] {S : Type u_5} [Semiring S] [Algebra Rβ S] {f g : A β§Έ I ββ[Rβ] S} : f = g β f.comp (Ideal.Quotient.mkβ Rβ I) = g.comp (Ideal.Quotient.mkβ Rβ I) - MvPolynomial.algebraTensorAlgEquiv_symm_comp_aeval π Mathlib.RingTheory.TensorProduct.MvPolynomial
(R : Type u) [CommSemiring R] {Ο : Type u_1} (A : Type u_4) [CommSemiring A] [Algebra R A] : (AlgHom.restrictScalars R β(MvPolynomial.algebraTensorAlgEquiv R A).symm).comp (MvPolynomial.mapAlgHom (Algebra.ofId R A)) = Algebra.TensorProduct.includeRight - 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 - Ideal.ResidueField.liftβ_comp_toAlgHom π 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] (f : A ββ[R] B) (hfβ : I β€ RingHom.ker f) (hfβ : I.primeCompl β€ Submonoid.comap f (IsUnit.submonoid B)) : (Ideal.ResidueField.liftβ I f hfβ hfβ).comp (IsScalarTower.toAlgHom R A I.ResidueField) = f - Ideal.ResidueField.algHom_ext π 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] {f g : I.ResidueField ββ[R] B} (H : f.comp (IsScalarTower.toAlgHom R A I.ResidueField) = g.comp (IsScalarTower.toAlgHom R A I.ResidueField)) : f = g - Ideal.ResidueField.algHom_ext_iff π 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] {f g : I.ResidueField ββ[R] B} : f = g β f.comp (IsScalarTower.toAlgHom R A I.ResidueField) = g.comp (IsScalarTower.toAlgHom R A I.ResidueField) - PrimeSpectrum.piLocalizationToMaximal_comp_toPiLocalization π Mathlib.RingTheory.Spectrum.Maximal.Localization
{R : Type u_1} [CommSemiring R] : (PrimeSpectrum.piLocalizationToMaximal R).comp (PrimeSpectrum.toPiLocalization R) = MaximalSpectrum.toPiLocalization R - diffToIdealOfQuotientCompEq π Mathlib.RingTheory.Derivation.ToSquareZero
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [CommSemiring A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal B) (fβ fβ : A ββ[R] B) (e : (Ideal.Quotient.mkβ R I).comp fβ = (Ideal.Quotient.mkβ R I).comp fβ) : A ββ[R] β₯I - derivationToSquareZeroOfLift π Mathlib.RingTheory.Derivation.ToSquareZero
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [CommSemiring A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal B) [Algebra A B] [IsScalarTower R A B] (hI : I ^ 2 = β₯) (f : A ββ[R] B) (e : (Ideal.Quotient.mkβ R I).comp f = IsScalarTower.toAlgHom R A (B β§Έ I)) : Derivation R A β₯I - derivationToSquareZeroEquivLift π Mathlib.RingTheory.Derivation.ToSquareZero
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [CommSemiring A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal B) [Algebra A B] (hI : I ^ 2 = β₯) [IsScalarTower R A B] : Derivation R A β₯I β { f // (Ideal.Quotient.mkβ R I).comp f = IsScalarTower.toAlgHom R A (B β§Έ I) } - diffToIdealOfQuotientCompEq_apply π Mathlib.RingTheory.Derivation.ToSquareZero
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [CommSemiring A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal B) (fβ fβ : A ββ[R] B) (e : (Ideal.Quotient.mkβ R I).comp fβ = (Ideal.Quotient.mkβ R I).comp fβ) (x : A) : β((diffToIdealOfQuotientCompEq I fβ fβ e) x) = fβ x - fβ x - derivationToSquareZeroOfLift_apply π Mathlib.RingTheory.Derivation.ToSquareZero
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [CommSemiring A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal B) [Algebra A B] (hI : I ^ 2 = β₯) [IsScalarTower R A B] (f : A ββ[R] B) (e : (Ideal.Quotient.mkβ R I).comp f = IsScalarTower.toAlgHom R A (B β§Έ I)) (x : A) : β((derivationToSquareZeroOfLift I hI f e) x) = f x - (algebraMap A B) x - derivationToSquareZeroEquivLift_apply_coe_apply π Mathlib.RingTheory.Derivation.ToSquareZero
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [CommSemiring A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal B) [Algebra A B] (hI : I ^ 2 = β₯) [IsScalarTower R A B] (d : Derivation R A β₯I) (x : A) : β((derivationToSquareZeroEquivLift I hI) d) x = β(d x) + (algebraMap A B) x - derivationToSquareZeroEquivLift_symm_apply_apply_coe π Mathlib.RingTheory.Derivation.ToSquareZero
{R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [CommSemiring A] [CommRing B] [Algebra R A] [Algebra R B] (I : Ideal B) [Algebra A B] (hI : I ^ 2 = β₯) [IsScalarTower R A B] (f : { f // (Ideal.Quotient.mkβ R I).comp f = IsScalarTower.toAlgHom R A (B β§Έ I) }) (c : A) : β(((derivationToSquareZeroEquivLift I hI).symm f) c) = βf c - (algebraMap A B) c - 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 } - CliffordAlgebra.map_comp_map π Mathlib.LinearAlgebra.CliffordAlgebra.Basic
{R : Type u_1} [CommRing R] {Mβ : Type u_4} {Mβ : Type u_5} {Mβ : Type u_6} [AddCommGroup Mβ] [AddCommGroup Mβ] [AddCommGroup Mβ] [Module R Mβ] [Module R Mβ] [Module R Mβ] {Qβ : QuadraticForm R Mβ} {Qβ : QuadraticForm R Mβ} {Qβ : QuadraticForm R Mβ} (f : Qβ βqα΅’ Qβ) (g : Qβ βqα΅’ Qβ) : (CliffordAlgebra.map f).comp (CliffordAlgebra.map g) = CliffordAlgebra.map (f.comp g) - GradedAlgebra.ofAlgHom π Mathlib.RingTheory.GradedAlgebra.Basic
{ΞΉ : Type u_1} {R : Type u_2} {A : Type u_3} [DecidableEq ΞΉ] [AddMonoid ΞΉ] [CommSemiring R] [Semiring A] [Algebra R A] (π : ΞΉ β Submodule R A) [SetLike.GradedMonoid π] (decompose : A ββ[R] DirectSum ΞΉ fun i => β₯(π i)) (right_inv : (DirectSum.coeAlgHom π).comp decompose = AlgHom.id R A) (left_inv : β (i : ΞΉ) (x : β₯(π i)), decompose βx = (DirectSum.of (fun i => β₯(π i)) i) x) : GradedAlgebra π - CliffordAlgebra.involute_comp_involute π Mathlib.LinearAlgebra.CliffordAlgebra.Conjugation
{R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} : CliffordAlgebra.involute.comp CliffordAlgebra.involute = AlgHom.id R (CliffordAlgebra Q) - ExteriorAlgebra.map_comp_map π Mathlib.LinearAlgebra.ExteriorAlgebra.Basic
{R : Type u1} [CommRing R] {M : Type u2} [AddCommGroup M] [Module R M] {N : Type u4} {N' : Type u5} [AddCommGroup N] [Module R N] [AddCommGroup N'] [Module R N'] (f : M ββ[R] N) (g : N ββ[R] N') : (ExteriorAlgebra.map g).comp (ExteriorAlgebra.map f) = ExteriorAlgebra.map (g ββ f) - ExteriorAlgebra.toTrivSqZeroExt_comp_map π Mathlib.LinearAlgebra.ExteriorAlgebra.Basic
{R : Type u1} [CommRing R] {M : Type u2} [AddCommGroup M] [Module R M] {N : Type u4} [AddCommGroup N] [Module R N] [Module Rα΅α΅α΅ M] [IsCentralScalar R M] [Module Rα΅α΅α΅ N] [IsCentralScalar R N] (f : M ββ[R] N) : ExteriorAlgebra.toTrivSqZeroExt.comp (ExteriorAlgebra.map f) = (TrivSqZeroExt.map f).comp ExteriorAlgebra.toTrivSqZeroExt - IntermediateField.map_map π Mathlib.FieldTheory.IntermediateField.Basic
{K : Type u_4} {Lβ : Type u_5} {Lβ : Type u_6} {Lβ : Type u_7} [Field K] [Field Lβ] [Algebra K Lβ] [Field Lβ] [Algebra K Lβ] [Field Lβ] [Algebra K Lβ] (E : IntermediateField K Lβ) (f : Lβ ββ[K] Lβ) (g : Lβ ββ[K] Lβ) : IntermediateField.map g (IntermediateField.map f E) = IntermediateField.map (g.comp f) E
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