The adjoint triple between presheaves and families

A family over π’žοΈ€ is a set 𝐴(π‘₯) for each object π‘₯, with no action of morphisms. Families form a category Fam(π’žοΈ€): a morphism 𝐴→𝐡 is a function 𝐴(π‘₯)→𝐡(π‘₯) for each π‘₯.

Forgetting the restriction maps of a presheaf gives a functor

π‘ˆ:π–―π—Œπ—π’žοΈ€β†’Fam(π’žοΈ€).

It has both a left and a right adjoint,

FreeβŠ£π‘ˆβŠ£Cofree.

The two adjoints demonstrate different means of forcing a family to be functorial. The right adjoint universally quantifies over morphisms in,

Cofree(𝐴)(π‘₯)=βˆπ‘¦π’žοΈ€(𝑦,π‘₯)→𝐴(𝑦),

with restriction along 𝑓 given by precomposition. The left adjoint instead existentially quantifiers over morphisms out:

Free(𝐴)(π‘₯)=βˆ‘π‘¦π’žοΈ€(π‘₯,𝑦)×𝐴(𝑦),

with restriction acting on the first component. (For Free we ask that π’žοΈ€ have a set of objects, so that this sum is a set and thus Free defines a presheaf.)

presheaf-family-adjoint-triple note entries/category/presheaf-family-adjoint-triple.hel