% (find-LATEX "2019kan-extensions.tex")
% (defun c () (interactive) (find-LATEXsh "lualatex -record 2019kan-extensions.tex" :end))
% (defun d () (interactive) (find-pdf-page "~/LATEX/2019kan-extensions.pdf"))
% (defun d () (interactive) (find-pdftools-page "~/LATEX/2019kan-extensions.pdf"))
% (defun e () (interactive) (find-LATEX "2019kan-extensions.tex"))
% (defun u () (interactive) (find-latex-upload-links "2019kan-extensions"))
% (find-pdf-page   "~/LATEX/2019kan-extensions.pdf")
% (find-sh0 "cp -v  ~/LATEX/2019kan-extensions.pdf /tmp/")
% (find-sh0 "cp -v  ~/LATEX/2019kan-extensions.pdf /tmp/pen/")
%   file:///home/edrx/LATEX/2019kan-extensions.pdf
%               file:///tmp/2019kan-extensions.pdf
%           file:///tmp/pen/2019kan-extensions.pdf
% http://angg.twu.net/LATEX/2019kan-extensions.pdf
% (find-LATEX "2019.mk")

\documentclass[oneside]{book}
\usepackage[colorlinks,urlcolor=DarkRed,citecolor=brown]{hyperref} % (find-es "tex" "hyperref")
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{pict2e}
\usepackage[x11names,svgnames]{xcolor} % (find-es "tex" "xcolor")
%\usepackage{colorweb}                 % (find-es "tex" "colorweb")
%\usepackage{tikz}
%
% (find-dn6 "preamble6.lua" "preamble0")
\usepackage{proof}   % For derivation trees ("%:" lines)
\input diagxy        % For 2D diagrams ("%D" lines)
\xyoption{curve}     % For the ".curve=" feature in 2D diagrams
%
\usepackage{edrx15}               % (find-LATEX "edrx15.sty")
\input edrxaccents.tex            % (find-LATEX "edrxaccents.tex")
\input edrxchars.tex              % (find-LATEX "edrxchars.tex")
\input edrxheadfoot.tex           % (find-LATEX "edrxheadfoot.tex")
\input edrxgac2.tex               % (find-LATEX "edrxgac2.tex")
%
\usepackage[backend=biber,
   style=alphabetic]{biblatex} % (find-es "tex" "biber")
\addbibresource{catsem-u.bib}  % (find-LATEX "catsem-u.bib")
%
\usepackage[a4paper]{geometry}             % (find-es "tex" "geometry")
\begin{document}

