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

\documentclass[oneside,12pt]{article}
\usepackage[colorlinks,citecolor=DarkRed,urlcolor=DarkRed]{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")
%
% (find-es "tex" "geometry")
\begin{document}

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

\long\def\ColorRed   #1{{\color{Red1}#1}}
\long\def\ColorViolet#1{{\color{MagentaVioletLight}#1}}
\long\def\ColorViolet#1{{\color{Violet!50!black}#1}}
\long\def\ColorGreen #1{{\color{SpringDarkHard}#1}}
\long\def\ColorGreen #1{{\color{SpringGreen4}#1}}
\long\def\ColorGreen #1{{\color{SpringGreenDark}#1}}
\long\def\ColorGray  #1{{\color{GrayLight}#1}}
\long\def\ColorGray  #1{{\color{black!30!white}#1}}

\def\calL{\mathcal{L}}

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


% (find-books "__cats/__cats.el" "lambek86")
% (find-books "__cats/__cats.el" "lncs0242")

{\setlength{\parindent}{0em}
\footnotesize

Notes on [Lambek86], a.k.a.:

``Cartesian Closed Categories and Typed $λ$-Calculi'', available at:

\url{https://link.springer.com/chapter/10.1007\%2F3-540-17184-3_44}

or as pages 136--175 of LNCS 242:

\url{https://link.springer.com/book/10.1007/3-540-17184-3}

\ssk

These notes are at:

\url{http://angg.twu.net/LATEX/2020lambek86.pdf}

}

\bsk

The introduction says:

{\sl While the material in the first part has been published before [L1974,
  1980, LS1984], an attempt is made to look at some of it from a
different point of view and to clarify some difficult points. At any
rate, it is hoped that it will serve as an introduction to the
forthcoming book ``Introduction to higher order categorical logic'',
written in collaboration with Phil Scott.}


\section*{2. Cartesian Categories}

% (find-lambek86page (+ -135 140) "2. CARTESIAN CATEGORIES")
% (find-lambek86text (+ -135 140) "2. CARTESIAN CATEGORIES")
% (find-lambek86page (+ -135 141) "admits the following form of the deduction theorem")
% (find-lambek86text (+ -135 141) "admits the following form of the deduction theorem")

% (find-books "__logic/__logic.el" "hindley-seldin2")
% (find-hindleyseldin2page (+ 14  26)  "2C Abstraction in CL")

Page 141:

Although the conjunction calculus contains no symbol for implication,
it admits the following form of the \ColorRed{\sl deduction theorem}:

Proposition 2.1: if $φ(x):B→C$ is a proof from the assumption $x:T→A$,
there is a proof $κ_{x∈A}φ(x):A∧B→C$ in $\calL$ not depending on the
assumption $x$.

(...)

\msk

Proof: there are four cases in the proof of the deduction theorem:

(1) $φ(x) = k:B→C$, a proof in $\calL$;

(2) $φ(x) = x:T→A$, where $B=T$ and $C=A$;

(3) $φ(x) = χ(x)ψ(x)$, where $ψ(x):B→D$ and $χ(x):D→C$;

(4) $φ(x) = 〈ψ(x),χ(x)〉$, where $ψ(x):B→D$, $χ(x):B→E$ and $C=D∧E$.

\msk

We define $κ_{x∈A} φ(x)$ by induction on the ``length'' of $φ(x)$:

(1) $κ_{x∈A} k           = kπ'_{A,B}$;

(2) $κ_{x∈A} x           = π_{A,T}$;

(3) $κ_{x∈A} (χ(x)ψ(x))  = κ_{x∈A} χ(x) 〈π_{A,B}, κ_{x∈A}ψ(x)〉$;

(4) $κ_{x∈A} 〈ψ(x),χ(x)〉  = 〈κ_{x∈A} ψ(x), κ_{x∈A} χ(x)〉$;


% From: (find-LATEX "2017planar-has-defs.tex" "defub")
%
\def\defub#1#2{\expandafter\def\csname ub-#1\endcsname{#2}}
\def\ifubundefined#1{\expandafter\ifx\csname ub-#1\endcsname\relax}
\def\ub#1{\ifubundefined{#1}
    \errmessage{UNDEFINED UB: #1}
  \else
    \csname ub-#1\endcsname
  \fi
}
\def\und#1#2{\underbrace{#1}_{#2}}

\def\ka{κ_{x∈A}}


%UB \ka(  k   ) &=&   k  π'_{A,B}
%UB     ------      ---- --------
%UB     :B→C        :B→C  :A×B→B
%UB -----------     -------------
%UB   :A×B→C          :A×B→C
%L
%L defub "cond1"
%L
%UB \ka(  x   ) &=& π_{A,T}
%UB     ------      -------
%UB     :T→A        :A×T→A
%UB -----------   
%UB   :A×T→A 
%L
%L defub "cond2"
%L
%UB \ka(χ(x) ψ(x)) &=& \kaχ(x) 〈π_{A,B},\kaψ(x)〉
%UB     ---- ----         ----  -------    ----
%UB     :D→C :B→D         :D→C  :A×B→A     :B→D
%UB     ---------      -------          -------
%UB      :B→C          :A×D→C            :A×B→D
%UB --------------             -----------------
%UB   :A×B→C                       :A×B→A×D
%UB                    -------------------------
%UB                            :A×B→C
%L
%L defub "cond3"
%L
%UB \ka〈ψ(x),χ(x)〉 &=& 〈 \ka ψ(x) , \ka χ(x) 〉
%UB     ---- ----           ----       ----
%UB     :B→E :B→D           :B→E       :B→D
%UB    -----------      ---------  --------
%UB      :B→D×E          :A×B→E     :A×B→D
%UB --------------    ------------------------
%UB   :A×B→D×E              :A×B→D×E
%L
%L defub "cond4"
%L
%
$$\pu
  \begin{array}{rcl}
  \ub{cond1} \\ \\
  \ub{cond2} \\ \\
  \ub{cond3} \\ \\
  \ub{cond4} \\
  \end{array}
$$






\end{document}

%  __  __       _        
% |  \/  | __ _| | _____ 
% | |\/| |/ _` | |/ / _ \
% | |  | | (_| |   <  __/
% |_|  |_|\__,_|_|\_\___|
%                        
% <make>

 (eepitch-shell)
 (eepitch-kill)
 (eepitch-shell)
# (find-LATEXfile "2019planar-has-1.mk")
make -f 2019.mk STEM=2020lambek86 veryclean
make -f 2019.mk STEM=2020lambek86 pdf

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