The diagonal functor sends and . Since , it is the same as the Constant Functor construction (DaoFP §10.2: uncurrying gives ignoring the second argument).
Sources: DaoFP §10.2 (“The diagonal functor”, “The sum adjunction”, “The product adjunction”), §10.4.
The Coproduct and Product functors are its adjoints:
i.e. and — “we could impress it in clay, in a modern version of cuneiform”. The unit of the sum adjunction is the pair of injections and the counit of the product adjunction the pair of projections (DaoFP Exercise 10.5.1). For a general indexing category, (Limit, Colimit). In a preorder, is the map and its adjoints are Join and Meet.
#check CategoryTheory.Functor.diag -- diag C : C ⥤ C × C
#check CategoryTheory.Limits.colimConstAdj -- colim ⊣ const
#check CategoryTheory.Limits.constLimAdj -- const ⊣ limdiag :: a -> (a, a)
diag x = (x, x)
-- (+) ⊣ Δ: (Either a b -> x) ≅ (a -> x, b -> x) (`either`)
-- Δ ⊣ (×): (x -> a, x -> b) ≅ (x -> (a, b)) (`(&&&)` / `fanout`)