Documentation

Mathlib.Algebra.Category.Ring.Basic

Category instances for Semiring, Ring, CommSemiring, and CommRing. #

We introduce the bundled categories:

@[inline, reducible]
abbrev SemiRingCat :
Type (u + 1)

The category of semirings.

Equations
Instances For
    @[inline, reducible]
    abbrev SemiRingCatMax :
    Type ((max u1 u2) + 1)

    An alias for Semiring.{max u v}, to deal around unification issues.

    Equations
    Instances For
      @[inline, reducible]
      abbrev SemiRingCat.AssocRingHom (M : Type u_1) (N : Type u_2) [Semiring M] [Semiring N] :
      Type (max u_1 u_2)

      RingHom doesn't actually assume associativity. This alias is needed to make the category theory machinery work. We use the same trick in MonCat.AssocMonoidHom.

      Equations
      Instances For
        Equations
        • One or more equations did not get rendered due to their size.
        instance SemiRingCat.instFunLike {X : SemiRingCat} {Y : SemiRingCat} :
        FunLike (X Y) X Y
        Equations
        • SemiRingCat.instFunLike = CategoryTheory.ConcreteCategory.instFunLike
        Equations
        • =
        theorem SemiRingCat.coe_comp {X : SemiRingCat} {Y : SemiRingCat} {Z : SemiRingCat} {f : X Y} {g : Y Z} :
        @[simp]
        theorem SemiRingCat.ext {X : SemiRingCat} {Y : SemiRingCat} {f : X Y} {g : X Y} (w : ∀ (x : X), f x = g x) :
        f = g

        Construct a bundled SemiRing from the underlying type and typeclass.

        Equations
        Instances For
          @[simp]
          theorem SemiRingCat.coe_of (R : Type u) [Semiring R] :
          (SemiRingCat.of R) = R
          @[simp]
          theorem SemiRingCat.RingEquiv_coe_eq {X : Type u_1} {Y : Type u_1} [Semiring X] [Semiring Y] (e : X ≃+* Y) :
          e = e
          Equations
          • One or more equations did not get rendered due to their size.
          Equations
          • One or more equations did not get rendered due to their size.

          Typecheck a RingHom as a morphism in SemiRingCat.

          Equations
          Instances For
            @[simp]
            theorem SemiRingCat.ofHom_apply {R : Type u} {S : Type u} [Semiring R] [Semiring S] (f : R →+* S) (x : R) :

            Ring equivalence are isomorphisms in category of semirings

            Equations
            Instances For
              @[inline, reducible]
              abbrev RingCat :
              Type (u + 1)

              The category of rings.

              Equations
              Instances For
                instance RingCat.instRingα (X : RingCat) :
                Ring X
                Equations
                instance RingCat.instRing (X : RingCat) :
                Ring X
                Equations
                instance RingCat.instFunLike {X : RingCat} {Y : RingCat} :
                FunLike (X Y) X Y
                Equations
                • RingCat.instFunLike = CategoryTheory.ConcreteCategory.instFunLike
                instance RingCat.instRingHomClass {X : RingCat} {Y : RingCat} :
                RingHomClass (X Y) X Y
                Equations
                • =
                theorem RingCat.coe_comp {X : RingCat} {Y : RingCat} {Z : RingCat} {f : X Y} {g : Y Z} :
                @[simp]
                theorem RingCat.forget_map {X : RingCat} {Y : RingCat} (f : X Y) :
                theorem RingCat.ext {X : RingCat} {Y : RingCat} {f : X Y} {g : X Y} (w : ∀ (x : X), f x = g x) :
                f = g
                def RingCat.of (R : Type u) [Ring R] :

                Construct a bundled RingCat from the underlying type and typeclass.

                Equations
                Instances For
                  def RingCat.ofHom {R : Type u} {S : Type u} [Ring R] [Ring S] (f : R →+* S) :

                  Typecheck a RingHom as a morphism in RingCat.

                  Equations
                  Instances For
                    instance RingCat.instRingα_1 (R : RingCat) :
                    Ring R
                    Equations
                    @[simp]
                    theorem RingCat.coe_of (R : Type u) [Ring R] :
                    (RingCat.of R) = R
                    @[simp]
                    theorem RingCat.RingEquiv_coe_eq {X : Type u_1} {Y : Type u_1} [Ring X] [Ring Y] (e : X ≃+* Y) :
                    e = e
                    Equations
                    • One or more equations did not get rendered due to their size.
                    def CommSemiRingCat :
                    Type (u + 1)

                    The category of commutative semirings.

                    Equations
                    Instances For
                      Equations
                      • CommSemiRingCat.instFunLike = CategoryTheory.ConcreteCategory.instFunLike
                      Equations
                      • =
                      theorem CommSemiRingCat.ext {X : CommSemiRingCat} {Y : CommSemiRingCat} {f : X Y} {g : X Y} (w : ∀ (x : X), f x = g x) :
                      f = g

                      Construct a bundled CommSemiRingCat from the underlying type and typeclass.

                      Equations
                      Instances For

                        Typecheck a RingHom as a morphism in CommSemiRingCat.

                        Equations
                        Instances For
                          @[simp]
                          theorem CommSemiRingCat.RingEquiv_coe_eq {X : Type u_1} {Y : Type u_1} [CommSemiring X] [CommSemiring Y] (e : X ≃+* Y) :
                          e = e
                          @[simp]

                          The forgetful functor from commutative rings to (multiplicative) commutative monoids.

                          Equations
                          • One or more equations did not get rendered due to their size.

                          Ring equivalence are isomorphisms in category of commutative semirings

                          Equations
                          Instances For
                            def CommRingCat :
                            Type (u + 1)

                            The category of commutative rings.

                            Equations
                            Instances For
                              instance CommRingCat.instFunLike {X : CommRingCat} {Y : CommRingCat} :
                              FunLike (X Y) X Y
                              Equations
                              • CommRingCat.instFunLike = CategoryTheory.ConcreteCategory.instFunLike
                              Equations
                              • =
                              theorem CommRingCat.coe_comp {X : CommRingCat} {Y : CommRingCat} {Z : CommRingCat} {f : X Y} {g : Y Z} :
                              @[simp]
                              theorem CommRingCat.ext {X : CommRingCat} {Y : CommRingCat} {f : X Y} {g : X Y} (w : ∀ (x : X), f x = g x) :
                              f = g

                              Construct a bundled CommRingCat from the underlying type and typeclass.

                              Equations
                              Instances For
                                instance CommRingCat.instFunLike' {X : Type u_1} [CommRing X] {Y : CommRingCat} :
                                Equations
                                • CommRingCat.instFunLike' = CategoryTheory.ConcreteCategory.instFunLike
                                instance CommRingCat.instFunLike'' {X : CommRingCat} {Y : Type u_1} [CommRing Y] :
                                FunLike (X CommRingCat.of Y) (X) Y
                                Equations
                                • CommRingCat.instFunLike'' = CategoryTheory.ConcreteCategory.instFunLike
                                Equations
                                • CommRingCat.instFunLike''' = CategoryTheory.ConcreteCategory.instFunLike

                                Typecheck a RingHom as a morphism in CommRingCat.

                                Equations
                                Instances For
                                  @[simp]
                                  theorem CommRingCat.RingEquiv_coe_eq {X : Type u_1} {Y : Type u_1} [CommRing X] [CommRing Y] (e : X ≃+* Y) :
                                  e = e
                                  @[simp]
                                  theorem CommRingCat.coe_of (R : Type u) [CommRing R] :
                                  (CommRingCat.of R) = R

                                  The forgetful functor from commutative rings to (multiplicative) commutative monoids.

                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  @[simp]
                                  theorem RingEquiv.toRingCatIso_hom {X : Type u} {Y : Type u} [Ring X] [Ring Y] (e : X ≃+* Y) :
                                  def RingEquiv.toRingCatIso {X : Type u} {Y : Type u} [Ring X] [Ring Y] (e : X ≃+* Y) :

                                  Build an isomorphism in the category RingCat from a RingEquiv between RingCats.

                                  Equations
                                  Instances For

                                    Build an isomorphism in the category CommRingCat from a RingEquiv between CommRingCats.

                                    Equations
                                    Instances For

                                      Build a RingEquiv from an isomorphism in the category RingCat.

                                      Equations
                                      Instances For

                                        Build a RingEquiv from an isomorphism in the category CommRingCat.

                                        Equations
                                        Instances For
                                          def ringEquivIsoRingIso {X : Type u} {Y : Type u} [Ring X] [Ring Y] :

                                          Ring equivalences between RingCats are the same as (isomorphic to) isomorphisms in RingCat.

                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For

                                            Ring equivalences between CommRingCats are the same as (isomorphic to) isomorphisms in CommRingCat.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For