\catcode`\^^J=10
\directlua{dofile "dednat6load.lua"}  % (find-LATEX "dednat6load.lua")

% %L dofile "edrxtikz.lua"  -- (find-LATEX "edrxtikz.lua")
% %L dofile "edrxpict.lua"  -- (find-LATEX "edrxpict.lua")
% \pu

\def\Lan{\text{Lan}}
\def\Ran{\text{Ran}}
\def\sfC{\mathsf{C}}
\def\sfD{\mathsf{D}}
\def\sfE{\mathsf{E}}



% (find-books "__cats/__cats.el" "riehl")
% (find-riehlccpage (+ 18  44) "1.7. The 2-category of categories")
% (find-riehlcctext (+ 18  44) "1.7. The 2-category of categories")
% (find-riehlccpage (+ 18  45) "Lemma 1.7.4 (horizontal composition)")
% (find-riehlcctext (+ 18  45) "Lemma 1.7.4 (horizontal composition)")
% (find-riehlccpage (+ 18  46) "whiskering")
% (find-riehlcctext (+ 18  46) "whiskering")
% (find-riehlccpage (+ 18 136) "4.5. Adjunctions, limits, and colimits")
% (find-riehlccpage (+ 18 189) "6. All Concepts are Kan Extensions")
% (find-riehlccpage (+ 18 190) "6.1. Kan extensions")
% (find-riehlccpage (+ 18 190) "Dually, a right Kan")
% (find-riehlcctext (+ 18 190) "Dually, a right Kan")



In \cite{Riehl}, sec.6.1, right Kan extensions are explained using the
two diagrams below. The notation of cells is explained in sec.1.7 of
the book, and modulo the types --- that can be inferred from the
diagrams --- a right Kan extension of $K$ along $K$ is a pair $(\Ran_K
F,ε)$ such that for all $(G,α)$ there is a unique $β$ making
everything commute.
%
%D diagram riehl-ran-1
%D 2Dx     100 +40 +40
%D 2D  100 A0 ---> A2
%D 2D        ->  ->
%D 2D  +40     A1
%D 2D
%D ren A0 A1 A2 ==> \mathsf{C} \mathsf{D} \mathsf{E}
%D
%D (( A0 A2 -> .plabel= a F
%D    A0 A1 -> .plabel= l K
%D    A1 A2 -> .plabel= r G    .curve= _25pt
%D    A1 A2 varrownodes nil 17 nil <= .slide= -5pt .plabel= r δ
%D ))
%D enddiagram
%D
%D diagram riehl-ran-factored
%D 2Dx     100 +40 +40
%D 2D  100 A0 ---> A2
%D 2D        ->  -> ^
%D 2D  +40     A1 -/
%D 2D
%D ren A0 A1 A2 ==> \mathsf{C} \mathsf{D} \mathsf{E}
%D
%D (( A0 A2 -> .plabel= a F
%D    A0 A1 -> .plabel= l K
%D    A1 A2 -> .plabel= m \Ran_KF
%D    A1 A2 -> .plabel= r G    .curve= _25pt
%D    A0 A2 varrownodes 35 17 nil <=              .plabel= l ε
%D    A1 A2 varrownodes 20 17 nil <= .slide=  5pt .plabel= r β
%D ))
%D enddiagram
%D
$$\pu
  \diag{riehl-ran-1}
  \quad
  \diag{riehl-ran-factored}
$$

If we specialize $\sfE$ to $\Set$ and do some renamings, the diagram
becomes:
%
%D diagram my-ran-1
%D 2Dx     100 +40 +40
%D 2D  100 A0      A2
%D 2D
%D 2D  +40     A1
%D 2D
%D ren A0 A1 A2 ==> \catA \catB \Set
%D
%D (( A0 A2 -> .plabel= a D
%D    A0 A1 -> .plabel= l f
%D    A1 A2 -> .plabel= r C    .curve= _25pt
%D    A1 A2 varrownodes nil 17 nil <= .slide= -5pt .plabel= r α
%D ))
%D enddiagram
%D
%D diagram my-ran-2
%D 2Dx     100 +40 +40
%D 2D  100 A0      A2
%D 2D
%D 2D  +40     A1
%D 2D
%D ren A0 A1 A2 ==> \catA \catB \Set
%D
%D (( A0 A2 -> .plabel= a D
%D    A0 A1 -> .plabel= l f
%D    A1 A2 -> .plabel= m \Ran_fD
%D    A1 A2 -> .plabel= r C    .curve= _25pt
%D    A0 A2 varrownodes 35 17 nil <=              .plabel= l ε
%D    A1 A2 varrownodes 20 17 nil <= .slide=  5pt .plabel= r β
%D ))
%D enddiagram
%D
$$\pu
  \diag{my-ran-1}
  \quad
  \diag{my-ran-2}
$$
%
and if we change its {\sl shape} to stress that $ε$ ``looks like'' a
counit map and $\Ran_f$ ``looks like'' the right adjoint to the
functor $f^*$, we get this:
%
%D diagram geo-morph
%D 2Dx     100     +30 +35   +30     
%D 2D  100 L0      C0  C1    R1
%D 2D                          
%D 2D  +35 L2      C2  C3    R3
%D 2D                          
%D 2D  +20         C4  C5      
%D 2D
%D 2D  +20         C6  C7
%D 2D
%D ren C0 C1 C2 C3 C4 C5 ==> f^*C C D \Ran_fD \Set^\catA  \Set^\catB
%D ren C6 C7 ==> \catA \catB
%D ren L0 L2 ==> f^*\Ran_fD D
%D ren R1 R3 ==> C \Ran_ff^*C
%D
%D (( C0 C1 <-|
%D    C0 C2 -> .plabel= l \sm{β^\fl\\α}
%D    C1 C3 -> .plabel= r \sm{β\\α^♯}
%D    C2 C3 |->
%D    C0 C3 harrownodes nil 20 nil <-| sl^
%D    C0 C3 harrownodes nil 20 nil |-> sl_
%D
%D    C4 C5 <- sl^ .plabel= a f^*
%D    C4 C5 -> sl_ .plabel= b \Ran_f
%D
%D    C6 C7 -> .plabel= a f
%D    L0 L2 -> .plabel= l ε
%D    R1 R3 -> .plabel= r d
%D ))
%D enddiagram
%D
$$\pu
  \diag{geo-morph}
$$

When the categories $\catA$ and $\catB$ are finite posets we get:
%
1) $\Set^\catA$ and $\Set^\catB$ are toposes;
%
2) the functor ``precomposition with $f$'', $f^*$, is very easy to
define and to visualize,
%
3) the left and right Kan extensions $\Lan_f$ and $\Ran_f$ and can be
defined and calculated by the formulas in sec.6.2 of \cite{Riehl},
%
% (elep 7 "elephant-A4.1.4")
% (ele    "elephant-A4.1.4")
4) we have adjunctions $\Lan_f ⊣ f^* ⊣ \Ran_f$, and the structure
$(\Lan_f ⊣ f^* ⊣ \Ran_f)$ can be seen as an essential geometric
morphism $f:\Set^\catA → \Set^\catB$ (\cite{Elephant1}, A4.1.4)

% (find-riehlccpage (+ 18 193) "6.2. A formula for Kan extensions")






\newpage

In \cite{Riehl}, sec.6.1, right Kan extensions are defined as this.

Given functors $F: \sfC→\sfE$, $K: \sfC→\sfD$, a right Kan extension
of $F$ along $K$ is a functor $\Ran_K F: \sfD→\sfE$ together with a
natural transformation $ε: (K;\Ran_K F) ⇒ F$ such that every pair $(G
: D→E, δ:F⇒(K;G))$ factors uniquely through $ε$ in this sense: there
exists a unique $α:G⇒\Ran_KF$


as illustrated.




For every $α:f^*F→G$

there is a unique $β:F→f_*G$

such that $(f^*β;ε)=α$:

%D diagram riehl-ran-1
%D 2Dx     100 +40 +40
%D 2D  100 A0 ---> A2
%D 2D        ->  ->
%D 2D  +40     A1
%D 2D
%D ren A0 A1 A2 ==> \mathsf{C} \mathsf{D} \mathsf{E}
%D
%D (( A0 A2 -> .plabel= a F
%D    A0 A1 -> .plabel= l K
%D    A1 A2 -> .plabel= r G    .curve= _25pt
%D    A1 A2 varrownodes nil 17 nil <= .slide= -5pt .plabel= r δ
%D ))
%D enddiagram
%D
%D diagram riehl-ran-factored
%D 2Dx     100 +40 +40
%D 2D  100 A0 ---> A2
%D 2D        ->  -> ^
%D 2D  +40     A1 -/
%D 2D
%D ren A0 A1 A2 ==> \mathsf{C} \mathsf{D} \mathsf{E}
%D
%D (( A0 A2 -> .plabel= a F
%D    A0 A1 -> .plabel= l K
%D    A1 A2 -> .plabel= m \Ran_KF
%D    A1 A2 -> .plabel= r G    .curve= _25pt
%D    A0 A2 varrownodes 35 17 nil <=              .plabel= l ε
%D    A1 A2 varrownodes 20 17 nil <= .slide=  5pt .plabel= r β
%D ))
%D enddiagram
%D
$$\pu
  \diag{riehl-ran-1}
  \quad
  \diag{riehl-ran-factored}
$$

%D diagram tri-blob-1
%D 2Dx     100 +40 +40
%D 2D  100 A0      A2
%D 2D
%D 2D  +40     A1
%D 2D
%D ren A0 A1 A2 ==> \catA \catB \Set
%D
%D (( A0 A2 -> .plabel= a G
%D    A0 A1 -> .plabel= l f
%D    A1 A2 -> .plabel= r F    .curve= _25pt
%D    A1 A2 varrownodes nil 17 nil <= .slide= -5pt .plabel= r α
%D ))
%D enddiagram
%D
%D diagram tri-blob-2
%D 2Dx     100 +40 +40
%D 2D  100 A0      A2
%D 2D
%D 2D  +40     A1
%D 2D
%D ren A0 A1 A2 ==> \catA \catB \Set
%D
%D (( A0 A2 -> .plabel= a G
%D    A0 A1 -> .plabel= l f
%D    A1 A2 -> .plabel= m f_*G
%D    A1 A2 -> .plabel= r F    .curve= _25pt
%D    A0 A2 varrownodes 35 17 nil <=              .plabel= l ε
%D    A1 A2 varrownodes 20 17 nil <= .slide=  5pt .plabel= r β
%D ))
%D enddiagram
%D
$$\pu
  \diag{tri-blob-1}
  \quad
  \diag{tri-blob-2}
$$

% From:
% (vgsp 11 "internal-views-4")
% (vgs     "internal-views-4")

\bsk

%D diagram geo-morph
%D 2Dx     100     +30 +30     
%D 2D  100 L0      C0  C1      
%D 2D                          
%D 2D  +30 L2      C2  C3      
%D 2D                          
%D 2D  +15         C4  C5      
%D 2D
%D 2D  +20         C6  C7
%D 2D
%D ren C0 C1 C2 C3 C4 C5 ==> f^*F F G f_*G \Set^\catA  \Set^\catB
%D ren C6 C7 ==> \catA \catB
%D ren L0 L2 ==> f^*f_*G G
%D
%D (( C0 C1 <-|
%D    C0 C2 -> .plabel= l \sm{β^\fl\\α}
%D    C1 C3 -> .plabel= r \sm{β\\α^♯}
%D    C2 C3 |->
%D    C0 C3 harrownodes nil 20 nil <-| sl^
%D    C0 C3 harrownodes nil 20 nil |-> sl_
%D
%D    C4 C5 <- sl^ .plabel= a f^*
%D    C4 C5 -> sl_ .plabel= b f_*
%D
%D    C6 C7 -> .plabel= a f
%D    L0 L2 -> .plabel= l ε
%D ))
%D enddiagram
%D
$$\pu
  \diag{geo-morph}
$$

% (find-books "__cats/__cats.el" "riehl")
% (find-riehlccpage (+ 18 189) "6. All Concepts are Kan Extensions")
% (find-riehlccpage (+ 18 190) "6.1. Kan extensions")
% (find-riehlccpage (+ 18 193) "6.2. A formula for Kan extensions")
% (find-riehlccpage (+ 18 199) "6.3. Pointwise Kan extensions")
% (find-riehlccpage (+ 18 204) "6.4. Derived functors as Kan extensions")
% (find-riehlccpage (+ 18 209) "6.5. All concepts")

\end{document}


 (eepitch-shell)
 (eepitch-kill)
 (eepitch-shell)
make -f 2019.mk 2019kan-extensions.veryclean
make -f 2019.mk 2019kan-extensions.pdf


% Local Variables:
% coding: utf-8-unix
% ee-tla: "kan"
% End:
