Polynomial functors and polynomial monads Nicola Gambino July 13th, 2009
� � � Example A natural numbers object in a category C consists of ◮ ( N , 1 + N → N ) such that for all ◮ ( X , 1 + X → X ) there exists a unique θ : N → X such that 1 + θ 1 + N 1 + X � X N θ commutes.
The theory of polynomial functors ◮ Similar analysis for a wide class of inductively-defined sets ◮ Applications to free constructions
Outline 1. Background ◮ Endofunctors and their algebras ◮ Locally cartesian closed categories 2. Polynomial functors in a single variable 3. Polynomial functors in many variables 4. Free monads
� � Endofunctors and their algebras Let P : C → C be an endofunctor. The category P -Alg is defined as follows. ◮ Objects: ( X , PX → X ) P θ � PX ′ PX ◮ Maps: � X ′ X θ Forgetful functor U : P -Alg → C .
� � � An initial algebra for P is an initial object in P -Alg. Explicitly: ◮ ( W , PW → W ) such that for all ◮ ( X , PX → X ) there exists a unique θ : W → X such that P θ PW PX � X W θ commutes. ∼ = � W . Lambek’s Lemma. PW
Example The object of natural numbers is the initial algebra for � C C � 1 + X X � 1 + X ∼ X 0 X 1 Idea: = + ���� ���� 0-ary operation 1-ary operation
� � Locally cartesian closed categories Let E be a category. For A ∈ E , the slice category E / A is defined as follows. ◮ Objects: ( X , X → A ) X X ′ � � � ������� � ◮ Maps: � � � � A
Definition. We say that E is locally cartesian closed if ◮ E has finite limits ◮ E / A is a cartesian closed category for all A ∈ E . We also assume that E has finite disjoint coproducts. Examples: ◮ Set ◮ Variants of Top ◮ Psh ( C ) ◮ Sh ( C , J ) ◮ Every elementary topos
The internal language of E is an extensional dependent type theory with rules for the following forms of type: B A , 0 , 1 , Id A ( a , b ) , A × B , A + B , � � B a , B a a ∈ A a ∈ A Idea. Identify ( X , X → A ) with ( X a | a ∈ A ) .
Given f : B → A , we can define three functors. ◮ Reindexing : � � ( X a | a ∈ A ) �→ X f ( b ) | b ∈ B ◮ Sum : � � � ( X b | b ∈ B ) �→ X b | a ∈ A b ∈ B a ◮ Product : � � � ( X b | b ∈ B ) �→ X b | a ∈ A . b ∈ B a
Polynomial functors in a single variable Given f : B → A , we define the polynomial functor P f � E E � � a ∈ A X B a X � Idea. ( B a | a ∈ A ) as a signature.
W-types The initial algebra for P f : E → E ◮ ( W , sup W : P f ( W ) → W ) is called the W-type of f : B → A . For a ∈ A and h ∈ W B a , we think of sup W ( a , h ) ∈ W as the tree ������ ������ � � � � � � � � � � � � . . . h ( b ) h ( b ′ ) ������������ � � � � � � � � � � � � sup W ( a , h )
Examples of W-types Binary trees � E E � 1 + X 2 X � Second number class � E E � 1 + X + X N X � List ( A ) � E E � 1 + A × X X �
� � Polynomial functors in many variables Given f � A B � � � � σ � τ � � � � � � � � � � � � I I we define the polynomial functor P f � E / I E / I � � � � � � � X i | i ∈ I b ∈ B a X σ ( b ) | i ∈ I a ∈ A i Idea. ( B a | a ∈ A ) as an I -sorted signature
� � Examples Polynomial functors in one variable f � A B � � ������� � � � � � � 1 1 Linear functors M M � � � � � σ τ � � � � � � � � � � � � I I � � � ( X i | i ∈ I ) �− → X σ ( m ) | i ∈ I m ∈ M i
� � � General tree types The initial algebra for P f : E / I → E / I sup W W P f ( W ) W � � �������� � , � ◮ � � � � � � I I is called the general tree type associated to f : B → A .
For a ∈ A i and h ∈ � b ∈ B a W σ ( b ) , we think of sup W i ( a , h ) ∈ W τ ( a ) as the tree � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � . . . h ( b ) : σ ( b ) h ( b ′ ) : σ ( b ′ ) ����������� � � � � � � � � � � � � sup W i ( a , h ) : τ ( a ) Note. a ∈ A i iff τ ( a ) = i .
Examples of general trees ◮ � � N i | i ∈ 2 , where N 0 = { n ∈ N | n is even } , N 1 = { n ∈ N | n is odd } . ◮ � � List n ( A ) | n ∈ N , where List n ( A ) = { t ∈ List ( A ) | length ( t ) = n } . ◮ The free Grothendieck site generated by a coverage.
Theorem [G. & Hyland 2004] Let E be a locally cartesian closed category with finite disjoint coproducts and W-types. ◮ Every polynomial functor P : E / I → E / I has an initial algebra.
Basic properties 1. Identity functors are polynomial 2. Composites of polynomial functors are polynomial 3. The functor � E / I Poly ( E / I ) � P ( 1 ) P � is a Grothendieck fibration.
� Free monads Let P : C → C be an endofunctor. We say that P admits a free monad if the forgetful functor P -Alg U C has a left adjoint F : C → P -Alg. The monad ( T , η, µ ) resulting from F ⊣ U is called the free monad on P .
Theorem [G. and Kock 2009] Let E be a locally cartesian closed category with finite disjoint coproducts and W-types. 1. Every polynomial functor P : E / I → E / I admits a free monad. 2. The free monad ( T , η, µ ) on a polynomial functor is a polynomial monad.
Proof of Part 1. If F : C → P -Alg exists, it has to be F ( X ) = µ Y . X + PY . But the endofunctor � E / I E / I � X + P ( Y ) Y � is polynomial, since P is so. Hence, it must have an initial algebra.
� � Sketch of the proof of Part 2. We need to show that T is polynomial. Let P : E / I → E / I be given by f � A B � � � � � τ σ � � � � � � � � � � � � I I Let us temporarily assume that T : E / I → E / I is given by g � C D � � � φ ψ � � � � � � � � � � � � � � I I
We have TX = µ Y . X + P ( Y ) Hence, by Lambek’s Lemma, we must have X + P ( TX ) ∼ = TX Unfolding the definitions of P and T , we get equations. For example, we get � � C i ∼ = { i } + C σ ( b ) ( i ∈ I ) a ∈ A i b ∈ B a All of these equations can be solved via general tree types.
� � � � � � � We also need to show that η : Id ⇒ T and µ : T 2 ⇒ T are cartesian. For this, use the following general fact. Proposition. The following are equivalent. 1. φ : P g ⇒ P f cartesian natural transformation. g I D C I �� 2. A diagram � I I B A f
Further topics ◮ Polynomial functors P : E / I → E / J ◮ The double category of polynomial functors ◮ Base change ◮ Relationship to operads and multicategories
Reference ◮ N. Gambino and J. Kock Polynomial functors and polynomial monads ArXiv, 2009
Recommend
More recommend