Documentation

Mathlib.Algebra.Category.CommAlgCat.Basic

The category of commutative algebras over a commutative ring #

This file defines the bundled category CommAlgCat of commutative algebras over a fixed commutative ring R along with the forgetful functors to CommRingCat and AlgCat.

structure CommAlgCat (R : Type u) [CommRing R] :
Type (max u (v + 1))

The category of R-algebras and their morphisms.

Instances For
    @[reducible, inline]
    abbrev CommAlgCat.of (R : Type u) [CommRing R] (X : Type v) [CommRing X] [Algebra R X] :

    The object in the category of R-algebras associated to a type equipped with the appropriate typeclasses. This is the preferred way to construct a term of CommAlgCat R.

    Equations
      Instances For
        theorem CommAlgCat.coe_of (R : Type u) [CommRing R] (X : Type v) [CommRing X] [Algebra R X] :
        (of R X) = X
        structure CommAlgCat.Hom {R : Type u} [CommRing R] (A B : CommAlgCat R) :

        The type of morphisms in CommAlgCat R.

        • hom' : A →ₐ[R] B

          The underlying algebra map.

        Instances For
          theorem CommAlgCat.Hom.ext {R : Type u} {inst✝ : CommRing R} {A B : CommAlgCat R} {x y : A.Hom B} (hom' : x.hom' = y.hom') :
          x = y
          theorem CommAlgCat.Hom.ext_iff {R : Type u} {inst✝ : CommRing R} {A B : CommAlgCat R} {x y : A.Hom B} :
          x = y x.hom' = y.hom'
          @[reducible, inline]
          abbrev CommAlgCat.Hom.hom {R : Type u} [CommRing R] {A B : CommAlgCat R} (f : A.Hom B) :
          A →ₐ[R] B

          Turn a morphism in CommAlgCat back into an AlgHom.

          Equations
            Instances For
              @[reducible, inline]
              abbrev CommAlgCat.ofHom {R : Type u} [CommRing R] {X Y : Type v} [CommRing X] [Algebra R X] [CommRing Y] [Algebra R Y] (f : X →ₐ[R] Y) :
              of R X of R Y

              Typecheck an AlgHom as a morphism in CommAlgCat.

              Equations
                Instances For
                  def CommAlgCat.Hom.Simps.hom {R : Type u} [CommRing R] (A B : CommAlgCat R) (f : A.Hom B) :
                  A →ₐ[R] B

                  Use the ConcreteCategory.hom projection for @[simps] lemmas.

                  Equations
                    Instances For

                      The results below duplicate the ConcreteCategory simp lemmas, but we can keep them for dsimp.

                      @[simp]
                      theorem CommAlgCat.hom_comp {R : Type u} [CommRing R] {A B C : CommAlgCat R} (f : A B) (g : B C) :
                      theorem CommAlgCat.hom_ext {R : Type u} [CommRing R] {A B : CommAlgCat R} {f g : A B} (hf : Hom.hom f = Hom.hom g) :
                      f = g
                      theorem CommAlgCat.hom_ext_iff {R : Type u} [CommRing R] {A B : CommAlgCat R} {f g : A B} :
                      @[simp]
                      theorem CommAlgCat.hom_ofHom {R : Type u} [CommRing R] {X Y : Type v} [CommRing X] [Algebra R X] [CommRing Y] [Algebra R Y] (f : X →ₐ[R] Y) :
                      @[simp]
                      theorem CommAlgCat.ofHom_hom {R : Type u} [CommRing R] {A B : CommAlgCat R} (f : A B) :
                      @[simp]
                      theorem CommAlgCat.ofHom_comp {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) :
                      theorem CommAlgCat.ofHom_apply {R : Type u} [CommRing R] {X Y : Type v} [CommRing X] [Algebra R X] [CommRing Y] [Algebra R Y] (f : X →ₐ[R] Y) (x : X) :
                      def CommAlgCat.isoMk {R : Type u} [CommRing R] {X Y : Type v} {x✝ : CommRing X} {x✝¹ : CommRing Y} {x✝² : Algebra R X} {x✝³ : Algebra R Y} (e : X ≃ₐ[R] Y) :
                      of R X of R Y

                      Build an isomorphism in the category CommAlgCat R from an AlgEquiv between commutative Algebras.

                      Equations
                        Instances For
                          @[simp]
                          theorem CommAlgCat.isoMk_inv {R : Type u} [CommRing R] {X Y : Type v} {x✝ : CommRing X} {x✝¹ : CommRing Y} {x✝² : Algebra R X} {x✝³ : Algebra R Y} (e : X ≃ₐ[R] Y) :
                          (isoMk e).inv = ofHom e.symm
                          @[simp]
                          theorem CommAlgCat.isoMk_hom {R : Type u} [CommRing R] {X Y : Type v} {x✝ : CommRing X} {x✝¹ : CommRing Y} {x✝² : Algebra R X} {x✝³ : Algebra R Y} (e : X ≃ₐ[R] Y) :
                          (isoMk e).hom = ofHom e
                          def CommAlgCat.ofIso {R : Type u} [CommRing R] {A B : CommAlgCat R} (i : A B) :
                          A ≃ₐ[R] B

                          Build an AlgEquiv from an isomorphism in the category CommAlgCat R.

                          Equations
                            Instances For
                              @[simp]
                              theorem CommAlgCat.ofIso_symm_apply {R : Type u} [CommRing R] {A B : CommAlgCat R} (i : A B) (a : B) :
                              @[simp]
                              theorem CommAlgCat.ofIso_apply {R : Type u} [CommRing R] {A B : CommAlgCat R} (i : A B) (a : A) :
                              def CommAlgCat.isoEquivAlgEquiv {R : Type u} [CommRing R] {X Y : Type v} [CommRing X] [Algebra R X] [CommRing Y] [Algebra R Y] :
                              (of R X of R Y) X ≃ₐ[R] Y

                              Algebra equivalences between Algebras are the same as isomorphisms in CommAlgCat.

                              Equations
                                Instances For
                                  @[simp]
                                  theorem CommAlgCat.isoEquivAlgEquiv_apply {R : Type u} [CommRing R] {X Y : Type v} [CommRing X] [Algebra R X] [CommRing Y] [Algebra R Y] (i : of R X of R Y) :
                                  @[simp]

                                  Universe lift functor for commutative algebras.

                                  Equations
                                    Instances For

                                      The universe lift functor for commutative algebras is fully faithful.

                                      Equations
                                        Instances For

                                          The category of commutative algebras over a commutative ring R is the same as commutative rings under R.

                                          Equations
                                            Instances For
                                              @[simp]
                                              theorem commAlgCatEquivUnder_unitIso (R : CommRingCat) :
                                              (commAlgCatEquivUnder R).unitIso = CategoryTheory.NatIso.ofComponents (fun (A : CommAlgCat R) => CommAlgCat.isoMk (let __RingEquiv := RingEquiv.refl A; { toEquiv := __RingEquiv.toEquiv, map_mul' := , map_add' := , commutes' := }))
                                              @[simp]
                                              theorem commAlgCatEquivUnder_counitIso (R : CommRingCat) :
                                              (commAlgCatEquivUnder R).counitIso = CategoryTheory.Iso.refl ({ obj := fun (A : CategoryTheory.Under R) => CommAlgCat.of R A.right, map := fun {A B : CategoryTheory.Under R} (f : A B) => CommAlgCat.ofHom (CommRingCat.toAlgHom f), map_id := , map_comp := }.comp { obj := fun (A : CommAlgCat R) => R.mkUnder A, map := fun {A B : CommAlgCat R} (f : A B) => (CommAlgCat.Hom.hom f).toUnder, map_id := , map_comp := })