Statistiques
| Révision :

root / CSL17 / DICE2017_TALK / unboundedArithmetic.tex @ 188

Historique | Voir | Annoter | Télécharger (57,5 ko)

1 188 pbaillot
2 188 pbaillot
%\documentclass[pdf, pleasingblue,slideColor,colorBG]{prosper}
3 188 pbaillot
\documentclass{beamer}
4 188 pbaillot
\usepackage{amsfonts,latexsym,amssymb, amsmath}
5 188 pbaillot
\usepackage{stmaryrd}
6 188 pbaillot
\usepackage{graphicx}
7 188 pbaillot
\usepackage{eepic}
8 188 pbaillot
\usepackage[dvips]{epsfig}
9 188 pbaillot
%\usepackage{psfig}
10 188 pbaillot
%\input head.tex
11 188 pbaillot
\usepackage{proof,bussproofs}
12 188 pbaillot
%\usepackage{ desseins_s}
13 188 pbaillot
14 188 pbaillot
15 188 pbaillot
%\usepackage{microtype}%if unwanted, comment out or use option "draft"
16 188 pbaillot
%\usepackage[dvipsnames]{xcolor}
17 188 pbaillot
18 188 pbaillot
%\graphicspath{{./graphics/}}%helpful if your graphic files are in another directory
19 188 pbaillot
20 188 pbaillot
%\bibliographystyle{plainurl}% the recommended bibstyle
21 188 pbaillot
22 188 pbaillot
%\usepackage[lutzsyntax]{virginialake}
23 188 pbaillot
\input{ph-macros}
24 188 pbaillot
25 188 pbaillot
26 188 pbaillot
27 188 pbaillot
\setbeamercolor{block title}{bg=blue!10}
28 188 pbaillot
\setbeamercolor{block body}{bg=blue!10}
29 188 pbaillot
\definecolor{monred}{HTML}{9D0909}
30 188 pbaillot
%\definecolor{monbleu}{RVB}{0,0,1}
31 188 pbaillot
 \def\red#1{\color{red}{#1}}
32 188 pbaillot
 \def\blue#1{\color{blue}{#1}}
33 188 pbaillot
 \def\green#1{\color{green}{#1}}
34 188 pbaillot
\def\black{}
35 188 pbaillot
\def\BA#1{\color{red}{#1}}
36 188 pbaillot
 \def\ICC#1{\color{blue}{#1}}
