Documentation

Poly.UvPoly.Basic

Polynomial Functor #

The Universal property of polynomial functors is mediated through the partial product diagram in below.

     X
     ^
     |
     |
     • -------fst-----> P @ X
     |                    |
     |        (pb)        | P.fstProj X
     v                    v
     E ---------------->  B
              P.p

-- TODO: there are various sorry-carrying proofs in below which require instances of ExponentiableMorphism for various constructions on morphisms. They need to be defined in Poly.Exponentiable.

structure CategoryTheory.UvPoly {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasPullbacks C] (E B : C) :
Type u_2

P : UvPoly C is a polynomial functors in a single variable

Instances For

    The constant polynomial in many variables: for this we need the initial object

    Equations
    Instances For
      def CategoryTheory.UvPoly.prod {C : Type u_2} [Category.{u_3, u_2} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B E' B' : C} (P : UvPoly E B) (Q : UvPoly E' B') [Limits.HasBinaryCoproducts C] :
      UvPoly ((E B') ⨿ B E') (B B')

      The product of two polynomials in a single variable.

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

        For a category C with binary products, P.functor : C ⥤ C is the functor associated to a single variable polynomial P : UvPoly E B.

        Equations
        Instances For

          The evaluation function of a polynomial P at an object X.

          Equations
          Instances For

            The evaluation function of a polynomial P at an object X.

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

              The identity polynomial functor in single variable.

              Equations
              Instances For

                The functor associated to the identity polynomial is isomorphic to the identity functor.

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

                  Evaluating the identity polynomial at an object X is isomorphic to B × X.

                  Equations
                  Instances For
                    def CategoryTheory.UvPoly.fstProj {C : Type u_2} [Category.{u_3, u_2} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B : C} (P : UvPoly E B) (X : C) :
                    P @ X B

                    The fstProjection morphism from ∑ b : B, X ^ (E b) to B again.

                    Equations
                    Instances For

                      A vertical map ρ : P.p ⟶ Q.p of polynomials (i.e. a commutative triangle)

                          ρ
                      E ----> F
                       \     /
                        \   /
                         \ /
                          B
                      

                      induces a natural transformation Q.functor ⟶ P.functor obtained by pasting the following 2-cells

                                    Q.p
                      C --- >  C/F ----> C/B -----> C
                      |         |          |        |
                      |   ↙     | ρ*  ≅    |   =    |
                      |         v          v        |
                      C --- >  C/E ---->  C/B ----> C
                                    P.p
                      
                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        def CategoryTheory.UvPoly.cartesianNaturalTrans {C : Type u_2} [Category.{u_3, u_2} C] [Limits.HasPullbacks C] {E B D F : C} [Limits.HasBinaryProducts C] (P : UvPoly E B) (Q : UvPoly F D) (δ : B D) (φ : E F) (pb : IsPullback P.p φ δ Q.p) :

                        A cartesian map of polynomials

                                   P.p
                              E -------->  B
                              |            |
                           φ  |            | δ
                              v            v
                              F -------->  D
                                   Q.p
                        

                        induces a natural transformation between their associated functors obtained by pasting the following 2-cells

                                      Q.p
                        C --- >  C/F ----> C/D -----> C
                        |         |          |        |
                        |   ↗     | φ*  ≅    | δ* ↗   |
                        |         v          v        |
                        C --- >  C/E ---->  C/B ----> C
                                      P.p
                        
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          structure CategoryTheory.UvPoly.Hom {C : Type u_2} [Category.{u_3, u_2} C] [Limits.HasPullbacks C] {E B F D : C} (P : UvPoly E B) (Q : UvPoly F D) :
                          Type (max u_2 u_3)

                          A morphism from a polynomial P to a polynomial Q is a pair of morphisms e : E ⟶ E' and b : B ⟶ B' such that the diagram

                                E -- P.p ->  B
                                ^            |
                             ρ  |            |
                                |     ψ      |
                                Pb --------> B
                                |            |
                             φ  |            | δ
                                v            v
                                F -- Q.p ->  D
                          

                          is a pullback square.

                          Instances For

                            The identity morphism in the category of polynomials.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              def CategoryTheory.UvPoly.Hom.comp {C : Type u_2} [Category.{u_3, u_2} C] [Limits.HasPullbacks C] {E B F D N M : C} {P : UvPoly E B} {Q : UvPoly F D} {R : UvPoly N M} (f : P.Hom Q) (g : Q.Hom R) :
                              P.Hom R

                              The composition of morphisms in the category of polynomials.

                              Equations
                              Instances For

                                Bundling up the the polynomials over different bases to form the underlying type of the category of polynomials.

                                Instances For
                                  Equations
                                  Instances For

                                    The category of polynomial functors in a single variable.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    def CategoryTheory.Total.ofHom {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasPullbacks C] {E B E' B' : C} (P : UvPoly E B) (Q : UvPoly E' B') (α : P.Hom Q) :
                                    Equations
                                    Instances For

                                      Scaling a polynomial P by an object S is isomorphic to the product of const S and the polynomial P.

                                      Equations
                                      Instances For

                                        The counit of the adjunction pullback P.p ⊣ pushforward P.p evaluated (star E).obj X.

                                        Equations
                                        Instances For

                                          The partial product fan associated to a polynomial P : UvPoly E B and an object X : C.

                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For
                                            @[simp]
                                            @[simp]
                                            theorem CategoryTheory.UvPoly.PartialProduct.fan_pt {C : Type u} [Category.{v, u} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B : C} (P : UvPoly E B) (X : C) :
                                            (fan P X).pt = P @ X

                                            P.PartialProduct.fan is in fact a limit fan; this provides the univeral mapping property of the polynomial functor.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              @[reducible, inline]
                                              abbrev CategoryTheory.UvPoly.lift {C : Type u} [Category.{v, u} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B Γ X : C} (P : UvPoly E B) (b : Γ B) (e : Limits.pullback b P.p X) :
                                              Γ P @ X

                                              Morphisms b : Γ ⟶ B and e : pullback b P.p ⟶ X induce a morphism Γ ⟶ P @ X which is the lift of the partial product fan.

                                              Equations
                                              Instances For
                                                @[simp]
                                                theorem CategoryTheory.UvPoly.lift_fst {C : Type u} [Category.{v, u} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B Γ X : C} {P : UvPoly E B} {b : Γ B} {e : Limits.pullback b P.p X} :
                                                def CategoryTheory.UvPoly.proj {C : Type u} [Category.{v, u} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B Γ X : C} (P : UvPoly E B) (f : Γ P @ X) :
                                                (b : Γ B) × (Limits.pullback b P.p X)

                                                A morphism f : Γ ⟶ P @ X projects to a morphism b : Γ ⟶ B and a morphism e : pullback b P.p ⟶ X.

                                                Equations
                                                Instances For
                                                  @[simp]
                                                  theorem CategoryTheory.UvPoly.proj_fst {C : Type u} [Category.{v, u} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B Γ X : C} {P : UvPoly E B} {f : Γ P @ X} :
                                                  @[simp]

                                                  The second component of proj is a comparison map of pullbacks composed with ε P X ≫ prod.snd

                                                  def CategoryTheory.UvPoly.compDom {C : Type u} [Category.{v, u} C] [Limits.HasTerminal C] [Limits.HasPullbacks C] {E B D A : C} (P : UvPoly E B) (Q : UvPoly D A) :
                                                  C

                                                  The domain of the composition of two polynomials. See UvPoly.comp.

                                                  Equations
                                                  Instances For
                                                    def CategoryTheory.UvPoly.comp {C : Type u} [Category.{v, u} C] [Limits.HasPullbacks C] [Limits.HasTerminal C] {E B D A : C} (P : UvPoly E B) (Q : UvPoly D A) :
                                                    UvPoly (P.compDom Q) (P @ A)
                                                    Equations
                                                    • One or more equations did not get rendered due to their size.
                                                    Instances For

                                                      The associated functor of the composition of two polynomials is isomorphic to the composition of the associated functors.

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