37 188 pbaillot
38 188 pbaillot
39 188 pbaillot
%%%%%%%%%%%%%ENVIRONMENTS AND THEOREM-STYLES %%%%%%%%%%%%%%%%%%
40 188 pbaillot
%\def\un#1{\underline{#1}}
41 188 pbaillot
%\def\point#1{{\bf #1.}}
42 188 pbaillot
%%\newcommand{\etq}[1]{\mbox{\scriptsize\bf #1}}
43 188 pbaillot
%\newcommand{\etq}[1]{\mbox{{\bf #1}}}
44 188 pbaillot
%\newcommand{\Rulone}[1]{%
45 188 pbaillot
%          \begin{center}
46 188 pbaillot
%           \makebox[12cm]{\hspace*{\fill}
47 188 pbaillot
%                 \begin{minipage}[c]{6cm} #1 \end{minipage} \hspace*{\fill}
48 188 pbaillot
%                }
49 188 pbaillot
%          \end{center}
50 188 pbaillot
%  }
51 188 pbaillot
%
52 188 pbaillot
%\newcommand{\centra}[1]{\begin{center} #1 \end{center}}
53 188 pbaillot
%
54 188 pbaillot
%\newcommand{\Rultwo}[2]{%
55 188 pbaillot
%          \begin{center}
56 188 pbaillot
%           \makebox[12cm]{
57 188 pbaillot
%         \makebox[6cm]{\begin{minipage}[c]{6cm} #1 \end{minipage}} \hspace{20pt}
58 188 pbaillot
%         \makebox[6cm]{\begin{minipage}[c]{6cm} #2 \end{minipage}}
59 188 pbaillot
%                }
60 188 pbaillot
%          \end{center}
61 188 pbaillot
%  }
62 188 pbaillot
%\newcounter{ex}
63 188 pbaillot
%%\newtheorem{example}[ex]{Example}
64 188 pbaillot
%
65 188 pbaillot
%
66 188 pbaillot
%\def\para#1{\paragraph{#1}}
67 188 pbaillot
%\newtheorem{theo}{Theorem}
68 188 pbaillot
%\newtheorem{de}{Definition}
69 188 pbaillot
%\newtheorem{prop}[theo]{Proposition}
70 188 pbaillot
%\newtheorem{lem}[theo]{Lemma}
71 188 pbaillot
%\newtheorem{Cor}[theo]{Corollary}
72 188 pbaillot
%\newtheorem{remark}[theo]{Remark}
73 188 pbaillot
%\newcounter{pb}
74 188 pbaillot
%\newtheorem{problem}[pb]{Problem}
75 188 pbaillot
%\newenvironment{proof}{\noindent{\bfseries Proof :}}{\hbox{}\hfill$\Box$}
76 188 pbaillot
77 188 pbaillot
%---------------------
78 188 pbaillot
%% Definition of new colors
79 188 pbaillot
%\newrgbcolor{LemonChiffon}{1. 0.98 0.8}
80 188 pbaillot
%
81 188 pbaillot
%\newrgbcolor{LightBlue}{0.68 0.85 0.9}
82 188 pbaillot
%\newrgbcolor{Dgreen}{0  0.6 0.4}
83 188 pbaillot
%%\newrgbcolor{DBlue}{0  0 0.5}
84 188 pbaillot
%\newrgbcolor{DBlue}{0  0 0.6}
85 188 pbaillot
%\newrgbcolor{Dblue}{0  0 0.6}
86 188 pbaillot
%%----------------------
87 188 pbaillot
%%% MORE Color definitions
88 188 pbaillot
%\newrgbcolor{DarkGray}{.284 .210 .410}
89 188 pbaillot
%\newrgbcolor{Violet}{.2 .2  .9}
90 188 pbaillot
91 188 pbaillot
%---------------------
92 188 pbaillot
93 188 pbaillot
\mode<presentation>
94 188 pbaillot
{
95 188 pbaillot
  \usetheme{Warsaw}
96 188 pbaillot
  % or ...
97 188 pbaillot
98 188 pbaillot
  \setbeamercovered{transparent}
99 188 pbaillot
  % or whatever (possibly just delete it)
100 188 pbaillot
}
101 188 pbaillot
102 188 pbaillot
103 188 pbaillot
\title{Towards an Unbounded Implicit Arithmetic for\\
104 188 pbaillot
the Polynomial Hierarchy
105 188 pbaillot
}
106 188 pbaillot
107 188 pbaillot
\author{Patrick Baillot and Anupam Das}
108 188 pbaillot
\institute{CNRS / ENS Lyon}
109 188 pbaillot
110 188 pbaillot
111 188 pbaillot
\begin{document}
112 188 pbaillot
\maketitle
113 188 pbaillot
114 188 pbaillot
115 188 pbaillot
\begin{frame}
116 188 pbaillot
  \frametitle{Introduction}
117 188 pbaillot
118 188 pbaillot
 2 cousin approaches to logical characterization of complexity classes:
119 188 pbaillot
120 188 pbaillot
\bigskip
121 188 pbaillot
122 188 pbaillot
 \begin{tabular}{l|l}
123 188 pbaillot
 \BA{Bounded arithmetic (86 -- )} & \ICC{Implicit computational complexity  (91 --)}\\
124 188 pbaillot
      & \ICC{(ICC)}\\
125 188 pbaillot
 \hline
126 188 pbaillot
 &\\
127 188 pbaillot
 & function algebras\\
128 188 pbaillot
 & types/proofs-as-programs\\
129 188 pbaillot
 & arithmetics / logics\\
130 188 pbaillot
 & \\
131 188 pbaillot
 large variety of & resource-free characterizations of\\
132 188 pbaillot
 complexity classes & complexity classes (e.g. ramification)\\
133 188 pbaillot
 &\\
134 188 pbaillot
 corresp. with & extensions to programming languages\\
135 188 pbaillot
 \textit{proof-complexity} &
136 188 pbaillot
 \end{tabular}
137 188 pbaillot
  \end{frame}
138 188 pbaillot
139 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%
140 188 pbaillot
141 188 pbaillot
\begin{frame}
142 188 pbaillot
  \frametitle{Introduction}
143 188 pbaillot
144 188 pbaillot
$$  \mbox{"\textit{$f$ is provably total in system} XXX"} \Leftrightarrow \quad f \in \mbox{ complexity class YYY }$$
145 188 pbaillot
146 188 pbaillot
\bigskip
147 188 pbaillot
148 188 pbaillot
 \begin{tabular}{l|l}
149 188 pbaillot
 \BA{Bounded arithmetic}  \qquad \qquad & \ICC{Implicit computational complexity}\\
150 188 pbaillot
 \hline
151 188 pbaillot
 &\\
152 188 pbaillot
  Buss ($S_1$): & Leivant (intrinsic theories): \\
153 188 pbaillot
  $\forall x, {\BA{\exists y \leq t}} . \; A_f(x,y)$ & $\forall x. N_1(x) \rightarrow N_0(f(x))$\\
154 188 pbaillot
  &\\
155 188 pbaillot
  FP, FPH & FP
156 188 pbaillot
  \end{tabular}
157 188 pbaillot
  \end{frame}
158 188 pbaillot
159 188 pbaillot
  %%%%%%%%%%%%%%%%%%%%%%%%%%%
160 188 pbaillot
161 188 pbaillot
\begin{frame}
162 188 pbaillot
  \frametitle{{A current limitation of ICC logics}}
163 188 pbaillot
164 188 pbaillot
 \begin{itemize}
165 188 pbaillot
\item fewer complexity classes characterized by {\ICC{ICC logics}} than by {\BA{bounded arithmetic}}
166 188 pbaillot
\item in particular, not so satisfactory for non-deterministic classes
167 188 pbaillot
168 188 pbaillot
e.g. NP, PH (polynomial hierarchy) \dots
169 188 pbaillot
170 188 pbaillot
 \end{itemize}
171 188 pbaillot
 \end{frame}
172 188 pbaillot
173 188 pbaillot
 %%%%%%%%%%%%%%%%%%%%%%%%%%%
174 188 pbaillot
175 188 pbaillot
\begin{frame}
176 188 pbaillot
  \frametitle{Recap : the polynomial hierarchy}
177 188 pbaillot
178 188 pbaillot
 \begin{itemize}
179 188 pbaillot
\item  to be done: definition \dots
180 188 pbaillot
 \end{itemize}
181 188 pbaillot
 \end{frame}
182 188 pbaillot
183 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%
184 188 pbaillot
185 188 pbaillot
\begin{frame}
186 188 pbaillot
  \frametitle{Our goal}
187 188 pbaillot
188 188 pbaillot
 design an { \ICC{unbounded}} {\BA{arithmetic}} for characterizing FPH
189 188 pbaillot
190 188 pbaillot
 \medskip
191 188 pbaillot
192 188 pbaillot
 expected benefits:
193 188 pbaillot
 \begin{itemize}
194 188 pbaillot
\item   bridge  {\BA{bounded arithmetic}}  and {\ICC{ICC logics}}
195 188 pbaillot
\item enlarge the toolbox  {\ICC{ICC logics}} of , by exploring the power of quantification
196 188 pbaillot
\end{itemize}
197 188 pbaillot
 \end{frame}
198 188 pbaillot
199 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%
200 188 pbaillot
201 188 pbaillot
\begin{frame}
202 188 pbaillot
  \frametitle{Methodology}
203 188 pbaillot
204 188 pbaillot
 We want to use:
205 188 pbaillot
 \begin{itemize}
206 188 pbaillot
\item {\ICC{ramification}}
207 188 pbaillot
\item
208 188 pbaillot
\end{itemize}
209 188 pbaillot
 \end{frame}
210 188 pbaillot
211 188 pbaillot
212 188 pbaillot
\end{document}
213 188 pbaillot
214 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
215 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
216 188 pbaillot
%----------
217 188 pbaillot
218 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%
219 188 pbaillot
220 188 pbaillot
\begin{frame}
221 188 pbaillot
  \frametitle{}
222 188 pbaillot
223 188 pbaillot
 \begin{itemize}
224 188 pbaillot
\item   \end{itemize}
225 188 pbaillot
 \end{frame}
226 188 pbaillot
227 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%
228 188 pbaillot
229 188 pbaillot
\begin{frame}
230 188 pbaillot
  \frametitle{Introduction}
231 188 pbaillot
232 188 pbaillot
 \begin{itemize}
233 188 pbaillot
\item  \textit{Implicit computational complexity} (ICC) :
234 188 pbaillot
235 188 pbaillot
characterizing complexity classes by programming languages / calculi  without  explicit bounds,
236 188 pbaillot
237 188 pbaillot
but instead
238 188 pbaillot
 by restricting the constructions %of the language.
239 188 pbaillot
 \item either theory-oriented or certification-oriented
240 188 pbaillot
 \item often conveniently formulated by:
241 188 pbaillot
242 188 pbaillot
 (i) a general programming language, (ii)  a criterion on programs
243 188 pbaillot
 \end{itemize}
244 188 pbaillot
 \end{frame}
245 188 pbaillot
246 188 pbaillot
 %%%%%%%%%%%%%%%%%%%%%%
247 188 pbaillot
 \begin{frame}
248 188 pbaillot
  \frametitle{Various approaches to ICC}
249 188 pbaillot
250 188 pbaillot
251 188 pbaillot
 \begin{itemize}
252 188 pbaillot
 \item ramified recursion (Leivant, Leivant-Marion) / safe recursion (Bellantoni-Cook)
253 188 pbaillot
% \item restrictions on second-order logic (taming comprehension rule) (Leivant)
254 188 pbaillot
 \item variants of linear logic (light logics) \textbf{this talk}
255 188 pbaillot
 %\item \emph{read-only} functional languages (Jones)
256 188 pbaillot
 \item interpretation methods
257 188 pbaillot
 \item \dots
258 188 pbaillot
  \end{itemize}
259 188 pbaillot
260 188 pbaillot
  \end{frame}
261 188 pbaillot
262 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%
263 188 pbaillot
 \begin{frame}
264 188 pbaillot
  \frametitle{ICC vs. complexity analysis}
265 188 pbaillot
266 188 pbaillot
specificities of ICC w.r.t. automatic complexity analysis:
267 188 pbaillot
 \begin{itemize}
268 188 pbaillot
 \item complexity certificate (e.g. type)
269 188 pbaillot
 \item modular
270 188 pbaillot
  \end{itemize}
271 188 pbaillot
272 188 pbaillot
but
273 188 pbaillot
274 188 pbaillot
\begin{itemize}
275 188 pbaillot
\item only rough complexity bounds
276 188 pbaillot
\item less general analysis (specific programming discipline)
277 188 pbaillot
\end{itemize}
278 188 pbaillot
  \end{frame}
279 188 pbaillot
280 188 pbaillot
281 188 pbaillot
\end{document}
282 188 pbaillot
283 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
284 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
285 188 pbaillot
%----------
286 188 pbaillot
287 188 pbaillot
\begin{frame}\frametitle{The proofs-as-programs viewpoint}
288 188 pbaillot
289 188 pbaillot
\begin{itemize}
290 188 pbaillot
\item our reference language here is $\la$-calculus
291 188 pbaillot
292 188 pbaillot
 untyped $\la$-calculus is Turing-complete
293 188 pbaillot
\item type systems can guarantee termination
294 188 pbaillot
295 188 pbaillot
ex: system F (polymorphic types)
296 188 pbaillot
%\end{itemize}
297 188 pbaillot
%
298 188 pbaillot
%\end{frame}
299 188 pbaillot
%
300 188 pbaillot
%----------
301 188 pbaillot
%\begin{frame} \frametitle{}
302 188 pbaillot
303 188 pbaillot
%\begin{itemize}
304 188 pbaillot
\item proofs-as-programs correspondence
305 188 pbaillot
%Curry-Howard correspondence
306 188 pbaillot
\begin{tabular}{ccc}
307 188 pbaillot
proof & = & type derivation \\
308 188 pbaillot
normalization & = & execution \\
309 188 pbaillot
intuitionistic logic & $\leftrightarrow$ & system F
310 188 pbaillot
\end{tabular}
311 188 pbaillot
\item some characteristics of $\la$-calculus:
312 188 pbaillot
313 188 pbaillot
    higher-order types
314 188 pbaillot
315 188 pbaillot
    no distinction between data / program
316 188 pbaillot
\end{itemize}
317 188 pbaillot
\end{frame}
318 188 pbaillot
319 188 pbaillot
%----------
320 188 pbaillot
\begin{frame} \frametitle{Linear logic}
321 188 pbaillot
322 188 pbaillot
\begin{itemize}
323 188 pbaillot
\item linear logic (LL):
324 188 pbaillot
325 188 pbaillot
 fine-grained decomposition of intuitionistic logic
326 188 pbaillot
327 188 pbaillot
 duplication is controlled with a specific connective $\bs$ (\textit{exponential})
328 188 pbaillot
\item variants of linear logic with different rules for
329 188 pbaillot
$\bs$ have bounded complexity: \textit{light logics}
330 188 pbaillot
331 188 pbaillot
 these logics (or subsystems) can be used as type systems for $\la$-calculus
332 188 pbaillot
333 188 pbaillot
thus:
334 188 pbaillot
335 188 pbaillot
(i) general language= $\lambda$-calculus, (ii) criterion= typability
336 188 pbaillot
\end{itemize}
337 188 pbaillot
\end{frame}
338 188 pbaillot
339 188 pbaillot
%----------
340 188 pbaillot
\begin{frame} \frametitle{Outline of the talk}
341 188 pbaillot
342 188 pbaillot
%\begin{itemize}
343 188 pbaillot
%\item Background on $\la$-calculus and system F
344 188 pbaillot
%\item The type system DLAL
345 188 pbaillot
%\item Relating the Bellantoni-Cook algebra and light linear logic
346 188 pbaillot
%\item Conclusion
347 188 pbaillot
%\end{itemize}
348 188 pbaillot
\begin{enumerate}
349 188 pbaillot
\item a recap on $\lambda$-calculus and system F
350 188 pbaillot
\item elementary linear logic (ELL): elementary complexity
351 188 pbaillot
\item light linear logic (LLL): Ptime complexity
352 188 pbaillot
\item other linear logic variants
353 188 pbaillot
\item conclusion
354 188 pbaillot
\end{enumerate}
355 188 pbaillot
\end{frame}
356 188 pbaillot
357 188 pbaillot
%-----------
358 188 pbaillot
359 188 pbaillot
\section{A recap on $\lambda$-calculus and system F}
360 188 pbaillot
%----------
361 188 pbaillot
\begin{frame} \frametitle{$\lambda$-calculus}
362 188 pbaillot
363 188 pbaillot
\begin{itemize}
364 188 pbaillot
\item $\lambda$-terms:
365 188 pbaillot
$$t, u::= x \;|\; \la x. t  \; |\; t\; u$$
366 188 pbaillot
%$$t, u::= x \;|\; \la x. t  \; |\; (t\; u)$$
367 188 pbaillot
368 188 pbaillot
\begin{tabular}{cl}
369 188 pbaillot
notations: &$\la x_1 x_2. t$ \quad for $\la x_1. \la x_2.t$\\
370 188 pbaillot
          & $(t\; u \; v)$ \quad for $((t\; u)\;v)$\\
371 188 pbaillot
          &  substitution: $t[u/ x]$
372 188 pbaillot
\end{tabular}
373 188 pbaillot
\item
374 188 pbaillot
$\beta$-reduction:
375 188 pbaillot
376 188 pbaillot
 $\xrightarrow{1}$ relation obtained by context-closure of:
377 188 pbaillot
$$ ((\la x. t) u) \xrightarrow{1} t[u/ x]$$
378 188 pbaillot
379 188 pbaillot
$\rightarrow$ reflexive and transitive closure of $\xrightarrow{1}$.
380 188 pbaillot
\end{itemize}
381 188 pbaillot
\end{frame}
382 188 pbaillot
383 188 pbaillot
%----------
384 188 pbaillot
\begin{frame} \frametitle{Typed $\lambda$-terms}
385 188 pbaillot
system F types:
386 188 pbaillot
$$T, U::= \alpha \; | \; T \rightarrow U \;|\; \forall \al . T$$
387 188 pbaillot
388 188 pbaillot
simple types: without $\forall$
389 188 pbaillot
390 188 pbaillot
\medskip
391 188 pbaillot
392 188 pbaillot
simply typed terms, in Church-style:
393 188 pbaillot
$$
394 188 pbaillot
x^T
395 188 pbaillot
\quad\quad
396 188 pbaillot
(\la x^T. M^U)^{T\rightarrow U}
397 188 pbaillot
\quad\quad
398 188 pbaillot
((M^{T\rightarrow U}) N^T)^U
399 188 pbaillot
$$
400 188 pbaillot
%$$
401 188 pbaillot
%(M^U)^{\forall \alpha.U}
402 188 pbaillot
%\quad\quad
403 188 pbaillot
%((M^{\forall\alpha. U})T)^{U[T/\alpha]}
404 188 pbaillot
%$$
405 188 pbaillot
%with: in $\La \alpha. M^U$,
406 188 pbaillot
%$\alpha$ not free in  types of
407 188 pbaillot
%free term variables of $M$ %(the {\em eigenvariable condition}).
408 188 pbaillot
409 188 pbaillot
\end{frame}
410 188 pbaillot
411 188 pbaillot
%----------
412 188 pbaillot
%----------
413 188 pbaillot
\begin{frame} \frametitle{Proofs-programs correspondence (Curry-Howard)}
414 188 pbaillot
415 188 pbaillot
\begin{tabular}{ccc}
416 188 pbaillot
 \textbf{typed term} &$\Rightarrow$& \textbf{2nd-order intuitionistic}\\
417 188 pbaillot
 &&\quad \textbf{ logic proof}\\
418 188 pbaillot
&&\\
419 188 pbaillot
type && formula\\
420 188 pbaillot
&&\\
421 188 pbaillot
$M^B$, with  & &proof of $A_1, \dots, A_n \vdash B$\\
422 188 pbaillot
free variables $x_i:A_i$, $1\leq i \leq n$&&\\
423 188 pbaillot
&&\\
424 188 pbaillot
$\beta$-reduction of term && normalization of proof\\
425 188 pbaillot
&& (cut elimination)
426 188 pbaillot
\end{tabular}
427 188 pbaillot
\end{frame}
428 188 pbaillot
429 188 pbaillot
430 188 pbaillot
%----------
431 188 pbaillot
\begin{frame} \frametitle{Some types and data types}
432 188 pbaillot
$$\begin{array}{lcl}
433 188 pbaillot
\mbox{Polymorphic identity:}&&\\
434 188 pbaillot
 %{\blue \La \al. \la x^{\al}. x }&:& \forall \al. (\al \fl \al)\\
435 188 pbaillot
 {\blue  \la x^{\al}. x }&:& \forall \al. (\al \fl \al)\\
436 188 pbaillot
 &&\\
437 188 pbaillot
\mbox{Church unary integers:}&&\\
438 188 pbaillot
 N^F & =& \forall \al.  (\al \fl \al) \fl (\al \fl \al) \\
439 188 pbaillot
\mbox{example}&&\\
440 188 pbaillot
 % {\blue \underline{2}}&{\blue =}& {\blue \La \al. \la f^{\al\fl \al}.\la x^{\al}. (f\; (f \; x))^{\al}: N }\\
441 188 pbaillot
%{\blue  \underline{2} }&{\blue =}& {\blue \la f^{\al\fl \al}.\la x^{\al}. (f)\; (f) \; x: N }\\
442 188 pbaillot
 \underline{2} &{\blue =}& {\blue \la f^{\al\fl \al}.\la x^{\al}. (f\; (f \; x)): N^F }\\
443 188 pbaillot
\mbox{Church binary words:} &&\\
444 188 pbaillot
W^F & =&  \forall \al.  (\al \fl \al) \fl (\al \fl \al) \fl (\al \fl \al)\\
445 188 pbaillot
 \mbox{example}&&\\
446 188 pbaillot
 % {\blue \underline{<1,1,0>}}&{\blue =}& {\blue \La \al. \la o^{\al\fl \al}.\la z^{\al\fl \al}.\la x^{\al}. (o\; (o \; (z\; x)))^{\al}: W }\\
447 188 pbaillot
% {\blue \underline{<1,1,0>} }&{\blue =}& {\blue \la o^{\al\fl \al}.\la z^{\al\fl \al}.\la x^{\al}. (o)\; (o) \; (z)\; x : W }\\
448 188 pbaillot
 \underline{<1,1,0>}  &{\blue =}& {\blue \la s_0^{\al\fl \al}.\la s_1^{\al\fl \al}.\la x^{\al}. (s_1\; (s_1  \; (s_0\; x))) : W^F }\\
449 188 pbaillot
%\end{eqnarray*}
450 188 pbaillot
\end{array}
451 188 pbaillot
$$
452 188 pbaillot
\end{frame}
453 188 pbaillot
454 188 pbaillot
455 188 pbaillot
456 188 pbaillot
%----------
457 188 pbaillot
\begin{frame} \frametitle{Iteration }
458 188 pbaillot
459 188 pbaillot
For each inductive data type an associated iteration principle.
460 188 pbaillot
461 188 pbaillot
For instance,  for $N= \forall \al.  (\al \fl \al) \fl (\al \fl \al)$,
462 188 pbaillot
we can define  an iterator $\ite$:
463 188 pbaillot
$$ \ite= \la f x n. \; (n \; f \; x) \; : (A \fl A) \fl A \fl N \fl  A, \quad \mbox{for any $A$}$$
464 188 pbaillot
then
465 188 pbaillot
466 188 pbaillot
 $(\ite  \; t \; u \; \un{n}) \rightarrow (t\; (t \dots (t\; u)\dots)$  \quad ($n$ times)
467 188 pbaillot
468 188 pbaillot
\bigskip
469 188 pbaillot
470 188 pbaillot
\textbf{example:}
471 188 pbaillot
472 188 pbaillot
473 188 pbaillot
$double: N \fl N$
474 188 pbaillot
475 188 pbaillot
$exp= \la n.  (\ite \; double \; \un{1} \; n)\; : N \fl  N$
476 188 pbaillot
477 188 pbaillot
$tower= \la n.  (\ite \; exp \; \un{1} \; n)\; : N \fl  N$
478 188 pbaillot
479 188 pbaillot
480 188 pbaillot
481 188 pbaillot
\end{frame}
482 188 pbaillot
483 188 pbaillot
%----------
484 188 pbaillot
485 188 pbaillot
\begin{frame} \frametitle{Examples of terms}
486 188 pbaillot
487 188 pbaillot
488 188 pbaillot
$$\begin{array}{lll}
489 188 pbaillot
\mbox{concatenation}&&\\
490 188 pbaillot
%conc &=& \la u^{W}. \la v^{W} .\La \al. \la o. \la z. \la x . (u \; o \; z \;(v \; o\; z \; x))\\
491 188 pbaillot
conc &=& \la u^{W}. \la v^{W} . \la s_0. \la s_1. \la x . (u \; s_0 \; s_1) \;(v \; s_0\; s_1 \; x)\\
492 188 pbaillot
   &:~ &W\fl W \fl W\\
493 188 pbaillot
&&\\
494 188 pbaillot
\mbox{length}&&\\
495 188 pbaillot
%length&=& \la u^{W}. \La \al. \la f^{\al\fl \al }.( u\; f \; f)^{\al\fl \al}\\
496 188 pbaillot
length&=& \la u^{W}.  \la f^{\al\fl \al }.(u\; f \; f)^{\al\fl \al}\\
497 188 pbaillot
 &:~ &W \fl N\\
498 188 pbaillot
% \end{array}$$
499 188 pbaillot
%
500 188 pbaillot
% $$\begin{array}{lll}
501 188 pbaillot
\mbox{\textit{repeated concatenation}}&&\\
502 188 pbaillot
%mult&=& \la n. \la m. (m \; \la k.\la f.\la x. (n \; f\; (k\; f\; x))) \; \underline{0}&:& ~N \fli N \fm \pa N\\
503 188 pbaillot
%mult&=& \la n^{N}. \la v^{W}. (n \; (conc \; v)^{W\fl W} ) \; \underline{nil}^W\\
504 188 pbaillot
rep&=& \la n^{N}. \la v^{W}. [n \; (conc \; v)  \; \underline{nil}]^W\\
505 188 pbaillot
&:& ~N \fl W \fl W\\
506 188 pbaillot
%&&&&\\
507 188 pbaillot
%square&& &:&N \fm \pa^{4}N
508 188 pbaillot
\end{array}
509 188 pbaillot
$$
510 188 pbaillot
\end{frame}
511 188 pbaillot
512 188 pbaillot
%----------
513 188 pbaillot
\begin{frame} \frametitle{System F and termination}
514 188 pbaillot
515 188 pbaillot
\bigskip
516 188 pbaillot
\begin{theo}[Girard] %[Girard 1972]
517 188 pbaillot
 If a term is well typed in $F$, then it is strongly normalizable.
518 188 pbaillot
\end{theo}
519 188 pbaillot
520 188 pbaillot
\bigskip
521 188 pbaillot
522 188 pbaillot
Thus a type derivation can be seen as a termination witness.
523 188 pbaillot
524 188 pbaillot
In particular, a term $t: W \fl W$ represents a function on words which terminates
525 188 pbaillot
on all inputs.
526 188 pbaillot
527 188 pbaillot
\bigskip
528 188 pbaillot
529 188 pbaillot
%\textbf {Problem:}
530 188 pbaillot
531 188 pbaillot
 Can we refine this system in order to guarantee \textit{feasible} termination, that is to
532 188 pbaillot
say in polynomial time?
533 188 pbaillot
\end{frame}
534 188 pbaillot
535 188 pbaillot
%---------------
536 188 pbaillot
537 188 pbaillot
538 188 pbaillot
%-----------
539 188 pbaillot
%%\begin{frame} \frametitle{Exponential blow up}
540 188 pbaillot
%\begin{frame} \frametitle{How can exponential blow up occur?}
541 188 pbaillot
%
542 188 pbaillot
%\vspace{-5mm}
543 188 pbaillot
%
544 188 pbaillot
%(thanks to K.~Terui)
545 188 pbaillot
%
546 188 pbaillot
%2 easy ways to cause exponential blow-up:
547 188 pbaillot
%\begin{itemize}
548 188 pbaillot
%\item
549 188 pbaillot
% basic functions: $0: \NN$, \quad $s: \NN \rightarrow \NN$, \quad $+:\NN \rightarrow \NN \rightarrow \NN$.
550 188 pbaillot
%\item exponential blow-up can be caused by:
551 188 pbaillot
%\begin{enumerate}
552 188 pbaillot
% \item iteration-iteration
553 188 pbaillot
%$$\begin{array}{cccccc}
554 188 pbaillot
%\mbox{dbl}(0) &=&0 \qquad \qquad &                \mbox{exp}(0)&=&1  \\
555 188 pbaillot
%\mbox{dbl}(s(x))&=&\mbox{dbl}(x)+2 \qquad & \mbox{exp}(s(x))&=&\mbox{dbl}(\mbox{exp}(x))
556 188 pbaillot
%\end{array}
557 188 pbaillot
%$$
558 188 pbaillot
%\item contraction-iteration
559 188 pbaillot
%$$\begin{array}{cccccc}
560 188 pbaillot
%\mbox{dbl}(x) &=&x+x \qquad \qquad &                \mbox{exp}(0)&=&1  \\
561 188 pbaillot
% &&& \mbox{exp}(s(x))&=&\mbox{dbl}(\mbox{exp}(x))
562 188 pbaillot
%\end{array}
563 188 pbaillot
%$$
564 188 pbaillot
%\end{enumerate}
565 188 pbaillot
%\vspace{-4mm}
566 188 pbaillot
%\item to keep contraction and iteration, we need to forbid bad combinations of these.
567 188 pbaillot
%\end{itemize}
568 188 pbaillot
%
569 188 pbaillot
%\end{frame}
570 188 pbaillot
571 188 pbaillot
572 188 pbaillot
%-----------
573 188 pbaillot
\begin{frame} \frametitle{Linear logic}
574 188 pbaillot
575 188 pbaillot
\begin{itemize}
576 188 pbaillot
\item  Linear logic (LL) arises from the decomposition
577 188 pbaillot
 $$A \fli B \equiv  \bs A \fm B$$
578 188 pbaillot
579 188 pbaillot
\item the $\bs$ modality accounts for duplication (contraction)
580 188 pbaillot
581 188 pbaillot
\item $!$ satisfies the following principles:
582 188 pbaillot
$$
583 188 pbaillot
\begin{array}{ccc}
584 188 pbaillot
 \bs A \fm \bs A \otimes \bs A \qquad & \infer{ \bs A\vdash  \bs B}{A \vdash B} \qquad           & \bs A \fm A \\
585 188 pbaillot
                               & \bs A \otimes \bs B \fm \bs (A \otimes B) & \bs A \fm \bs \bs A
586 188 pbaillot
\end{array}
587 188 pbaillot
$$
588 188 pbaillot
\end{itemize}
589 188 pbaillot
\end{frame}
590 188 pbaillot
591 188 pbaillot
\section{Elementary linear logic}
592 188 pbaillot
%-----------
593 188 pbaillot
\begin{frame} \frametitle{Elementary linear logic (ELL) \qquad [Girard95]}
594 188 pbaillot
595 188 pbaillot
\begin{itemize}
596 188 pbaillot
\item Language of formulas:
597 188 pbaillot
$$ A, B := \alpha \;|\; A \multimap B \;|\; !A \;|\; \forall \alpha. A $$
598 188 pbaillot
599 188 pbaillot
\smallskip
600 188 pbaillot
Denote $!^k A$ for $k$ occurrences of $!$.
601 188 pbaillot
\item  The system is designed in such a way that the following principles are \textbf{not} provable
602 188 pbaillot
 $$ !A \multimap A, \quad  !A \multimap !!A$$
603 188 pbaillot
 \item Defined to characterize \textit{elementary time complexity}, that is to say in time bounded by $2_k^{n}$, for arbitrary $k$.
604 188 pbaillot
\end{itemize}
605 188 pbaillot
\end{frame}
606 188 pbaillot
607 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
608 188 pbaillot
609 188 pbaillot
\begin{frame} \frametitle{Elementary linear logic rules}
610 188 pbaillot
611 188 pbaillot
%{\tiny
612 188 pbaillot
\vspace{-5mm}
613 188 pbaillot
614 188 pbaillot
\begin{center}
615 188 pbaillot
\begin{tabular}{ll}
616 188 pbaillot
  {\infer[\mbox{(Id)}]{ x:A \vdash x:A}{}} & \\[1ex]
617 188 pbaillot
 &\\
618 188 pbaillot
 {\infer[\mbox{($\fm$ i)}]{\Gamma  \vdash \la x. t: A \fm B }
619 188 pbaillot
 {\Gamma, x:A \vdash t:B}}
620 188 pbaillot
621 188 pbaillot
  &
622 188 pbaillot
 {\infer[\mbox{($\fm$ e)}]{\Gamma_1,\Gamma_2 \vdash (t\; u) :B }
623 188 pbaillot
  {\Gamma_1 \vdash t:A \fm B & \Gamma_2 \vdash u:A}}
624 188 pbaillot
\\[1ex]
625 188 pbaillot
&\\
626 188 pbaillot
{\infer[\mbox{(Cntr)}]{x:!A, \Gamma \vdash t[x \slash x_1, x \slash x_2] :B }{x_1:!A,x_2:!A, \Gamma \vdash t:B }}
627 188 pbaillot
&
628 188 pbaillot
{\infer[\mbox{(Weak)}]{\Gamma, x:B\vdash t: A }
629 188 pbaillot
 {\Gamma \vdash t:A}}
630 188 pbaillot
631 188 pbaillot
\\[1ex]
632 188 pbaillot
&\\
633 188 pbaillot
{\infer[\mbox{($!$ i)}]{x_1:! B_1, \dots, x_n:! B_n  \vdash t: ! A }
634 188 pbaillot
 {   x_1:B_1, \dots, x_n:B_n \vdash t:A}}
635 188 pbaillot
  &
636 188 pbaillot
{\infer[\mbox{($!$ e)}]{\Gamma_1,\Gamma_2  \vdash t[u \slash x] :B }
637 188 pbaillot
  {\Gamma_1  \vdash u: ! A  & \Gamma_2, x:! A \vdash t:B}}
638 188 pbaillot
\\[1ex]
639 188 pbaillot
%{\infer[\mbox{($\forall$ i) (*)}]{{ \Gamma  \vdash  t:\forall \alpha. A}}{{ \Gamma  \vdash t:A}}}
640 188 pbaillot
% &
641 188 pbaillot
% {\infer[\mbox{($\forall$ e)}]{\Gamma  \vdash t:A[B \slash \al] }
642 188 pbaillot
%{\Gamma \vdash t:\forall \al. A}}
643 188 pbaillot
 \end{tabular}
644 188 pbaillot
%}
645 188 pbaillot
\end{center}
646 188 pbaillot
\end{frame}
647 188 pbaillot
648 188 pbaillot
%----------
649 188 pbaillot
\begin{frame} \frametitle{Forgetful map from ELL to  F}
650 188 pbaillot
651 188 pbaillot
652 188 pbaillot
Consider $\eras{(.)}: ELL  \rightarrow F$ defined by:
653 188 pbaillot
$$\eras{(\bs A)}= \eras{A},\ \ \
654 188 pbaillot
\eras{(A\fm B)}=\eras{A} \rightarrow \eras{B}, \quad \eras{(\forall \al. A)}= \forall \al. \eras{A}, \quad \eras{\al}=\al.$$
655 188 pbaillot
656 188 pbaillot
\begin{prop}
657 188 pbaillot
 If $\Gamma \vdash_{ELL} t:A$ then $t$ is typable in F with type $\eras{A}$.
658 188 pbaillot
 \end{prop}
659 188 pbaillot
660 188 pbaillot
\medskip
661 188 pbaillot
662 188 pbaillot
If $\eras{A}=T$, say  $A$ is a {\emph decoration} of  $T$  in ELL.
663 188 pbaillot
\end{frame}
664 188 pbaillot
665 188 pbaillot
666 188 pbaillot
667 188 pbaillot
%----------
668 188 pbaillot
\begin{frame} \frametitle{Data types in ELL}
669 188 pbaillot
670 188 pbaillot
\begin{itemize}
671 188 pbaillot
\item
672 188 pbaillot
 Church unary integers
673 188 pbaillot
\end{itemize}
674 188 pbaillot
%\begin{center}
675 188 pbaillot
%{\tiny
676 188 pbaillot
%\hspace{-4mm}
677 188 pbaillot
\begin{tabular}{ccc}
678 188 pbaillot
 system F: &  & ELL: \\
679 188 pbaillot
$N^F$ &\qquad  & $N^{ELL}$ \\
680 188 pbaillot
$\forall \al.  (\al \rightarrow \al) \rightarrow (\al \rightarrow \al)$
681 188 pbaillot
& & $\forall \al.  \bs (\al \fm \al) \fm \bs (\al \fm \al)$
682 188 pbaillot
\end{tabular}
683 188 pbaillot
684 188 pbaillot
%\begin{tabular}{ccc}
685 188 pbaillot
% system F: &  & ELL: \\
686 188 pbaillot
%$N^F$ &\qquad \qquad \qquad \qquad & $N^{ELL}$ \\
687 188 pbaillot
%$\forall \al.  (\al \rightarrow \al) \rightarrow (\al \rightarrow \al)$
688 188 pbaillot
%& & $\forall \al.  \bs (\al \fm \al) \fm \bs (\al \fm \al)$
689 188 pbaillot
%\end{tabular}
690 188 pbaillot
%}
691 188 pbaillot
%\end{center}
692 188 pbaillot
\smallskip
693 188 pbaillot
694 188 pbaillot
{\tiny Example: integer $2$, in F:
695 188 pbaillot
696 188 pbaillot
$$ \un{2}=\lambda f^{\blue (\al \rightarrow \al)}. \lambda x^{\blue \al}. (f\;(f\; x))~.$$
697 188 pbaillot
}
698 188 pbaillot
\begin{itemize}
699 188 pbaillot
\item
700 188 pbaillot
 Church binary words
701 188 pbaillot
\end{itemize}
702 188 pbaillot
%{\tiny
703 188 pbaillot
\begin{tabular}{cc}
704 188 pbaillot
 system F: & ELL: \\
705 188 pbaillot
$W^F$ & $W^{ELL}$\\
706 188 pbaillot
{\tiny $\forall \al.  (\al \rightarrow \al) \rightarrow (\al \rightarrow \al) \rightarrow (\al \rightarrow \al)$}
707 188 pbaillot
&
708 188 pbaillot
{\tiny $\forall \al.  \bs (\al \fm \al) \fm \bs (\al \fm \al) \fm \bs(\al \fm \al)$}
709 188 pbaillot
\end{tabular}
710 188 pbaillot
%}
711 188 pbaillot
\smallskip
712 188 pbaillot
713 188 pbaillot
{\tiny
714 188 pbaillot
Example: $w=\langle 1, 0, 0 \rangle$, in  F:
715 188 pbaillot
716 188 pbaillot
$$ \un{w}=\lambda s_0^{\blue (\al \rightarrow \al)}. \lambda s_1^{\blue (\al \rightarrow \al)}.
717 188 pbaillot
\lambda x^{\blue \al}. (s_1\;(s_0\; (s_0\; x)))~.$$
718 188 pbaillot
}
719 188 pbaillot
\end{frame}
720 188 pbaillot
721 188 pbaillot
%----------
722 188 pbaillot
723 188 pbaillot
\begin{frame} \frametitle{Representation of functions}
724 188 pbaillot
725 188 pbaillot
\begin{itemize}
726 188 pbaillot
\item  a term $t$ of type $!^k N \fm !^l N$, for some $k$, $l$,  represents a function over unary integers
727 188 pbaillot
\item some examples of terms
728 188 pbaillot
$$\begin{array}{lll}
729 188 pbaillot
\mbox{addition}&&\\
730 188 pbaillot
add &=& \la n m f x. (n\; f) \; (m \; f \; x) \; \\
731 188 pbaillot
732 188 pbaillot
   &:~ &N\fm N \fm N\\
733 188 pbaillot
&&\\
734 188 pbaillot
\mbox{multiplication}&&\\
735 188 pbaillot
%mult &=& \la n m f . (n\; (m\; f))  \\
736 188 pbaillot
mult &=& \la n m f . (n\; (m\; f))  \\
737 188 pbaillot
738 188 pbaillot
   &:~ &N\fm N \fm N\\
739 188 pbaillot
740 188 pbaillot
\mbox{squaring}&&\\
741 188 pbaillot
square &=& \la n f . (n\; (n\; f))  \\
742 188 pbaillot
743 188 pbaillot
   &:~ &\bs N \fm \bs N\\
744 188 pbaillot
\end{array}
745 188 pbaillot
$$
746 188 pbaillot
\end{itemize}
747 188 pbaillot
748 188 pbaillot
%$$\begin{array}{cclcc}
749 188 pbaillot
% N & =& \forall \al.  (\al \fm \al) \fli \pa (\al \fm \al)&&\\
750 188 pbaillot
%&&&&\\
751 188 pbaillot
%add &=& \la n. \la m .\la f .\la x . (n \; f \;(m \; f \; x))&:~ &N\fm N \fm N\\
752 188 pbaillot
%&&&&\\
753 188 pbaillot
%mult&=& \la n. \la m. (m \; \la k.\la f.\la x. (n \; f\; (k\; f\; x))) \; \underline{0}&:& ~N \fli N \fm \pa N\\
754 188 pbaillot
%mult&=& \la n. \la m. (m \; (add \; n) ) \; \underline{0}&:& ~N \fli N \fm \pa N\\
755 188 pbaillot
%&&&&\\
756 188 pbaillot
%square&& &:&N \fm \pa^{4}N
757 188 pbaillot
%\end{array}
758 188 pbaillot
%$$
759 188 pbaillot
\end{frame}
760 188 pbaillot
761 188 pbaillot
%----------
762 188 pbaillot
763 188 pbaillot
\begin{frame} \frametitle{Iteration in ELL}
764 188 pbaillot
765 188 pbaillot
 recall the iterator $\ite$:
766 188 pbaillot
$$ \ite= \la f {\red x} {\blue n}. \; (n \; f \; x) \; : \bs (A \fm A) \fm  {\red \bs A} \fm {\blue N} \fm \bs A$$
767 188 pbaillot
with $(\ite  \; t \; u \; \un{n}) \rightarrow (t\; (t \; \dots (t\; u)\dots))$  \quad ($n$ times)
768 188 pbaillot
769 188 pbaillot
\smallskip
770 188 pbaillot
771 188 pbaillot
\textbf{examples:}
772 188 pbaillot
773 188 pbaillot
$double: N \fm N$
774 188 pbaillot
775 188 pbaillot
$exp=  (\ite \; double \; \un{1}) : N \fm \bs N$
776 188 pbaillot
777 188 pbaillot
remark: $exp$ cannot be iterated; $tower= (\ite \exp \; \un{1})$ non ELL typable.
778 188 pbaillot
779 188 pbaillot
%$(add \underline{2}): N \fm N$
780 188 pbaillot
%
781 188 pbaillot
%$double'= \la n. (\ite  \; (add \underline{2}) \; \un{0}) \; n\; : N \fm \pa N$
782 188 pbaillot
%
783 188 pbaillot
%but $double'$ cannot be iterated.
784 188 pbaillot
%
785 188 pbaillot
%\medskip
786 188 pbaillot
787 188 pbaillot
\end{frame}
788 188 pbaillot
789 188 pbaillot
790 188 pbaillot
%----------
791 188 pbaillot
\begin{frame} \frametitle{From derivations to proof-nets }
792 188 pbaillot
793 188 pbaillot
\begin{figure} %[ht]
794 188 pbaillot
%\begin{center}
795 188 pbaillot
\includegraphics[angle=90,width=9cm]{SCANS/ELLtranslation.jpg}
796 188 pbaillot
%\end{center}
797 188 pbaillot
\end{figure}
798 188 pbaillot
\end{frame}
799 188 pbaillot
800 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
801 188 pbaillot
802 188 pbaillot
\begin{frame} \frametitle{Elementary linear logic rules, again}
803 188 pbaillot
804 188 pbaillot
%{\tiny
805 188 pbaillot
\vspace{-5mm}
806 188 pbaillot
807 188 pbaillot
\begin{center}
808 188 pbaillot
\begin{tabular}{ll}
809 188 pbaillot
  {\infer[\mbox{(Id)}]{ x:A \vdash x:A}{}} & \\[1ex]
810 188 pbaillot
 &\\
811 188 pbaillot
 {\infer[\mbox{($\fm$ i)}]{\Gamma  \vdash \la x. t: A \fm B }
812 188 pbaillot
 {\Gamma, x:A \vdash t:B}}
813 188 pbaillot
814 188 pbaillot
  &
815 188 pbaillot
 {\infer[\mbox{($\fm$ e)}]{\Gamma_1,\Gamma_2 \vdash (t\; u) :B }
816 188 pbaillot
  {\Gamma_1 \vdash t:A \fm B & \Gamma_2 \vdash u:A}}
817 188 pbaillot
\\[1ex]
818 188 pbaillot
&\\
819 188 pbaillot
{\infer[\mbox{(Cntr)}]{x:!A, \Gamma \vdash t[x \slash x_1, x \slash x_2] :B }{x_1:!A,x_2:!A, \Gamma \vdash t:B }}
820 188 pbaillot
&
821 188 pbaillot
{\infer[\mbox{(Weak)}]{\Gamma, x:B\vdash t: A }
822 188 pbaillot
 {\Gamma \vdash t:A}}
823 188 pbaillot
824 188 pbaillot
\\[1ex]
825 188 pbaillot
&\\
826 188 pbaillot
{\infer[\mbox{($!$ i)}]{x_1:! B_1, \dots, x_n:! B_n  \vdash t: ! A }
827 188 pbaillot
 {   x_1:B_1, \dots, x_n:B_n \vdash t:A}}
828 188 pbaillot
  &
829 188 pbaillot
{\infer[\mbox{($!$ e)}]{\Gamma_1,\Gamma_2  \vdash t[u \slash x] :B }
830 188 pbaillot
  {\Gamma_1  \vdash u: ! A  & \Gamma_2, x:! A \vdash t:B}}
831 188 pbaillot
\\[1ex]
832 188 pbaillot
%{\infer[\mbox{($\forall$ i) (*)}]{{ \Gamma  \vdash  t:\forall \alpha. A}}{{ \Gamma  \vdash t:A}}}
833 188 pbaillot
% &
834 188 pbaillot
% {\infer[\mbox{($\forall$ e)}]{\Gamma  \vdash t:A[B \slash \al] }
835 188 pbaillot
%{\Gamma \vdash t:\forall \al. A}}
836 188 pbaillot
 \end{tabular}
837 188 pbaillot
%}
838 188 pbaillot
\end{center}
839 188 pbaillot
\end{frame}
840 188 pbaillot
841 188 pbaillot
842 188 pbaillot
843 188 pbaillot
%----------
844 188 pbaillot
\begin{frame} \frametitle{ELL Proof-Nets }
845 188 pbaillot
846 188 pbaillot
\vspace{-8mm}
847 188 pbaillot
\begin{figure} %[ht]
848 188 pbaillot
%\begin{center}
849 188 pbaillot
\includegraphics[angle=90,width=10.8cm]{SCANS/ELLproofnets6.jpg}
850 188 pbaillot
851 188 pbaillot
852 188 pbaillot
%\end{center}
853 188 pbaillot
%\caption{Lambda terms and Light proof-nets.}\label{schema1}
854 188 pbaillot
855 188 pbaillot
\end{figure}
856 188 pbaillot
857 188 pbaillot
858 188 pbaillot
\textit{depth} of an edge: number of boxes it is contained in.
859 188 pbaillot
860 188 pbaillot
%\vspace{-1mm}
861 188 pbaillot
862 188 pbaillot
\textit{depth} of proof-net: maximal depth of its edges.
863 188 pbaillot
\end{frame}
864 188 pbaillot
865 188 pbaillot
%%%%%%%%%
866 188 pbaillot
\begin{frame} \frametitle{ELL proof-net : example  }
867 188 pbaillot
868 188 pbaillot
%\vspace{-5mm}
869 188 pbaillot
Church integer $\un{3}$:
870 188 pbaillot
871 188 pbaillot
\vspace{-4mm}
872 188 pbaillot
873 188 pbaillot
\begin{figure} %[ht]
874 188 pbaillot
%\begin{center}
875 188 pbaillot
\includegraphics[angle=90,width=5cm]{SCANS/examplePNthree.jpg}
876 188 pbaillot
%\end{center}
877 188 pbaillot
\end{figure}
878 188 pbaillot
879 188 pbaillot
\end{frame}
880 188 pbaillot
881 188 pbaillot
882 188 pbaillot
883 188 pbaillot
%%%%%%%%%
884 188 pbaillot
\begin{frame} \frametitle{ELL proof-net reduction  }
885 188 pbaillot
886 188 pbaillot
\vspace{-6mm}
887 188 pbaillot
\begin{figure} %[ht]
888 188 pbaillot
%\begin{center}
889 188 pbaillot
\includegraphics[angle=90,width=10cm]{SCANS/ELLreduction.jpg}
890 188 pbaillot
%\end{center}
891 188 pbaillot
\end{figure}
892 188 pbaillot
893 188 pbaillot
\end{frame}
894 188 pbaillot
895 188 pbaillot
%----------
896 188 pbaillot
\begin{frame} \frametitle{Methodology}
897 188 pbaillot
898 188 pbaillot
\begin{itemize}
899 188 pbaillot
\item write programs with ELL typed $\lambda$-terms
900 188 pbaillot
\item evaluate them by:
901 188 pbaillot
902 188 pbaillot
compiling them into proof-nets, and then performing proof-net reduction
903 188 pbaillot
\item beware:
904 188 pbaillot
 \begin{itemize}
905 188 pbaillot
 \item proof-net reduction does not exactly match $\beta$-reduction
906 188 pbaillot
 \item ELL does not satisfy subject reduction
907 188 pbaillot
 \end{itemize}
908 188 pbaillot
 but that's all right for our present goal \dots
909 188 pbaillot
910 188 pbaillot
 More about that in tomorrow's talk, without proof-nets.
911 188 pbaillot
\end{itemize}
912 188 pbaillot
913 188 pbaillot
\end{frame}
914 188 pbaillot
915 188 pbaillot
916 188 pbaillot
%%%%%%%%%
917 188 pbaillot
\begin{frame} \frametitle{ELL proof-net reduction  properties}
918 188 pbaillot
919 188 pbaillot
\begin{itemize}
920 188 pbaillot
 \item We have
921 188 pbaillot
  \begin{prop}[Stratification]
922 188 pbaillot
 The depth of an edge does not change during reduction.
923 188 pbaillot
\end{prop}
924 188 pbaillot
925 188 pbaillot
Consequence: the depth $d$ of a proof-net does not increase during reduction.
926 188 pbaillot
\item \textbf{Level-by-level reduction strategy}:
927 188 pbaillot
928 188 pbaillot
$R$ proof-net of depth $d$
929 188 pbaillot
930 188 pbaillot
perform reduction successively at depth 0, 1 \dots,  $d$.
931 188 pbaillot
932 188 pbaillot
\end{itemize}
933 188 pbaillot
\end{frame}
934 188 pbaillot
935 188 pbaillot
%%%%%%%%%
936 188 pbaillot
\begin{frame} \frametitle{Level-by-level reduction of ELL proof-nets}
937 188 pbaillot
938 188 pbaillot
939 188 pbaillot
\begin{itemize}
940 188 pbaillot
\item let $R$ be an ELL proof-net of depth $d$
941 188 pbaillot
942 188 pbaillot
$|R|_i$ = size at depth $i$
943 188 pbaillot
944 188 pbaillot
$|R|$ = total size
945 188 pbaillot
946 188 pbaillot
round $i$: reduction at depth $i$
947 188 pbaillot
948 188 pbaillot
there are $d+1$ rounds for the reduction of $R$
949 188 pbaillot
950 188 pbaillot
\item \textbf{what happens during round $i$?}
951 188 pbaillot
\begin{itemize}
952 188 pbaillot
 \item $|R|_i$  decreases at each step
953 188 pbaillot
954 188 pbaillot
  thus there are at most  $|R|_i$ steps  \quad {\blue (size bounds time)}
955 188 pbaillot
 \item but  $|R|_{i+1}$ can increase at each step, in fact it can double
956 188 pbaillot
 \item hence  round $i$ can cause an exponential size increase
957 188 pbaillot
 \end{itemize}
958 188 pbaillot
\item on the whole we have a $2_d^{|R|}$ size increase
959 188 pbaillot
\item this yields a  $O(2_d^{|R|})$ bound on the number of steps
960 188 pbaillot
\end{itemize}
961 188 pbaillot
\end{frame}
962 188 pbaillot
963 188 pbaillot
%%%%%%%%%
964 188 pbaillot
\begin{frame} \frametitle{ELL complexity results}
965 188 pbaillot
966 188 pbaillot
%\begin{itemize}
967 188 pbaillot
 %\item We get
968 188 pbaillot
  \begin{theorem}[Proof-net complexity]
969 188 pbaillot
  If $R$ is an ELL proof-net of depth $d$, then it can be reduced to its normal form in
970 188 pbaillot
  $O(2_d^{|R|})$ steps.
971 188 pbaillot
972 188 pbaillot
\end{theorem}
973 188 pbaillot
974 188 pbaillot
\medskip
975 188 pbaillot
976 188 pbaillot
  \begin{theorem}[Representable functions]
977 188 pbaillot
  The functions representable by a term of type $N \fm !^k N$, where $k\geq 0$ , are exactly the elementary time functions.
978 188 pbaillot
979 188 pbaillot
\end{theorem}
980 188 pbaillot
981 188 pbaillot
%\end{itemize}
982 188 pbaillot
\end{frame}
983 188 pbaillot
984 188 pbaillot
%%%%%%%%%
985 188 pbaillot
\begin{frame} \frametitle{Proof of the representability theorem}
986 188 pbaillot
987 188 pbaillot
\begin{itemize}
988 188 pbaillot
 \item $\subseteq$ (soundness):
989 188 pbaillot
990 188 pbaillot
 if $t: N \fm !^k N$ for some $k$, then $t$ represents an elementary function $f$.
991 188 pbaillot
992 188 pbaillot
 \smallskip
993 188 pbaillot
994 188 pbaillot
 \textbf{proof}: compute $(t \underline{n})$ by proof-net reduction.
995 188 pbaillot
996 188 pbaillot
 \item $\supseteq$ (completeness):
997 188 pbaillot
998 188 pbaillot
  if $f: \mathbb{N} \rightarrow \mathbb{N}$ is an elementary function, then there exists $k$ and $t: N \fm !^k N$ such that $t$ represents $f$.
999 188 pbaillot
1000 188 pbaillot
 \smallskip
1001 188 pbaillot
1002 188 pbaillot
   \textbf{proof}: simulation of $O(2_i^n)$-time bounded Turing machine, for any $i$.
1003 188 pbaillot
1004 188 pbaillot
\end{itemize}
1005 188 pbaillot
\end{frame}
1006 188 pbaillot
%%%%%%%%%
1007 188 pbaillot
1008 188 pbaillot
\section{Light linear logic}
1009 188 pbaillot
1010 188 pbaillot
\begin{frame} \frametitle{Taming the exponential blow-up?}
1011 188 pbaillot
%\begin{frame} \frametitle{Motivation: exponential blow-up}
1012 188 pbaillot
1013 188 pbaillot
\vspace{-4mm}
1014 188 pbaillot
\begin{figure} %[ht]
1015 188 pbaillot
%\begin{center}
1016 188 pbaillot
\includegraphics[width=2.7cm]{SCANS/example_exponent.jpg}
1017 188 pbaillot
%\end{center}
1018 188 pbaillot
\end{figure}
1019 188 pbaillot
1020 188 pbaillot
\end{frame}
1021 188 pbaillot
1022 188 pbaillot
1023 188 pbaillot
%-----------
1024 188 pbaillot
\begin{frame} \frametitle{Light linear logic (LLL)  \qquad [Girard95]}
1025 188 pbaillot
1026 188 pbaillot
\begin{itemize}
1027 188 pbaillot
\item Language of formulas:
1028 188 pbaillot
$$ A, B := \alpha \;|\; A \multimap B  \;|\; \forall \alpha. A  \;|\;  !A \;|\; {\red \pa A}$$
1029 188 pbaillot
1030 188 pbaillot
intuition: $\pa$ a new modality for non-duplicable boxes
1031 188 pbaillot
\item  The   following principles are still \textbf{not} provable
1032 188 pbaillot
 $$ !A \multimap A, \quad  !A \multimap !!A$$
1033 188 pbaillot
\end{itemize}
1034 188 pbaillot
\end{frame}
1035 188 pbaillot
1036 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1037 188 pbaillot
1038 188 pbaillot
\begin{frame} \frametitle{Light linear logic rules}
1039 188 pbaillot
1040 188 pbaillot
\begin{itemize}
1041 188 pbaillot
\item rules (Id), ($\fm$ i), ($\fm$ e), (Cntr), (Weak): as in ELL.
1042 188 pbaillot
 \item new rules ($!$ i), ($!$ e), ($\pa$ i), ($\pa$ e):
1043 188 pbaillot
1044 188 pbaillot
\bigskip
1045 188 pbaillot
1046 188 pbaillot
\begin{center}
1047 188 pbaillot
\begin{tabular}{ll}
1048 188 pbaillot
%  {\infer[\mbox{(Id)}]{ x:A \vdash x:A}{}} & \\[1ex]
1049 188 pbaillot
% &\\
1050 188 pbaillot
% {\infer[\mbox{($\fm$ i)}]{\Gamma  \vdash \la x. t: A \fm B }
1051 188 pbaillot
% {\Gamma, x:A \vdash t:B}}
1052 188 pbaillot
%
1053 188 pbaillot
%  &
1054 188 pbaillot
% {\infer[\mbox{($\fm$ e)}]{\Gamma_1,\Gamma_2 \vdash (t\; u) :B }
1055 188 pbaillot
%  {\Gamma_1 \vdash t:A \fm B & \Gamma_2 \vdash u:A}}
1056 188 pbaillot
%\\[1ex]
1057 188 pbaillot
%&\\
1058 188 pbaillot
%{\infer[\mbox{(Cntr)}]{x:A, \Gamma \vdash t[x \slash x_1, x \slash x_2] :B }{x_1:!A,x_2:!A, \Gamma \vdash t:B }}
1059 188 pbaillot
%&
1060 188 pbaillot
%{\infer[\mbox{(Weak)}]{\Gamma, x:B\vdash t: A }
1061 188 pbaillot
% {\Gamma \vdash t:A}}
1062 188 pbaillot
%
1063 188 pbaillot
%\\[1ex]
1064 188 pbaillot
%&\\
1065 188 pbaillot
{\infer[\mbox{($!$ i)}]{x:! B  \vdash t: ! A }
1066 188 pbaillot
 {   x :B \vdash t:A}}
1067 188 pbaillot
  &
1068 188 pbaillot
{\infer[\mbox{($!$ e)}]{\Gamma_1,\Gamma_2  \vdash t[u \slash x] :B }
1069 188 pbaillot
  {\Gamma_1  \vdash u: ! A  & \Gamma_2, x:! A \vdash t:B}}
1070 188 pbaillot
\\[1ex]
1071 188 pbaillot
&\\
1072 188 pbaillot
1073 188 pbaillot
{\infer[\mbox{($\pa$ i)}]{! \Gamma, \pa \Delta  \vdash t: \pa  A }
1074 188 pbaillot
 {   \Gamma, \Delta  \vdash t:A}}
1075 188 pbaillot
  &
1076 188 pbaillot
{\infer[\mbox{($!$ e)}]{\Gamma_1,\Gamma_2  \vdash t[u \slash x] :B }
1077 188 pbaillot
  {\Gamma_1  \vdash u: \pa A  & \Gamma_2, x: \pa  A \vdash t:B}}
1078 188 pbaillot
1079 188 pbaillot
%{\infer[\mbox{($\pa$ i)}]{x_1:! B_1, \dots, x_i: \pa B_i , \dots,  x_n:\pa  B_n  \vdash t: \pa  A }
1080 188 pbaillot
% {   x_1:B_1, \dots, x_i: B_i, \dots , x_n:B_n \vdash t:A}}
1081 188 pbaillot
%  &
1082 188 pbaillot
%{\infer[\mbox{($!$ e)}]{\Gamma_1,\Gamma_2  \vdash t[u \slash x] :B }
1083 188 pbaillot
%  {\Gamma_1  \vdash u: \pa A  & \Gamma_2, x: \pa  A \vdash t:B}}
1084 188 pbaillot
%\\[1ex]
1085 188 pbaillot
1086 188 pbaillot
%{\infer[\mbox{($\forall$ i) (*)}]{{ \Gamma  \vdash  t:\forall \alpha. A}}{{ \Gamma  \vdash t:A}}}
1087 188 pbaillot
% &
1088 188 pbaillot
% {\infer[\mbox{($\forall$ e)}]{\Gamma  \vdash t:A[B \slash \al] }
1089 188 pbaillot
%{\Gamma \vdash t:\forall \al. A}}
1090 188 pbaillot
 \end{tabular}
1091 188 pbaillot
%}
1092 188 pbaillot
\end{center}
1093 188 pbaillot
1094 188 pbaillot
\bigskip
1095 188 pbaillot
 where if $\Gamma= x_1:B_1, \dots, x_k:B_k$,
1096 188 pbaillot
1097 188 pbaillot
$\dagger \Gamma= x_1: \dagger B_1, \dots, x_k: :\dagger B_k$, for $\dagger= !, \pa$.
1098 188 pbaillot
\end{itemize}
1099 188 pbaillot
1100 188 pbaillot
\end{frame}
1101 188 pbaillot
1102 188 pbaillot
%----------
1103 188 pbaillot
\begin{frame} \frametitle{Forgetful map from LLL to  ELL}
1104 188 pbaillot
1105 188 pbaillot
1106 188 pbaillot
Consider $\lte{(.)}: LLL  \rightarrow ELL$ defined by:
1107 188 pbaillot
$$\lte{(\pa A)}= ! \lte{A},   \quad \lte{(! A)}= ! \lte{A}$$
1108 188 pbaillot
and other connectives unchanged.
1109 188 pbaillot
%\eras{(A\fm B)}=\eras{A} \rightarrow \eras{B}, \quad \eras{(\forall \al. A)}= \forall \al. \eras{A}, \quad \eras{\al}=\al.$$
1110 188 pbaillot
1111 188 pbaillot
\begin{prop}
1112 188 pbaillot
 If $\Gamma \vdash_{LLL} t:A$ then  $\lte{\Gamma} \vdash_{ELL} t:\lte{A}$.
1113 188 pbaillot
 \end{prop}
1114 188 pbaillot
1115 188 pbaillot
\end{frame}
1116 188 pbaillot
1117 188 pbaillot
1118 188 pbaillot
1119 188 pbaillot
%----------
1120 188 pbaillot
\begin{frame} \frametitle{Data types in LLL}
1121 188 pbaillot
1122 188 pbaillot
\begin{itemize}
1123 188 pbaillot
\item
1124 188 pbaillot
 Church unary integers
1125 188 pbaillot
\end{itemize}
1126 188 pbaillot
%\begin{center}
1127 188 pbaillot
%{\tiny
1128 188 pbaillot
%\hspace{-4mm}
1129 188 pbaillot
\begin{tabular}{ccc}
1130 188 pbaillot
 system F: &  & LLL: \\
1131 188 pbaillot
$N^F$ &\qquad  & $N^{LLL}$ \\
1132 188 pbaillot
$\forall \al.  (\al \rightarrow \al) \rightarrow (\al \rightarrow \al)$
1133 188 pbaillot
& & $\forall \al.  \bs (\al \fm \al) \fm {\red \pa}  (\al \fm \al)$
1134 188 pbaillot
\end{tabular}
1135 188 pbaillot
1136 188 pbaillot
%\begin{tabular}{ccc}
1137 188 pbaillot
% system F: &  & ELL: \\
1138 188 pbaillot
%$N^F$ &\qquad \qquad \qquad \qquad & $N^{ELL}$ \\
1139 188 pbaillot
%$\forall \al.  (\al \rightarrow \al) \rightarrow (\al \rightarrow \al)$
1140 188 pbaillot
%& & $\forall \al.  \bs (\al \fm \al) \fm \bs (\al \fm \al)$
1141 188 pbaillot
%\end{tabular}
1142 188 pbaillot
%}
1143 188 pbaillot
%\end{center}
1144 188 pbaillot
\smallskip
1145 188 pbaillot
1146 188 pbaillot
{\tiny Example: integer $2$, in F:
1147 188 pbaillot
1148 188 pbaillot
$$ \un{2}=\lambda f^{\blue (\al \rightarrow \al)}. \lambda x^{\blue \al}. (f\;(f\; x))~.$$
1149 188 pbaillot
}
1150 188 pbaillot
\begin{itemize}
1151 188 pbaillot
\item
1152 188 pbaillot
 Church binary words
1153 188 pbaillot
\end{itemize}
1154 188 pbaillot
%{\tiny
1155 188 pbaillot
\begin{tabular}{cc}
1156 188 pbaillot
 system F: & LLL: \\
1157 188 pbaillot
$W^F$ & $W^{LLL}$\\
1158 188 pbaillot
{\tiny $\forall \al.  (\al \rightarrow \al) \rightarrow (\al \rightarrow \al) \rightarrow (\al \rightarrow \al)$}
1159 188 pbaillot
&
1160 188 pbaillot
{\tiny $\forall \al.  \bs (\al \fm \al) \fm \bs (\al \fm \al) \fm {\red \pa} (\al \fm \al)$}
1161 188 pbaillot
\end{tabular}
1162 188 pbaillot
%}
1163 188 pbaillot
\smallskip
1164 188 pbaillot
1165 188 pbaillot
{\tiny
1166 188 pbaillot
Example: $w=\langle 1, 0, 0 \rangle$, in  F:
1167 188 pbaillot
1168 188 pbaillot
$$ \un{w}=\lambda s_0^{\blue (\al \rightarrow \al)}. \lambda s_1^{\blue (\al \rightarrow \al)}.
1169 188 pbaillot
\lambda x^{\blue \al}. (s_1\;(s_0\; (s_0\; x)))~.$$
1170 188 pbaillot
}
1171 188 pbaillot
\end{frame}
1172 188 pbaillot
1173 188 pbaillot
%----------
1174 188 pbaillot
1175 188 pbaillot
\begin{frame} \frametitle{Representation of functions}
1176 188 pbaillot
1177 188 pbaillot
\begin{itemize}
1178 188 pbaillot
\item  a term $t$ of type $!^k N \fm \pa^l N$, for some $k$, $l$,  represents a function over unary integers
1179 188 pbaillot
1180 188 pbaillot
 $!^k W \fm \pa^l W$: function over binary words.
1181 188 pbaillot
1182 188 pbaillot
\item some examples of terms
1183 188 pbaillot
$$\begin{array}{lll}
1184 188 pbaillot
\mbox{addition}&&\\
1185 188 pbaillot
add &=& \la n m f x. (n\; f) \; (m \; f \; x) \; \\
1186 188 pbaillot
1187 188 pbaillot
   &:~ &N\fm N \fm N\\
1188 188 pbaillot
&&\\
1189 188 pbaillot
\mbox{double}&&\\
1190 188 pbaillot
double &=& \la n  f x. (n\; f) \; (n \; f \; x) \; \\
1191 188 pbaillot
1192 188 pbaillot
   &:~ &! N \fm \pa N\\
1193 188 pbaillot
   \mbox{concatenation}&&\\
1194 188 pbaillot
%conc &=& \la u^{W}. \la v^{W} .\La \al. \la o. \la z. \la x . (u \; o \; z \;(v \; o\; z \; x))\\
1195 188 pbaillot
%conc &=& \la u^{W}. \la v^{W} . \la o. \la z. \la x . ((u) \; o \; z) \;(v) \; o\; z \; x\\
1196 188 pbaillot
%   &:~ &W\fl W \fl W\\
1197 188 pbaillot
   conc &:~ &W\fm W \fm W\\
1198 188 pbaillot
  \end{array}
1199 188 pbaillot
   $$
1200 188 pbaillot
%\mbox{multiplication}&&\\
1201 188 pbaillot
%%mult &=& \la n m f . (n\; (m\; f))  \\
1202 188 pbaillot
%mult' &=& \la n m f . (n\; (m\; f))  \\
1203 188 pbaillot
%
1204 188 pbaillot
%   &:~ &N\fm N \fm N\\
1205 188 pbaillot
%
1206 188 pbaillot
%\mbox{squaring}&&\\
1207 188 pbaillot
%square &=& \la n f . (n\; (n\; f))  \\
1208 188 pbaillot
%
1209 188 pbaillot
%   &:~ &\bs N \fm \bs N\\
1210 188 pbaillot
%\end{array}
1211 188 pbaillot
%$$
1212 188 pbaillot
\end{itemize}
1213 188 pbaillot
1214 188 pbaillot
\end{frame}
1215 188 pbaillot
1216 188 pbaillot
%----------
1217 188 pbaillot
1218 188 pbaillot
\begin{frame} \frametitle{Iteration in LLL}
1219 188 pbaillot
1220 188 pbaillot
 we can type the iterator $\ite$:
1221 188 pbaillot
$$ \ite= \la f {x} {n}. \; (n \; f \; x) \; : \bs (A \fm A) \fm  {\red \bs A} \fm {N} \fm {\red \pa A}$$
1222 188 pbaillot
%with $(\ite _A \; F \; t) \; \un{n} \rightarrow (F\; (F \; \dots (F\; t)\dots))$  \quad ($n$ times)
1223 188 pbaillot
1224 188 pbaillot
\textbf{examples:}
1225 188 pbaillot
1226 188 pbaillot
$(add \underline{3}): N \fm N$ can be iterated
1227 188 pbaillot
1228 188 pbaillot
\smallskip
1229 188 pbaillot
1230 188 pbaillot
$double: !N \fm \pa N$ cannot be iterated
1231 188 pbaillot
1232 188 pbaillot
\smallskip
1233 188 pbaillot
1234 188 pbaillot
thus some exponentially growing terms are not typable
1235 188 pbaillot
%$double'= \la n. (\ite  \; (add \underline{2}) \; \un{0}) \; n\; : N \fm \pa N$
1236 188 pbaillot
%
1237 188 pbaillot
%but $double'$ cannot be iterated.
1238 188 pbaillot
1239 188 pbaillot
1240 188 pbaillot
 \end{frame}
1241 188 pbaillot
1242 188 pbaillot
%%%%%%%%%
1243 188 pbaillot
\begin{frame} \frametitle{LLL proof-nets}
1244 188 pbaillot
1245 188 pbaillot
\vspace{-3mm}
1246 188 pbaillot
\begin{figure} %[ht]
1247 188 pbaillot
%\begin{center}
1248 188 pbaillot
\includegraphics[angle=90,width=6.3cm]{SCANS/LLLboxes.jpg}
1249 188 pbaillot
%\end{center}
1250 188 pbaillot
\end{figure}
1251 188 pbaillot
1252 188 pbaillot
\end{frame}
1253 188 pbaillot
1254 188 pbaillot
%%%%%%%%%
1255 188 pbaillot
\begin{frame} \frametitle{LLL proof-net reduction}
1256 188 pbaillot
1257 188 pbaillot
\vspace{-4mm}
1258 188 pbaillot
1259 188 pbaillot
\begin{figure} %[ht]
1260 188 pbaillot
%\begin{center}
1261 188 pbaillot
\includegraphics[angle=90,width=6cm]{SCANS/LLLreduction.jpg}
1262 188 pbaillot
%\end{center}
1263 188 pbaillot
\end{figure}
1264 188 pbaillot
1265 188 pbaillot
\end{frame}
1266 188 pbaillot
1267 188 pbaillot
%%%%%%%%%
1268 188 pbaillot
\begin{frame} \frametitle{Level-by-level reduction of LLL proof-nets}
1269 188 pbaillot
1270 188 pbaillot
1271 188 pbaillot
\begin{itemize}
1272 188 pbaillot
\item as in ELL we use a level-by-level strategy
1273 188 pbaillot
\item let $R$ be an LLL proof-net of depth $d$
1274 188 pbaillot
1275 188 pbaillot
round $i$: reduction at depth $i$
1276 188 pbaillot
1277 188 pbaillot
there are $d+1$ rounds for the reduction of $R$
1278 188 pbaillot
1279 188 pbaillot
\item \textbf{what happens during round $i$?}
1280 188 pbaillot
\begin{itemize}
1281 188 pbaillot
 \item $|R|_i$  decreases at each step
1282 188 pbaillot
1283 188 pbaillot
  thus there are at most  $|R|_i$ steps  \quad {\blue (size bounds time)}
1284 188 pbaillot
 \item yet $|R|_{i+1}$ can increase:
1285 188 pbaillot
1286 188 pbaillot
 during round $i$ we can have a quadratic increase:
1287 188 pbaillot
1288 188 pbaillot
 $$|R'|_{i+1} \leq |R|_{i+1}^2$$
1289 188 pbaillot
 \end{itemize}
1290 188 pbaillot
\item this repeats $d$ times, so on the whole we have a $|R|^{2^d}$ size increase
1291 188 pbaillot
\item this yields a  $O(|R|^{2^d})$ bound on the number of steps
1292 188 pbaillot
\end{itemize}
1293 188 pbaillot
\end{frame}
1294 188 pbaillot
1295 188 pbaillot
%%%%%%%%%
1296 188 pbaillot
\begin{frame} \frametitle{LLL complexity results}
1297 188 pbaillot
1298 188 pbaillot
%\begin{itemize}
1299 188 pbaillot
 %\item We get
1300 188 pbaillot
  \begin{theorem}[Proof-net complexity]
1301 188 pbaillot
  If $R$ is an LLL proof-net of depth $d$, then it can be reduced to its normal form in
1302 188 pbaillot
  $O(|R|^{2^d})$ steps.
1303 188 pbaillot
1304 188 pbaillot
\end{theorem}
1305 188 pbaillot
1306 188 pbaillot
Thus at fixed depth $d$ we have a polynomial bound.
1307 188 pbaillot
\medskip
1308 188 pbaillot
1309 188 pbaillot
  \begin{theorem}[Representable functions]
1310 188 pbaillot
  The functions representable by a term of type $W \fm \pa^k W$, for $k\geq 0$, are exactly the functions of FP (polynomial time functions).
1311 188 pbaillot
\end{theorem}
1312 188 pbaillot
1313 188 pbaillot
%\end{itemize}
1314 188 pbaillot
\end{frame}
1315 188 pbaillot
1316 188 pbaillot
%%%%%%%%%
1317 188 pbaillot
\begin{frame} \frametitle{Further comments about LLL}
1318 188 pbaillot
1319 188 pbaillot
\begin{itemize}
1320 188 pbaillot
\item \textbf{LLL and $\lambda$-calculus}:
1321 188 pbaillot
1322 188 pbaillot
 a proper type system for $\lambda$-calculus can be designed out of LLL, which ensures a strong polynomial time bound on $\beta$-reduction (and not only on proof-net reduction)
1323 188 pbaillot
\item \textbf{about expressivity}:
1324 188 pbaillot
1325 188 pbaillot
the completeness result is an extensional one
1326 188 pbaillot
1327 188 pbaillot
but the intensional expressivity of LLL is quite limited
1328 188 pbaillot
1329 188 pbaillot
\smallskip
1330 188 pbaillot
1331 188 pbaillot
indeed:  rich features (higher-order, polymorphism) but "pessimistic" account of iteration \dots
1332 188 pbaillot
\end{itemize}
1333 188 pbaillot
\end{frame}
1334 188 pbaillot
1335 188 pbaillot
\section{Other linear logic variants}
1336 188 pbaillot
1337 188 pbaillot
%%%%%%%%%
1338 188 pbaillot
\begin{frame} \frametitle{A glimpse of a linear logics zoo}
1339 188 pbaillot
1340 188 pbaillot
\begin{itemize}
1341 188 pbaillot
\item for P
1342 188 pbaillot
\begin{itemize}
1343 188 pbaillot
  \item soft linear logic:   {\tiny  [Lafont04]}
1344 188 pbaillot
1345 188 pbaillot
     a simple system, but with more constrained programming
1346 188 pbaillot
1347 188 pbaillot
     \item bounded linear logic: {\tiny [GSS92]}
1348 188 pbaillot
1349 188 pbaillot
     $!_{P(\vec{x})} A$ : more explicit, but more flexible
1350 188 pbaillot
\end{itemize}
1351 188 pbaillot
\item for EXPTIME and $k$-EXPTIME
1352 188 pbaillot
\begin{itemize}
1353 188 pbaillot
  \item ELL again: see tomorrow's talk
1354 188 pbaillot
\end{itemize}
1355 188 pbaillot
\item for PSPACE
1356 188 pbaillot
   \begin{itemize}
1357 188 pbaillot
  \item  $STA_B$ {\tiny [GMRdR08]} : extends soft linear logic with a craftly typed conditional
1358 188 pbaillot
  \end{itemize}
1359 188 pbaillot
\item for LOGSPACE
1360 188 pbaillot
 \begin{itemize}
1361 188 pbaillot
  \item $IntML$ {\tiny[DLS10]}: evaluation by computation by interaction
1362 188 pbaillot
  \end{itemize}
1363 188 pbaillot
\end{itemize}
1364 188 pbaillot
\end{frame}
1365 188 pbaillot
1366 188 pbaillot
%\section{Conclusion}
1367 188 pbaillot
%%%%%%%%%%%%%%%%
1368 188 pbaillot
\begin{frame}{Conclusions and perspectives}
1369 188 pbaillot
\begin{itemize}
1370 188 pbaillot
\item while ramified recursion is based on a stratification of data,
1371 188 pbaillot
1372 188 pbaillot
ELL / LLL are based on a stratification of programs
1373 188 pbaillot
\item they yield type systems for $\lambda$-calculus
1374 188 pbaillot
\item w.r.t. other ICC approaches:
1375 188 pbaillot
\begin{itemize}
1376 188 pbaillot
   \item handle higher-order computation
1377 188 pbaillot
   \item but limited intensional expressivity
1378 188 pbaillot
\end{itemize}
1379 188 pbaillot
relations with other ICC systems are still to explore
1380 188 pbaillot
%\item still to explore: how they relate to other more expressive ICC approaches (interpretations, NSI types)
1381 188 pbaillot
\item light logics are languages for higher-order computation, but we only characterize first-order complexity classes \dots
1382 188 pbaillot
1383 188 pbaillot
 what about   higher-order complexity?
1384 188 pbaillot
\end{itemize}
1385 188 pbaillot
\end{frame}
1386 188 pbaillot
1387 188 pbaillot
\end{document}
1388 188 pbaillot
1389 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1390 188 pbaillot
%%%%%%%%%%%%%%%%% GARBAGE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1391 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1392 188 pbaillot
1393 188 pbaillot
1394 188 pbaillot
%-----------
1395 188 pbaillot
\begin{frame} \frametitle{Light linear logic, LLL (Girard 98)}
1396 188 pbaillot
1397 188 pbaillot
%\vspace{-8mm}
1398 188 pbaillot
1399 188 pbaillot
$$
1400 188 pbaillot
\begin{array}{ccc}
1401 188 pbaillot
 \bs A \fm \bs A \otimes \bs A \qquad & \infer{ \bs A\vdash  \bs B}{A \vdash B} \qquad           & \\
1402 188 pbaillot
 & \bs A \otimes \bs B \fm \pa (A \otimes B) &
1403 188 pbaillot
\end{array}
1404 188 pbaillot
$$
1405 188 pbaillot
1406 188 pbaillot
\begin{tabular}{ll}
1407 188 pbaillot
new modality $\pa$, with: & $\bs A \fm \pa A$\\
1408 188 pbaillot
$\pa$ is a functor and &$\pa A \otimes \pa B \fm \pa(A\otimes B)$
1409 188 pbaillot
\end{tabular}
1410 188 pbaillot
1411 188 pbaillot
$\longrightarrow$ manages to avoid both exponentiation schemes
1412 188 pbaillot
1413 188 pbaillot
\smallskip
1414 188 pbaillot
1415 188 pbaillot
 Light affine logic (LAL) is the variant with full weakening.
1416 188 pbaillot
\end{frame}
1417 188 pbaillot
1418 188 pbaillot
%%%%%%%%%%%
1419 188 pbaillot
\begin{frame} \frametitle{Light linear logic: properties}
1420 188 pbaillot
Proofs can be represented as \textit{proof-nets} (graphs). Normalization of proof-nets
1421 188 pbaillot
corresponds to program execution.
1422 188 pbaillot
\smallskip
1423 188 pbaillot
1424 188 pbaillot
\begin{theo}[Girard] %[Girard 95]
1425 188 pbaillot
Light linear logic \textit{proof-nets} admit a polynomial time normalization (at fixed \textit{depth}).
1426 188 pbaillot
\end{theo}
1427 188 pbaillot
1428 188 pbaillot
%\smallskip
1429 188 pbaillot
1430 188 pbaillot
\begin{theo}[Completeness. Girard/Asperti-Roversi]
1431 188 pbaillot
%All polynomial time functions on binary lists
1432 188 pbaillot
  All polynomial time functions $f: \{0,1\}^{\star} \rightarrow  \{0,1\}^{\star}$
1433 188 pbaillot
can be represented in Light Linear Logic (resp. Light \textit{Affine} Logic).
1434 188 pbaillot
\end{theo}
1435 188 pbaillot
1436 188 pbaillot
\end{frame}
1437 188 pbaillot
1438 188 pbaillot
%-----------
1439 188 pbaillot
\begin{frame} \frametitle{ Light linear logic and typing}
1440 188 pbaillot
1441 188 pbaillot
%\vspace{-3mm}
1442 188 pbaillot
1443 188 pbaillot
Can we use LLL or LAL directly as type systems for lambda calculus~?
1444 188 pbaillot
\smallskip
1445 188 pbaillot
There are two pitfalls:
1446 188 pbaillot
\begin{itemize}
1447 188 pbaillot
\item they do not give subject-reduction,
1448 188 pbaillot
\item no polynomial bound on the number of $\beta$-reduction steps for typed terms (even if there is one on proof-net normalization).
1449 188 pbaillot
\end{itemize}
1450 188 pbaillot
\end{frame}
1451 188 pbaillot
1452 188 pbaillot
%-----------
1453 188 pbaillot
\begin{frame} \frametitle{Type system DLAL}
1454 188 pbaillot
1455 188 pbaillot
%\vspace{-3mm}
1456 188 pbaillot
%
1457 188 pbaillot
%Can we use LLL or LAL directly as type systems for lambda calculus~?
1458 188 pbaillot
% There are two pitfalls:
1459 188 pbaillot
%\begin{itemize}
1460 188 pbaillot
%\item they do not give subject-reduction,
1461 188 pbaillot
%\item no polynomial bound on the number of $\beta$-reduction steps for typed terms (even if there is one on proof-net normalization).
1462 188 pbaillot
%\end{itemize}
1463 188 pbaillot
1464 188 pbaillot
%\medskip
1465 188 pbaillot
%$\rightarrow$ To overcome these problems:
1466 188 pbaillot
1467 188 pbaillot
To overcome the problems with typing in LAL:
1468 188 pbaillot
1469 188 pbaillot
we can restrict in Light affine logic the use of $\bs$ to $\bs A \fm B$, denoted $A \fli B$
1470 188 pbaillot
1471 188 pbaillot
the DLAL (\textit{Dual Light Affine Logic}) type system [Baillot-Terui04]:
1472 188 pbaillot
$$ A, B ::= \alpha \; |\; A \fm B \; |\; A \fli B \; |\; \pa A \; |\; \forall \alpha. A$$
1473 188 pbaillot
1474 188 pbaillot
\vspace{-4mm}
1475 188 pbaillot
typing judgements of the form: $ {\blue \Gamma} ; {\red \Delta} \vdash t: A$,
1476 188 pbaillot
where
1477 188 pbaillot
1478 188 pbaillot
\begin{tabular}{l}
1479 188 pbaillot
$ {\blue \Gamma}$ contains duplicable variables,\\
1480 188 pbaillot
${\red \Delta}$ contains linear variables.
1481 188 pbaillot
\end{tabular}
1482 188 pbaillot
\end{frame}
1483 188 pbaillot
1484 188 pbaillot
%----------
1485 188 pbaillot
%
1486 188 pbaillot
%%\overlays{8}{
1487 188 pbaillot
%\begin{frame} \frametitle{DLAL typing rules}
1488 188 pbaillot
%%\DefaultTransition{Dissolve}
1489 188 pbaillot
%{\tiny
1490 188 pbaillot
%%\onlySlide*{1}{
1491 188 pbaillot
%% \begin{center}
1492 188 pbaillot
%%\hspace{-12mm}
1493 188 pbaillot
%%\fbox{
1494 188 pbaillot
%\begin{tabular}{l@{\hspace{-2mm}}l}
1495 188 pbaillot
%  {\infer[\mbox{(Id)}]{; x:A \vdash x:A}{}} & \\
1496 188 pbaillot
%% &\\
1497 188 pbaillot
%
1498 188 pbaillot
%\untilSlide*{2}{
1499 188 pbaillot
%{\infer[\mbox{($\fm$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fm B }
1500 188 pbaillot
% {\Gamma_1; \Delta_1, x:A \vdash t:B}}
1501 188 pbaillot
%}
1502 188 pbaillot
%\onlySlide*{3}{
1503 188 pbaillot
%{\red \infer[\mbox{($\fm$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fm B }
1504 188 pbaillot
% {\Gamma_1{\blue ;} \Delta_1, x:A \vdash t:B}}
1505 188 pbaillot
%}
1506 188 pbaillot
%\fromSlide*{4}{
1507 188 pbaillot
%{\infer[\mbox{($\fm$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fm B }
1508 188 pbaillot
% {\Gamma_1; \Delta_1, x:A \vdash t:B}}
1509 188 pbaillot
%}
1510 188 pbaillot
%  &
1511 188 pbaillot
% {\infer[\mbox{($\fm$ e)}]{\Gamma_1,\Gamma_2; \Delta_1, \Delta_2 \vdash (t\; u) :B }
1512 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash t:A \fm B & \Gamma_2; \Delta_2 \vdash u:A}}
1513 188 pbaillot
%\\[1ex]
1514 188 pbaillot
%
1515 188 pbaillot
%\untilSlide*{2}{
1516 188 pbaillot
%{\infer[\mbox{($\fli$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fli B }
1517 188 pbaillot
% {\Gamma_1, x:A ; \Delta_1\vdash t:B}}
1518 188 pbaillot
%}
1519 188 pbaillot
%\onlySlide*{3}{\red
1520 188 pbaillot
%{\infer[\mbox{($\fli$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fli B }
1521 188 pbaillot
% {\Gamma_1, x:A {\blue ;} \Delta_1\vdash t:B}}
1522 188 pbaillot
%}
1523 188 pbaillot
%\fromSlide*{4}{
1524 188 pbaillot
%{\infer[\mbox{($\fli$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fli B }
1525 188 pbaillot
% {\Gamma_1, x:A ; \Delta_1\vdash t:B}}
1526 188 pbaillot
%}
1527 188 pbaillot
%  &
1528 188 pbaillot
%\untilSlide*{3}{
1529 188 pbaillot
%{\infer[\mbox{($\fli$ e)}]{\Gamma_1, z:C ; \Delta_1 \vdash (t\; u) :B }
1530 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash t:A \fli B & ; z:C \vdash u:A}}
1531 188 pbaillot
%}
1532 188 pbaillot
%\onlySlide*{4}{\red
1533 188 pbaillot
%{\infer[\mbox{($\fli$ e)}]{\Gamma_1, z:C  ; \Delta_1 \vdash (t\; u) :B }
1534 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash t:A \fli B & {\blue ; z:C \vdash u:A }}}
1535 188 pbaillot
%}
1536 188 pbaillot
%\onlySlide*{5}{
1537 188 pbaillot
%{\infer[\mbox{($\fli$ e)}]{\Gamma_1, z:C ; \Delta_1 \vdash (t\; u) :B }
1538 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash t:A \fli B & ; z:C \vdash u:A}}
1539 188 pbaillot
%}
1540 188 pbaillot
%\onlySlide*{6}{
1541 188 pbaillot
%{\infer[\mbox{($\fli$ e)}]{\Gamma_1, z:C ; \Delta_1 \vdash (t\; u) :B }
1542 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash t:A \fli B & ; z:C \vdash u:A}}
1543 188 pbaillot
%}
1544 188 pbaillot
%\fromSlide*{7}{
1545 188 pbaillot
%{\infer[\mbox{($\fli$ e)}]{\Gamma_1, z:C ; \Delta_1 \vdash (t\; u) :B }
1546 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash t:A \fli B & {\blue ; z:C \vdash u:A}}}
1547 188 pbaillot
%}
1548 188 pbaillot
%
1549 188 pbaillot
%\\[1ex]
1550 188 pbaillot
%{\infer[\mbox{(Weak)}]{\Gamma_1, \Gamma_2; \Delta_1, \Delta_2 \vdash t: A }
1551 188 pbaillot
% {\Gamma_1; \Delta_1 \vdash t:A}}
1552 188 pbaillot
%  &
1553 188 pbaillot
%\onlySlide*{1}{
1554 188 pbaillot
%{\infer[\mbox{(Cntr)}]{x:A, \Gamma_1; \Delta_1 \vdash t[x \slash x_1, x \slash x_2] :B }{x_1:A,x_2:A, \Gamma_1; \Delta_1 \vdash t:B }}
1555 188 pbaillot
%}
1556 188 pbaillot
%\onlySlide*{2}{\red
1557 188 pbaillot
%{\infer[\mbox{(Cntr)}]{x:A, \Gamma_1{\blue ;} \Delta_1 \vdash t[x \slash x_1, x \slash x_2] :B }{x_1:A,x_2:A, \Gamma_1{\blue ;} \Delta_1 \vdash t:B }}
1558 188 pbaillot
%}
1559 188 pbaillot
%\fromSlide*{3}{
1560 188 pbaillot
%{\infer[\mbox{(Cntr)}]{x:A, \Gamma_1; \Delta_1 \vdash t[x \slash x_1, x \slash x_2] :B }{x_1:A,x_2:A, \Gamma_1; \Delta_1 \vdash t:B }}
1561 188 pbaillot
%}
1562 188 pbaillot
%\\[1ex]
1563 188 pbaillot
%
1564 188 pbaillot
%\untilSlide*{4}{
1565 188 pbaillot
%{\infer[\mbox{($\pa$ i)}]{\Gamma ; x_1:\pa B_1, \dots, x_n:\pa B_n  \vdash t: \pa A }
1566 188 pbaillot
% {  ; \Gamma, x_1:B_1, \dots, x_n:B_n \vdash t:A}}
1567 188 pbaillot
%}
1568 188 pbaillot
%\onlySlide*{5}{\red
1569 188 pbaillot
%{\infer[\mbox{($\pa$ i)}]{\Gamma {\blue ;} x_1:\pa B_1, \dots, x_n:\pa B_n  \vdash t: \pa A }
1570 188 pbaillot
% { {\blue ;} \Gamma, x_1:B_1, \dots, x_n:B_n \vdash t:A}}
1571 188 pbaillot
%}
1572 188 pbaillot
%\onlySlide*{6}{
1573 188 pbaillot
%{\infer[\mbox{($\pa$ i)}]{\Gamma  ; x_1:\pa B_1, \dots, x_n:\pa B_n  \vdash t: \pa A }
1574 188 pbaillot
% {  ; \Gamma, x_1:B_1, \dots, x_n:B_n \vdash t:A}}
1575 188 pbaillot
%}
1576 188 pbaillot
%\fromSlide*{7}{
1577 188 pbaillot
%{\infer[\mbox{($\pa$ i)}]{ \Gamma  ; x_1:\pa B_1, \dots, x_n:\pa B_n  \vdash t: \pa A }
1578 188 pbaillot
% {  {\blue ; \Gamma, x_1:B_1, \dots, x_n:B_n \vdash t:A}}}
1579 188 pbaillot
%}
1580 188 pbaillot
%
1581 188 pbaillot
%  &
1582 188 pbaillot
%%\hspace{-10mm}
1583 188 pbaillot
%
1584 188 pbaillot
% \untilSlide*{5}{
1585 188 pbaillot
% {\infer[\mbox{\hspace{-1mm}($\pa$ e)}]{\Gamma_1,\Gamma_2; \Delta_1, \Delta_2 \vdash t[u \slash x] :B }
1586 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash u: \pa A  & \Gamma_2; x:\pa A, \Delta_2 \vdash t:B}}
1587 188 pbaillot
%}
1588 188 pbaillot
%\onlySlide*{6}{\red
1589 188 pbaillot
% {\infer[\mbox{\hspace{-1mm}($\pa$ e)}]{\Gamma_1,\Gamma_2; \Delta_1, \Delta_2 \vdash t[u \slash x] :B }
1590 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash u: \pa A  & \Gamma_2; x:\pa A, \Delta_2 \vdash t:B}}
1591 188 pbaillot
%}
1592 188 pbaillot
%\fromSlide*{7}{
1593 188 pbaillot
% {\infer[\mbox{\hspace{-1mm}($\pa$ e)}]{\Gamma_1,\Gamma_2; \Delta_1, \Delta_2 \vdash t[u \slash x] :B }
1594 188 pbaillot
%  {\Gamma_1; \Delta_1 \vdash u: \pa A  & \Gamma_2; x:\pa A, \Delta_2 \vdash t:B}}
1595 188 pbaillot
%}
1596 188 pbaillot
%
1597 188 pbaillot
%\\[1ex]
1598 188 pbaillot
%\fromSlide*{8}{      %% ajout? 26/6
1599 188 pbaillot
%{\infer[\mbox{($\forall$ i) (*)}]{{ \Gamma_1; \Delta_1 \vdash  t:\forall \alpha. A}}{{ \Gamma_1; \Delta_1 \vdash t:A}}}}
1600 188 pbaillot
% &
1601 188 pbaillot
%\fromSlide*{8}{
1602 188 pbaillot
% {\infer[\mbox{($\forall$ e)}]{\Gamma_1; \Delta_1 \vdash t:A[B \slash \al] }
1603 188 pbaillot
%{\Gamma_1; \Delta_1 \vdash t:\forall \al. A}}
1604 188 pbaillot
%}
1605 188 pbaillot
%
1606 188 pbaillot
% \end{tabular}
1607 188 pbaillot
%
1608 188 pbaillot
%%}
1609 188 pbaillot
%%\end{center}
1610 188 pbaillot
%%}
1611 188 pbaillot
%}
1612 188 pbaillot
%
1613 188 pbaillot
%
1614 188 pbaillot
%\medskip
1615 188 pbaillot
%
1616 188 pbaillot
%\onlySlide*{2}
1617 188 pbaillot
%{
1618 188 pbaillot
%\begin{lem}\label{linearitylemma}
1619 188 pbaillot
%  If $\Gamma ; \Delta \vdash_{DLAL} t:A$ and  $x \in
1620 188 pbaillot
%  \Delta$ then $x$ has at most one occurrence in $t$.
1621 188 pbaillot
%\end{lem}
1622 188 pbaillot
%}
1623 188 pbaillot
%
1624 188 pbaillot
%
1625 188 pbaillot
%\onlySlide*{3}
1626 188 pbaillot
%{
1627 188 pbaillot
% $(\fm i)$ (resp. $(\fli i)$) corresponds to abstraction on a linear (resp. non-linear) variable,
1628 188 pbaillot
%}
1629 188 pbaillot
%
1630 188 pbaillot
%\onlySlide*{4}
1631 188 pbaillot
%{
1632 188 pbaillot
%an  argument {\blue $u$} of a term {\red $t$} of type {\red $A\fli B$} must have at most one
1633 188 pbaillot
%free variable {\blue $z$}, which is moreover linear.
1634 188 pbaillot
%
1635 188 pbaillot
%{\red $\rightarrow$ prevents 2nd exponentiation scheme (contraction-iteration)}.
1636 188 pbaillot
%}
1637 188 pbaillot
%
1638 188 pbaillot
%\onlySlide*{5}
1639 188 pbaillot
%{
1640 188 pbaillot
%  the rule ($\pa$ i) allows to turn linear variables (in $\Gamma$) into non-linear ones.
1641 188 pbaillot
%
1642 188 pbaillot
%\medskip
1643 188 pbaillot
%
1644 188 pbaillot
%{\red $\rightarrow$ prevents 1st exponentiation scheme (iteration-iteration)}.
1645 188 pbaillot
%}
1646 188 pbaillot
%
1647 188 pbaillot
%%\fromSlide*{6}
1648 188 pbaillot
%%{
1649 188 pbaillot
%% \begin{prop}
1650 188 pbaillot
%%If $\cal D$ has conclusion $\Gamma;\Delta \vdash_{DLAL} t: A$
1651 188 pbaillot
%%then  $|t| \leq |{\cal D}|$.
1652 188 pbaillot
%%\end{prop}
1653 188 pbaillot
%%}
1654 188 pbaillot
%
1655 188 pbaillot
%\onlySlide*{7}
1656 188 pbaillot
%{
1657 188 pbaillot
% \textit{Depth} $d$ of a derivation $\cal D$: maximal number of ($\pa$ i) and r.h.s.
1658 188 pbaillot
% premises of ($\fli$ e) in
1659 188 pbaillot
%a branch of $\cal D$.
1660 188 pbaillot
%}
1661 188 pbaillot
%
1662 188 pbaillot
%\fromSlide*{8}
1663 188 pbaillot
%{
1664 188 pbaillot
% (*) $\alpha \notin \Gamma_1, \Delta_1$.
1665 188 pbaillot
%}
1666 188 pbaillot
%
1667 188 pbaillot
%\end{frame}
1668 188 pbaillot
%%}
1669 188 pbaillot
1670 188 pbaillot
%----------
1671 188 pbaillot
\begin{frame} \frametitle{DLAL and system F}
1672 188 pbaillot
1673 188 pbaillot
\begin{itemize}
1674 188 pbaillot
\item Forgetful map $(.)^-$ from DLAL to F:
1675 188 pbaillot
\begin{itemize}
1676 188 pbaillot
 \item remove occurrences of $\S$,
1677 188 pbaillot
 \item replace $\fm$ and $\fli$ with $\rightarrow$.
1678 188 pbaillot
\end{itemize}
1679 188 pbaillot
1680 188 pbaillot
 $(.)^-$ gives a map from DLAL derivations to system F derivations.
1681 188 pbaillot
1682 188 pbaillot
\item Data types in DLAL:
1683 188 pbaillot
1684 188 pbaillot
\medskip
1685 188 pbaillot
1686 188 pbaillot
1687 188 pbaillot
%\begin{center}
1688 188 pbaillot
{\tiny
1689 188 pbaillot
\begin{tabular}{l@{\hspace{0mm}}ll}
1690 188 pbaillot
& \quad F & \quad DLAL \\
1691 188 pbaillot
%$N^{EAL}$ & $N^{LAL}$ \\
1692 188 pbaillot
\hspace{-1.2cm}
1693 188 pbaillot
 Church integers& $\forall \al.   (\al \rightarrow \al) \rightarrow  (\al \rightarrow \al)$ &
1694 188 pbaillot
 $\forall \al.  (\al \fm \al) \fli \S (\al \fm \al)$\\
1695 188 pbaillot
\hspace{-1.2cm}
1696 188 pbaillot
  binary lists
1697 188 pbaillot
&$\forall \al.   (\al \rightarrow \al) \rightarrow  (\al \rightarrow \al)
1698 188 pbaillot
 \rightarrow (\al \rightarrow \al)$
1699 188 pbaillot
&
1700 188 pbaillot
$\forall \al. (\al \fm \al) {\red \fli} (\al \fm \al) {\red \fli} \S (\al {\blue \fm} \al)$
1701 188 pbaillot
\end{tabular}
1702 188 pbaillot
}
1703 188 pbaillot
1704 188 pbaillot
\medskip
1705 188 pbaillot
1706 188 pbaillot
{\tiny
1707 188 pbaillot
Example for binary lists: $w=\langle 1, 0, 0 \rangle$:
1708 188 pbaillot
1709 188 pbaillot
$$ \un{w}={\red \lambda s_0}^{\black (\al \rightarrow \al)}. {\red \lambda s_1}^{\black (\al \rightarrow \al)}.
1710 188 pbaillot
{\blue \lambda x}^{\black \al}. (s_1\;(s_0\; (s_0\; x)))~.$$
1711 188 pbaillot
}
1712 188 pbaillot
\end{itemize}
1713 188 pbaillot
1714 188 pbaillot
\end{frame}
1715 188 pbaillot
1716 188 pbaillot
%----------
1717 188 pbaillot
\begin{frame} \frametitle{Intuitionistic Proof-Nets for DLAL terms}
1718 188 pbaillot
1719 188 pbaillot
\vspace{-5mm}
1720 188 pbaillot
$(A \fli B)^{\star}=\bs A^{\star} \fm B^{\star}$
1721 188 pbaillot
1722 188 pbaillot
%\smallskip
1723 188 pbaillot
%$\moda_i= \bs \mbox{ or } \pa$
1724 188 pbaillot
1725 188 pbaillot
\vspace{-7mm}
1726 188 pbaillot
1727 188 pbaillot
\begin{figure} %[ht]
1728 188 pbaillot
\begin{center}
1729 188 pbaillot
\input PN_35.pstex_t
1730 188 pbaillot
\end{center}
1731 188 pbaillot
%\caption{Lambda terms and Light proof-nets.}\label{schema1}
1732 188 pbaillot
1733 188 pbaillot
\end{figure}
1734 188 pbaillot
1735 188 pbaillot
\vspace{-4mm}
1736 188 pbaillot
1737 188 pbaillot
\textit{depth} of an edge: number of boxes it is contained in.
1738 188 pbaillot
1739 188 pbaillot
\vspace{-1mm}
1740 188 pbaillot
1741 188 pbaillot
\textit{depth} of proof-net: maximal depth of its edges.
1742 188 pbaillot
\end{frame}
1743 188 pbaillot
1744 188 pbaillot
%----------
1745 188 pbaillot
\begin{frame} \frametitle{Proof-net reduction}
1746 188 pbaillot
1747 188 pbaillot
\vspace{-5mm}
1748 188 pbaillot
\begin{figure} %[ht]
1749 188 pbaillot
\begin{center}
1750 188 pbaillot
\input redPN_mult25.pstex_t \hspace{12mm} \input redPN_cont25.pstex_t
1751 188 pbaillot
1752 188 pbaillot
\input redPN_!!25.pstex_t
1753 188 pbaillot
\hspace{12mm}\input redPN_pp25.pstex_t
1754 188 pbaillot
\end{center}
1755 188 pbaillot
%\caption{Lambda terms and Light proof-nets.}\label{schema1}
1756 188 pbaillot
\end{figure}
1757 188 pbaillot
%\vspace{-5mm}
1758 188 pbaillot
During normalization: the depth of an edge is unchanged.
1759 188 pbaillot
\end{frame}
1760 188 pbaillot
1761 188 pbaillot
%----------
1762 188 pbaillot
\begin{frame} \frametitle{Example}
1763 188 pbaillot
1764 188 pbaillot
$$M= (\la f. (f \;(f \; x)))((\la h. h) \; g) $$
1765 188 pbaillot
 It can be given the following simple type:
1766 188 pbaillot
1767 188 pbaillot
$$M= (\la f^{\blue \al \rightarrow \al}. (f \;(f \; x^{\blue \al}))((\la h^{\blue \al \rightarrow \al}. h) \; g^{\blue \al \rightarrow \al}) : {\blue \al} $$
1768 188 pbaillot
1769 188 pbaillot
\end{frame}
1770 188 pbaillot
1771 188 pbaillot
1772 188 pbaillot
%----------
1773 188 pbaillot
\begin{frame} \frametitle{Example}
1774 188 pbaillot
1775 188 pbaillot
$$M= (\la f. (f \;(f \; x)))((\la h. h) \; g) $$
1776 188 pbaillot
1777 188 pbaillot
\begin{figure}[ht]
1778 188 pbaillot
\begin{center}
1779 188 pbaillot
\input exemplesquelette40.pstex_t   %% r?duire ? ?chelle 40 ?
1780 188 pbaillot
%\input exemplesquelette60.pstex_t
1781 188 pbaillot
\end{center}
1782 188 pbaillot
%\caption{Example of Classical Proof-Net.}\label{exampleCPN}
1783 188 pbaillot
\end{figure}
1784 188 pbaillot
1785 188 pbaillot
\end{frame}
1786 188 pbaillot
1787 188 pbaillot
%------------------
1788 188 pbaillot
\begin{frame} \frametitle{Example of type derivation}
1789 188 pbaillot
1790 188 pbaillot
$$M= (\la f. (f \;(f \; x)))((\la h. h) \; g) $$
1791 188 pbaillot
1792 188 pbaillot
%\hspace{-5mm}
1793 188 pbaillot
\begin{center}
1794 188 pbaillot
\begin{figure}[ht]
1795 188 pbaillot
{\tiny
1796 188 pbaillot
\begin{prooftree}
1797 188 pbaillot
%\AxiomC{$;f_1: \al \fm \al \vdash f_1: \al \fm \al$ }
1798 188 pbaillot
%\AxiomC{$;f_2: \al \fm \al \vdash f_2: \al \fm \al$ }
1799 188 pbaillot
%\AxiomC{$;x: \al \vdash x: \al$ }
1800 188 pbaillot
%\BinaryInfC{$; f_2: \al \fm \al , x: \al   \vdash (f_2) \; x: \al  $}
1801 188 pbaillot
\AxiomC{\dots}
1802 188 pbaillot
\UnaryInfC{$; f_2: \al \fm \al , x: \al   \vdash (f_2) \; x: \al  $}
1803 188 pbaillot
\AxiomC{$;f_1: \al \fm \al \vdash f_1: \al \fm \al$ }
1804 188 pbaillot
   \kernHyps{10mm}
1805 188 pbaillot
\BinaryInfC{$; f_1: \beta, f_2: \beta, x: \al \vdash (f_1) \; ((f_2) \; x ): \al$}
1806 188 pbaillot
 \LeftLabel{($\pa$ i)}\UnaryInfC{{\blue $ f_1: \beta, f_2: \beta; x: \pa \al \vdash (f_1) \; ((f_2) \; x ): \pa \al$}}
1807 188 pbaillot
\UnaryInfC{$ f: \beta; x: \pa \al \vdash (f) \; ((f) \; x ): \pa \al$}
1808 188 pbaillot
\UnaryInfC{$ ; x:\pa \al  \vdash\la f.  (f) \; ((f) \; x ):  \beta \fli \pa \al $}
1809 188 pbaillot
1810 188 pbaillot
%\AxiomC{$;g: \al \fm \al\vdash g: \al \fm \al$ }
1811 188 pbaillot
\AxiomC{$;h: \beta\vdash h: \beta$ }
1812 188 pbaillot
\UnaryInfC{$; \vdash \la h . h:  \beta \fm  \beta $}
1813 188 pbaillot
\AxiomC{$;g: \beta\vdash g: \beta$ }
1814 188 pbaillot
%{\red
1815 188 pbaillot
 \BinaryInfC{{\red $; g: \beta \vdash (\la h . h)\; g: \beta $}}
1816 188 pbaillot
%}
1817 188 pbaillot
\insertBetweenHyps{\hspace{-1.9cm}}
1818 188 pbaillot
\LeftLabel{($\fli$ e)}\BinaryInfC{$g: \beta; x: \pa \al \vdash (\la f.  (f) \; ((f) \; x ))  ((\la h . h)\; g): \pa \al $}
1819 188 pbaillot
\end{prooftree}
1820 188 pbaillot
}
1821 188 pbaillot
where $\beta=\al \fm \al .$
1822 188 pbaillot
\end{figure}
1823 188 pbaillot
\end{center}
1824 188 pbaillot
\end{frame}
1825 188 pbaillot
1826 188 pbaillot
%---------------
1827 188 pbaillot
\begin{frame} \frametitle{Example}
1828 188 pbaillot
1829 188 pbaillot
$$M= (\la f. {\blue (f \;(f \; x))}){\red ((\la h. h) \; g)} $$
1830 188 pbaillot
1831 188 pbaillot
%\vspace{-4mm}
1832 188 pbaillot
%we want to turn it into an (intuitionistic) proof-net like: %PN like:
1833 188 pbaillot
1834 188 pbaillot
%{\tiny
1835 188 pbaillot
%$
1836 188 pbaillot
%\begin{array}{ccc}
1837 188 pbaillot
%@ &  = & (\fm L) \\
1838 188 pbaillot
%\la & = & (\fm R)
1839 188 pbaillot
%\end{array}
1840 188 pbaillot
%$
1841 188 pbaillot
%}
1842 188 pbaillot
\begin{figure}[ht]
1843 188 pbaillot
\begin{center}
1844 188 pbaillot
\input examplePNcolors40.pstex_t
1845 188 pbaillot
%\input examplePN40.pstex_t
1846 188 pbaillot
\end{center}
1847 188 pbaillot
%\caption{Example of Classical Proof-Net.}\label{exampleCPN}
1848 188 pbaillot
\end{figure}
1849 188 pbaillot
1850 188 pbaillot
\end{frame}
1851 188 pbaillot
1852 188 pbaillot
1853 188 pbaillot
1854 188 pbaillot
%-----------
1855 188 pbaillot
\begin{frame} \frametitle{Boxes}
1856 188 pbaillot
\vspace{-3mm}
1857 188 pbaillot
Boxes in linear logic proof-nets have 2 characteristics:
1858 188 pbaillot
\begin{enumerate}
1859 188 pbaillot
\item \textit{logically:}
1860 188 pbaillot
1861 188 pbaillot
 they correspond to a sequentiality information on the graph.
1862 188 pbaillot
\item \textit{dynamically:}
1863 188 pbaillot
1864 188 pbaillot
 they delimitate portions of the graph that can be duplicated.
1865 188 pbaillot
\end{enumerate}
1866 188 pbaillot
 Note that in LAL, (2) is not relevant for $\pa$ boxes, since they
1867 188 pbaillot
cannot be duplicated.
1868 188 pbaillot
1869 188 pbaillot
 In Light logics, the crucial point of boxes is that they allow to define
1870 188 pbaillot
some \textit{invariants} of the dynamics of the graphs:
1871 188 pbaillot
\begin{itemize}
1872 188 pbaillot
\item depth of edges,
1873 188 pbaillot
\item quantitative invariant: the number of inputs of
1874 188 pbaillot
duplicable boxes ($\bs$ boxes) is at most one.
1875 188 pbaillot
\end{itemize}
1876 188 pbaillot
%In fact, the $\pa$ boxes can be dropped if we manage to maintain
1877 188 pbaillot
% in another way the invariant of depth.
1878 188 pbaillot
\end{frame}
1879 188 pbaillot
1880 188 pbaillot
%----------
1881 188 pbaillot
\begin{frame} \frametitle{DLAL: complexity bounds}
1882 188 pbaillot
1883 188 pbaillot
 DLAL satisfies the subject-reduction property.
1884 188 pbaillot
1885 188 pbaillot
\medskip
1886 188 pbaillot
1887 188 pbaillot
\begin{theo}[Strong Ptime bound]
1888 188 pbaillot
If $t$ is typable in DLAL with a derivation of depth
1889 188 pbaillot
 $d$, then
1890 188 pbaillot
any $\beta$ reduction of $t$ can be performed in
1891 188 pbaillot
time $O((d+1)\cdot|t|^{2^{d+1}})$.
1892 188 pbaillot
%sequence of $\beta$-reducts of $t$
1893 188 pbaillot
%has length bounded by  $O((d+1)\cdot|t|^{2^{d+1}})$.
1894 188 pbaillot
\end{theo}
1895 188 pbaillot
1896 188 pbaillot
Remarks:
1897 188 pbaillot
\begin{itemize}
1898 188 pbaillot
%\item we are dealing here with $\beta$-r?duction,
1899 188 pbaillot
%and not anymore with proof-net reduction;
1900 188 pbaillot
\item one in fact shows a bound $O((d+1)\cdot|t|^{2^{d}})$ on the \textit{number}
1901 188 pbaillot
of $\beta$-steps and then uses the fact that the cost of each step is here bounded;
1902 188 pbaillot
\item this bound holds for any reduction strategy;
1903 188 pbaillot
\item in particular, if $\vdash t: W \fm \S^k W$ then $t$ is Ptime.
1904 188 pbaillot
\end{itemize}
1905 188 pbaillot
1906 188 pbaillot
%\medskip
1907 188 pbaillot
%Note that here the bound is with respect to $\beta$ reduction: the boxing structure
1908 188 pbaillot
%is not needed for polynomial time evaluation.
1909 188 pbaillot
%\medskip
1910 188 pbaillot
 %
1911 188 pbaillot
%\begin{theo}[Completeness]
1912 188 pbaillot
% For any polynomial time function $f:\{0,1\}^{\ast} \rightarrow \{0,1\}^{\ast}$,
1913 188 pbaillot
%there exists a term $t$ representing it and typable
1914 188 pbaillot
%in DLAL with a type $W \fm \pa^k W$, for a certain integer $k\in \NN$.
1915 188 pbaillot
%\end{theo}
1916 188 pbaillot
% However  DLAL is not very expressive from an intensional point of view:
1917 188 pbaillot
%some simple Ptime lambda terms might not be typable.
1918 188 pbaillot
\end{frame}
1919 188 pbaillot
1920 188 pbaillot
%----------
1921 188 pbaillot
1922 188 pbaillot
%\overlays{1}{
1923 188 pbaillot
\begin{frame} \frametitle{Coercions in DLAL}
1924 188 pbaillot
\vspace{-4mm}
1925 188 pbaillot
 In practice we often need to change the type of arguments,
1926 188 pbaillot
for instance from $\pa N$ to $N$, or from non-linear to linear position.
1927 188 pbaillot
1928 188 pbaillot
This is possible for \textit{data} arguments (\textit{e.g.} $N$ or
1929 188 pbaillot
$W$), thanks to \textit{coercions}.
1930 188 pbaillot
1931 188 pbaillot
\smallskip
1932 188 pbaillot
1933 188 pbaillot
%dans  ILAL on avait: $coerc^{p,q}: N \fm \pa^{p+1} \bs ^q N$
1934 188 pbaillot
1935 188 pbaillot
In DLAL one can define terms with the following types:
1936 188 pbaillot
1937 188 pbaillot
1938 188 pbaillot
$\begin{array}{cccc}
1939 188 pbaillot
 \mbox{coer}_1 &:& N \fm \pa N & \\
1940 188 pbaillot
\mbox{coer}_2  &:& \pa (N \fli A) \fm (N \fm \pa A)
1941 188 pbaillot
\end{array}
1942 188 pbaillot
$
1943 188 pbaillot
1944 188 pbaillot
such that:
1945 188 pbaillot
1946 188 pbaillot
 $\begin{array}{cccc}
1947 188 pbaillot
 (\mbox{coer}_1 \; \un{n})&\rightarrow &\un{n}\\
1948 188 pbaillot
(\mbox{coer}_2 \; t \; \un{n})  &\rightarrow & (t \; \un{n})
1949 188 pbaillot
\end{array}
1950 188 pbaillot
$
1951 188 pbaillot
1952 188 pbaillot
 Similarly, there exists a term contracting arguments by:
1953 188 pbaillot
1954 188 pbaillot
1955 188 pbaillot
$\begin{array}{cccc}
1956 188 pbaillot
 \mbox{cont} &:& \pa (N \fli N \fm A) \fm (N \fm \pa A)
1957 188 pbaillot
\end{array}
1958 188 pbaillot
$
1959 188 pbaillot
 with:
1960 188 pbaillot
1961 188 pbaillot
 $\begin{array}{cccc}
1962 188 pbaillot
 (\mbox{cont} \;t\;  \un{n})&\rightarrow & (t \; \un{n} \; \un{n} )\\
1963 188 pbaillot
\end{array}
1964 188 pbaillot
$
1965 188 pbaillot
1966 188 pbaillot
%
1967 188 pbaillot
%exemple:
1968 188 pbaillot
%
1969 188 pbaillot
%$\begin{array}{cccc}
1970 188 pbaillot
% mult &:& N \fli (N \fm \pa N) & \\
1971 188 pbaillot
%mult' &:& N \fm \pa (N \fm \pa N) & \mbox{ par  (coerc1)}\\
1972 188 pbaillot
%mult'' &:& N \fm N \fm \pa \pa N & \mbox{ par (coerc2)}
1973 188 pbaillot
%\end{array}
1974 188 pbaillot
%$
1975 188 pbaillot
1976 188 pbaillot
1977 188 pbaillot
\begin{prop}
1978 188 pbaillot
 If $P \in \mathbb{N}[X]$, then there exists a term $t_P$ representing
1979 188 pbaillot
$P$ and an integer $k$ such that: $\vdash_{DLAL} t_P: N \fm \pa^k N$.
1980 188 pbaillot
\end{prop}
1981 188 pbaillot
\end{frame}
1982 188 pbaillot
1983 188 pbaillot
1984 188 pbaillot
%----------
1985 188 pbaillot
\begin{frame} \frametitle{DLAL: PTIME extensional completeness}
1986 188 pbaillot
1987 188 pbaillot
\bigskip
1988 188 pbaillot
1989 188 pbaillot
\begin{theo}[Completeness]
1990 188 pbaillot
 For any polynomial time function $f:\{0,1\}^{\ast} \rightarrow \{0,1\}^{\ast}$,
1991 188 pbaillot
there exists a term $t$ representing it and typable
1992 188 pbaillot
in DLAL with a type $W \fm \pa^k W$, for a certain integer $k\in \NN$.
1993 188 pbaillot
%The functions representable by terms typeable in DLAL
1994 188 pbaillot
%are exactly the functions of FP.
1995 188 pbaillot
\end{theo}
1996 188 pbaillot
\medskip
1997 188 pbaillot
1998 188 pbaillot
 However  DLAL (or LAL) is not very expressive from an intensional point of view:
1999 188 pbaillot
some simple Ptime lambda terms might not be typable.
2000 188 pbaillot
\end{frame}
2001 188 pbaillot
2002 188 pbaillot
%%-----------
2003 188 pbaillot
%\begin{frame} \frametitle{Relating the Bellantoni-Cook algebra and Linear logic}
2004 188 pbaillot
%
2005 188 pbaillot
% We show how to embed a variant of BC into DLAL, following Murawski/Ong [MO04]
2006 188 pbaillot
%(see also Tranquilli's Master thesis, 2005)
2007 188 pbaillot
%
2008 188 pbaillot
%\medskip
2009 188 pbaillot
%
2010 188 pbaillot
%\begin{tabular}{c}
2011 188 pbaillot
% $f(\vec{x}; \vec{y})$ will be represented by\\
2012 188 pbaillot
% $; \vec{x}: W, \vec{y}:\pa^k W \vdash_{DLAL} t: \pa^k W$, for some $k$
2013 188 pbaillot
%\end{tabular}
2014 188 pbaillot
%
2015 188 pbaillot
%\medskip
2016 188 pbaillot
%
2017 188 pbaillot
%Note that:
2018 188 pbaillot
%\begin{itemize}
2019 188 pbaillot
%\item in $f(\vec{x}; \vec{y})$,  $\vec{x}$ stands
2020 188 pbaillot
%for $x_1, \dots, x_n$,
2021 188 pbaillot
%\item in the DLAL judgement,  $; \vec{x}: W$ stands for
2022 188 pbaillot
% $x_1:W, \dots, x_n:W$.
2023 188 pbaillot
%
2024 188 pbaillot
%\end{itemize}
2025 188 pbaillot
%\end{frame}
2026 188 pbaillot
%
2027 188 pbaillot
%
2028 188 pbaillot
%
2029 188 pbaillot
%%------------
2030 188 pbaillot
%\begin{frame} \frametitle{The algebra $\mbox{BC}^-$}
2031 188 pbaillot
%
2032 188 pbaillot
% In the DLAL judgements given, observe that normal variables (of type $W$) can be contracted,
2033 188 pbaillot
%but that safe ones (of type $\pa^k W$) cannot.
2034 188 pbaillot
%
2035 188 pbaillot
%Fragment of BC with non-contractible safe variables:  $\mbox{BC}^-$.
2036 188 pbaillot
%
2037 188 pbaillot
%\medskip
2038 188 pbaillot
%$\mbox{BC}^-$ is defined by:
2039 188 pbaillot
%
2040 188 pbaillot
%\begin{tabular}{cc}
2041 188 pbaillot
%recursion: & $f(\epsilon, \vec{x}; \vec{y})=h(\vec{x};\vec{y})$\\
2042 188 pbaillot
%           & $f(a.z, \vec{x}; \vec{y})=g(a,z,\vec{x};f(z, \vec{x}; \vec{y}))$\\
2043 188 pbaillot
%composition: &
2044 188 pbaillot
%\end{tabular}
2045 188 pbaillot
% $f(\vec{x}; \vec{y})= g(h_1(\vec{x};), \dots, h_m(\vec{x};);h_{m+1} (\vec{x};\vec{y_1}), \dots,
2046 188 pbaillot
% h_{k} (\vec{x};\vec{y_i}))$
2047 188 pbaillot
%
2048 188 pbaillot
%where $\vec{y_1},\dots, \vec{y_i}$ is a partition of $\vec{y}$.
2049 188 pbaillot
%
2050 188 pbaillot
%basic functions: as in BC.
2051 188 pbaillot
%\end{frame}
2052 188 pbaillot
%
2053 188 pbaillot
%
2054 188 pbaillot
%%------------
2055 188 pbaillot
%\begin{frame} \frametitle{$\mbox{BC}^-$ inside DLAL}
2056 188 pbaillot
%
2057 188 pbaillot
%%\bigskip
2058 188 pbaillot
%
2059 188 pbaillot
%\begin{prop}{[MO04]}
2060 188 pbaillot
% The algebra  $\mbox{BC}^-$ can be embedded in DLAL.
2061 188 pbaillot
%\end{prop}
2062 188 pbaillot
%
2063 188 pbaillot
%
2064 188 pbaillot
% However $\mbox{BC}^-$ is (presumably) not complete for PTIME.
2065 188 pbaillot
%\medskip
2066 188 pbaillot
%
2067 188 pbaillot
%But  one can consider extra constructs to enrich the algebra:
2068 188 pbaillot
%
2069 188 pbaillot
%\begin{itemize}
2070 188 pbaillot
%\item a form of \textit{definition by cases}
2071 188 pbaillot
% $$ \mbox{case}_K(;u)[p_1:f_1|\dots |p_m:f_m|\mbox{else}:f_{m+1}]$$
2072 188 pbaillot
%\item a restricted \textit{recursion on safe arguments}: $\sigma\mbox{rec}$
2073 188 pbaillot
%
2074 188 pbaillot
%$\begin{array}{ccc}
2075 188 pbaillot
% f(\vec{x}; \epsilon, \vec{y})&=& h(\vec{x}; \vec{y})\\
2076 188 pbaillot
% f(\vec{x}; a.z, \vec{y})&=& \mbox{step}_i(; f(\vec{x};z,\vec{y}))
2077 188 pbaillot
%\end{array}
2078 188 pbaillot
%$
2079 188 pbaillot
%
2080 188 pbaillot
%with $\mbox{step}_i$ of a specific form (permutation)
2081 188 pbaillot
%\end{itemize}
2082 188 pbaillot
% See [MO04] for complete definitions.
2083 188 pbaillot
%\end{frame}
2084 188 pbaillot
%
2085 188 pbaillot
%
2086 188 pbaillot
%%------------
2087 188 pbaillot
%\begin{frame} \frametitle{Extension of $\mbox{BC}^-$}
2088 188 pbaillot
%
2089 188 pbaillot
%Let $\mbox{BC}^{\pm}$ be the algebra defined as $\mbox{BC}^-$ but with these 2 new constructs.
2090 188 pbaillot
%
2091 188 pbaillot
%\begin{theo}{[MO04]}
2092 188 pbaillot
%\begin{enumerate}
2093 188 pbaillot
%\item $\mbox{BC}^{\pm}$ is sound and extensionally complete for PTIME,
2094 188 pbaillot
%\item $\mbox{BC}^{\pm}$ can be embedded in DLAL.
2095 188 pbaillot
%\end{enumerate}
2096 188 pbaillot
%\end{theo}
2097 188 pbaillot
%The second point comes from the fact that the new constructs can be represented
2098 188 pbaillot
%in DLAL.
2099 188 pbaillot
%\end{frame}
2100 188 pbaillot
2101 188 pbaillot
%------------
2102 188 pbaillot
\begin{frame} \frametitle{Conclusion}
2103 188 pbaillot
2104 188 pbaillot
\begin{itemize}
2105 188 pbaillot
\item Other type systems derived from LL characterize different complexity classes:
2106 188 pbaillot
Logspace [Sch?pp07], Pspace [GMR08]
2107 188 pbaillot
\item the relations between different the light logics and possible ways
2108 188 pbaillot
to unfiy them are still to explore
2109 188 pbaillot
\item type inference can be performed by constraints solving (e.g. for DLAL)
2110 188 pbaillot
\item this approach has a modest intensional expressivity
2111 188 pbaillot
2112 188 pbaillot
 could it be combined to other ICC systems for more flexibility~?
2113 188 pbaillot
\end{itemize}
2114 188 pbaillot
\end{frame}
2115 188 pbaillot
%%------------
2116 188 pbaillot
%\begin{frame} \frametitle{Some other directions in ICC}
2117 188 pbaillot
%
2118 188 pbaillot
%\begin{itemize}
2119 188 pbaillot
%\item higher-order type systems for safe recursion
2120 188 pbaillot
%(Hofmann 00, Bellantoni-Niggl-Schwichtenberg 00)
2121 188 pbaillot
%\item non-size-increasing computation: linear
2122 188 pbaillot
%type system with a basic type $\diamond$ (Hofmann 03)
2123 188 pbaillot
%\item functional languages with restricted operations
2124 188 pbaillot
%(no $\mathtt{cons}$): characterizations of Ptime,
2125 188 pbaillot
%Logspace (Jones 99)
2126 188 pbaillot
%\end{itemize}
2127 188 pbaillot
%
2128 188 pbaillot
%\end{frame}
2129 188 pbaillot
%%------------
2130 188 pbaillot
%\begin{frame} \frametitle{Conclusion on ICC}
2131 188 pbaillot
%ICC has provided:
2132 188 pbaillot
%\begin{enumerate}
2133 188 pbaillot
% \item some machine-independent characterizations of complexity classes of functions,
2134 188 pbaillot
%\item some criteria for verifying statically that a program,
2135 188 pbaillot
%admits a certain complexity bound.
2136 188 pbaillot
%\end{enumerate}
2137 188 pbaillot
% For (1) it would be useful to relate together the various approaches.
2138 188 pbaillot
%
2139 188 pbaillot
%\smallskip
2140 188 pbaillot
%
2141 188 pbaillot
% For (2): some recent works  try to take advantage of techniques coming
2142 188 pbaillot
%from termination analysis (e.g. size-change-principle) and possibly
2143 188 pbaillot
%from abstraction techniques.
2144 188 pbaillot
%
2145 188 pbaillot
%\end{frame}
2146 188 pbaillot
2147 188 pbaillot
\end{document}
2148 188 pbaillot
2149 188 pbaillot
2150 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2151 188 pbaillot
%%%%%%%%%%% REGLES POUR DLAL %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2152 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2153 188 pbaillot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2154 188 pbaillot
2155 188 pbaillot
\begin{frame} \frametitle{DLAL rules}
2156 188 pbaillot
%\DefaultTransition{Dissolve}
2157 188 pbaillot
{\tiny
2158 188 pbaillot
\begin{center}
2159 188 pbaillot
\begin{tabular}{l@{\hspace{-2mm}}l}
2160 188 pbaillot
  {\infer[\mbox{(Id)}]{; x:A \vdash x:A}{}} & \\
2161 188 pbaillot
% &\\
2162 188 pbaillot
 {\infer[\mbox{($\fm$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fm B }
2163 188 pbaillot
 {\Gamma_1; \Delta_1, x:A \vdash t:B}}
2164 188 pbaillot
2165 188 pbaillot
  &
2166 188 pbaillot
 {\infer[\mbox{($\fm$ e)}]{\Gamma_1,\Gamma_2; \Delta_1, \Delta_2 \vdash (t\; u) :B }
2167 188 pbaillot
  {\Gamma_1; \Delta_1 \vdash t:A \fm B & \Gamma_2; \Delta_2 \vdash u:A}}
2168 188 pbaillot
\\[1ex]
2169 188 pbaillot
2170 188 pbaillot
{\infer[\mbox{($\fli$ i)}]{\Gamma_1; \Delta_1 \vdash \la x. t: A \fli B }
2171 188 pbaillot
 {\Gamma_1, x:A ; \Delta_1\vdash t:B}}
2172 188 pbaillot
  &
2173 188 pbaillot
{\infer[\mbox{($\fli$ e)}]{\Gamma_1, z:C ; \Delta_1 \vdash (t\; u) :B }
2174 188 pbaillot
  {\Gamma_1; \Delta_1 \vdash t:A \fli B & ; z:C \vdash u:A}}
2175 188 pbaillot
2176 188 pbaillot
\\[1ex]
2177 188 pbaillot
{\infer[\mbox{(Weak)}]{\Gamma_1, \Gamma_2; \Delta_1, \Delta_2 \vdash t: A }
2178 188 pbaillot
 {\Gamma_1; \Delta_1 \vdash t:A}}
2179 188 pbaillot
  &
2180 188 pbaillot
{\infer[\mbox{(Cntr)}]{x:A, \Gamma_1; \Delta_1 \vdash t[x \slash x_1, x \slash x_2] :B }{x_1:A,x_2:A, \Gamma_1; \Delta_1 \vdash t:B }}
2181 188 pbaillot
2182 188 pbaillot
\\[1ex]
2183 188 pbaillot
{\infer[\mbox{($\pa$ i)}]{\Gamma ; x_1:\pa B_1, \dots, x_n:\pa B_n  \vdash t: \pa A }
2184 188 pbaillot
 {  ; \Gamma, x_1:B_1, \dots, x_n:B_n \vdash t:A}}
2185 188 pbaillot
  &
2186 188 pbaillot
{\infer[\mbox{\hspace{-1mm}($\pa$ e)}]{\Gamma_1,\Gamma_2; \Delta_1, \Delta_2 \vdash t[u \slash x] :B }
2187 188 pbaillot
  {\Gamma_1; \Delta_1 \vdash u: \pa A  & \Gamma_2; x:\pa A, \Delta_2 \vdash t:B}}
2188 188 pbaillot
\\[1ex]
2189 188 pbaillot
{\infer[\mbox{($\forall$ i) (*)}]{{ \Gamma_1; \Delta_1 \vdash  t:\forall \alpha. A}}{{ \Gamma_1; \Delta_1 \vdash t:A}}}
2190 188 pbaillot
 &
2191 188 pbaillot
 {\infer[\mbox{($\forall$ e)}]{\Gamma_1; \Delta_1 \vdash t:A[B \slash \al] }
2192 188 pbaillot
{\Gamma_1; \Delta_1 \vdash t:\forall \al. A}}
2193 188 pbaillot
 \end{tabular}
2194 188 pbaillot
}
2195 188 pbaillot
\end{center}
2196 188 pbaillot
\end{frame}