root / CSL16 / feas-arith-wfm.tex @ 2
Historique | Voir | Annoter | Télécharger (22,96 ko)
1 |
\documentclass[a4paper,UKenglish]{lipics-v2016} |
---|---|
2 |
%This is a template for producing LIPIcs articles. |
3 |
%See lipics-manual.pdf for further information. |
4 |
%for A4 paper format use option "a4paper", for US-letter use option "letterpaper" |
5 |
%for british hyphenation rules use option "UKenglish", for american hyphenation rules use option "USenglish" |
6 |
% for section-numbered lemmas etc., use "numberwithinsect" |
7 |
|
8 |
\usepackage{microtype}%if unwanted, comment out or use option "draft" |
9 |
|
10 |
%\graphicspath{{./graphics/}}%helpful if your graphic files are in another directory |
11 |
|
12 |
\bibliographystyle{plainurl}% the recommended bibstyle |
13 |
|
14 |
% Author macros::begin %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
15 |
\title{Free-cut elimination in linear logic: an application to implicit complexity} |
16 |
%\titlerunning{A Sample LIPIcs Article} %optional, in case that the title is too long; the running title should fit into the top page column |
17 |
|
18 |
%% Please provide for each author the \author and \affil macro, even when authors have the same affiliation, i.e. for each author there needs to be the \author and \affil macros |
19 |
\author[1]{Patrick Baillot} |
20 |
\author[2]{Anupam Das} |
21 |
\affil[1]{Dummy University Computing Laboratory, Address/City, Country\\ |
22 |
\texttt{open@dummyuniversity.org}} |
23 |
\affil[2]{Department of Informatics, Dummy College, Address/City, Country\\ |
24 |
\texttt{access@dummycollege.org}} |
25 |
\authorrunning{J.\,Q. Open and J.\,R. Access} %mandatory. First: Use abbreviated first/middle names. Second (only in severe cases): Use first author plus 'et. al.' |
26 |
|
27 |
\Copyright{John Q. Open and Joan R. Access}%mandatory, please use full first names. LIPIcs license is "CC-BY"; http://creativecommons.org/licenses/by/3.0/ |
28 |
|
29 |
\subjclass{Dummy classification -- please refer to \url{http://www.acm.org/about/class/ccs98-html}}% mandatory: Please choose ACM 1998 classifications from http://www.acm.org/about/class/ccs98-html . E.g., cite as "F.1.1 Models of Computation". |
30 |
\keywords{Dummy keyword -- please provide 1--5 keywords}% mandatory: Please provide 1-5 keywords |
31 |
% Author macros::end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
32 |
|
33 |
%Editor-only macros:: begin (do not touch as author)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
34 |
\EventEditors{John Q. Open and Joan R. Acces} |
35 |
\EventNoEds{2} |
36 |
\EventLongTitle{42nd Conference on Very Important Topics (CVIT 2016)} |
37 |
\EventShortTitle{CVIT 2016} |
38 |
\EventAcronym{CVIT} |
39 |
\EventYear{2016} |
40 |
\EventDate{December 24--27, 2016} |
41 |
\EventLocation{Little Whinging, United Kingdom} |
42 |
\EventLogo{} |
43 |
\SeriesVolume{42} |
44 |
\ArticleNo{23} |
45 |
% Editor-only macros::end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
46 |
|
47 |
|
48 |
|
49 |
\usepackage[lutzsyntax]{virginialake} |
50 |
\usepackage{amsmath} |
51 |
\usepackage{amssymb} |
52 |
\usepackage{amsthm} |
53 |
\usepackage{times} |
54 |
%\usepackage{sans} |
55 |
\usepackage{cmll} |
56 |
|
57 |
%\newtheorem{theorem}{Theorem} |
58 |
%\newtheorem{maintheorem}[theorem]{Main Theorem} |
59 |
%\newtheorem{observation}[theorem]{Observation} |
60 |
%\newtheorem{corollary}[theorem]{Corollary} |
61 |
%\newtheorem{lemma}[theorem]{Lemma} |
62 |
\newtheorem{proposition}[theorem]{Proposition} |
63 |
%\newtheorem{conjecture}[theorem]{Conjecture} |
64 |
% |
65 |
%\theoremstyle{definition} |
66 |
%\newtheorem{definition}[theorem]{Definition} |
67 |
%\newtheorem{example}[theorem]{Example} |
68 |
%\newtheorem{notation}[theorem]{Notation} |
69 |
%\newtheorem{convention}[theorem]{Convention} |
70 |
%\newtheorem{remark}[theorem]{Remark} |
71 |
%\newtheorem{discussion}[theorem]{Discussion} |
72 |
|
73 |
\newcommand{\todo}[1]{{\color{red}{\textbf{Todo:} #1}}} |
74 |
\newcommand{\anupam}[1]{{\color{orange}{\textbf{Anupam:} #1}}} |
75 |
\newcommand{\patrick}[1]{{\color{blue}{\textbf{Patrick:} #1}}} |
76 |
|
77 |
\newcommand{\defined}{:=} |
78 |
\begin{document} |
79 |
|
80 |
\newcommand{\LL}{\it{LL}} |
81 |
\vllineartrue |
82 |
|
83 |
|
84 |
\newcommand{\FV}{\mathit{FV}} |
85 |
|
86 |
|
87 |
%terms |
88 |
\renewcommand{\succ}{s} |
89 |
\renewcommand{\epsilon}{\varepsilon} |
90 |
|
91 |
% linear connectives |
92 |
|
93 |
\newcommand{\limp}{\multimap} |
94 |
\renewcommand{\land}{\otimes} |
95 |
\newcommand{\laand}{\&} |
96 |
\newcommand{\laor}{\oplus} |
97 |
\renewcommand{\lor}{\vlpa} |
98 |
\renewcommand{\lnot}[1]{{#1^{\perp}}} |
99 |
\newcommand{\lnotnot}[1]{#1^{\perp \perp}} |
100 |
|
101 |
% classical connectives |
102 |
|
103 |
\newcommand{\cimp}{\supset} |
104 |
\newcommand{\cand}{\wedge} |
105 |
\newcommand{\cor}{\vee} |
106 |
\newcommand{\cnot}{\neg} |
107 |
|
108 |
|
109 |
\newcommand{\Ax}{\mathit{(Ax)}} |
110 |
\newcommand{\Rl}{\mathit{(Rl)}} |
111 |
|
112 |
\newcommand{\MELL}{\mathit{MELL}} |
113 |
\newcommand{\MEAL}{\mathit{MELLW}} |
114 |
\newcommand{\MELLW}{\mathit{MELL(W)}} |
115 |
|
116 |
\newcommand{\Aonetwo}{\mathcal{A}^1_2} |
117 |
\newcommand{\logic}{\mathit{L}_{\mathcal A} } |
118 |
|
119 |
% predicates |
120 |
\newcommand{\nat}{N} |
121 |
|
122 |
\newcommand{\Nat}{\mathbb{N}} |
123 |
|
124 |
%axioms |
125 |
\newcommand{\wk}{\mathit{wk}} |
126 |
\newcommand{\impl}{\cimp\text{-}\mathit{l}} |
127 |
\newcommand{\impcomm}{\mathit{com}} |
128 |
\newcommand{\conint}{\cand\text{-}\mathit{i}} |
129 |
\newcommand{\conel}{\cand\text{-}\mathit{e}} |
130 |
\newcommand{\negclass}{\cnot} |
131 |
|
132 |
%rules |
133 |
\renewcommand{\mp}{\mathit{mp}} |
134 |
\newcommand{\gen}{\mathit{gen}} |
135 |
\newcommand{\inst}{\mathit{ins}} |
136 |
\newcommand{\id}{\it{id}} |
137 |
\newcommand{\cut}{\it{cut}} |
138 |
\newcommand{\multicut}{\it{mcut}} |
139 |
\newcommand{\indr}{\mathit{IND}} |
140 |
\newcommand{\nec}{\mathit{nec}} |
141 |
\newcommand{\tax}{\mathit{T}} |
142 |
\newcommand{\four}{\mathit{4}} |
143 |
\newcommand{\kax}{\mathit{K}} |
144 |
\newcommand{\cntr}{\mathit{cntr}} |
145 |
|
146 |
\newcommand{\lefrul}[1]{#1\text{-}\mathit{l}} |
147 |
\newcommand{\rigrul}[1]{#1\text{-}\mathit{r}} |
148 |
|
149 |
%consequence relations |
150 |
\newcommand{\admits}{\vDash} |
151 |
\newcommand{\seqar}{\vdash} |
152 |
\newcommand{\proves}{\vdash} |
153 |
|
154 |
%induction |
155 |
\newcommand{\ind}{\mathit{IND}} |
156 |
\newcommand{\pind}{\mathit{PIND}} |
157 |
\newcommand{\cax}[2]{#1\text{-}#2} |
158 |
|
159 |
\maketitle |
160 |
|
161 |
\begin{abstract} |
162 |
We prove a general form of free-cut elimination for first-order theories in linear logic. We consider a version of Peano Arithmetic in linear logic and prove a witnessing theorem via the Buss and Mints \emph{witness function method}, characterising polytime as the provably total functions. |
163 |
\end{abstract} |
164 |
|
165 |
\section{Introduction} |
166 |
|
167 |
\section{Preliminaries} |
168 |
|
169 |
\todo{consider removing and just have a section on linear logic, including free-cut elimination.} |
170 |
|
171 |
\subsection{Linear logic} |
172 |
|
173 |
\subsection{Deduction theorem} |
174 |
|
175 |
[cite Avron:`semantics and proof theory of linear logic'] |
176 |
|
177 |
We will make much use of the deduction theorem, allowing us to argue informally within a theory for hypotheses that have been promoted. |
178 |
|
179 |
\begin{theorem} |
180 |
[Deduction] |
181 |
If $\mathcal T , A \proves B$ then $\mathcal{T} \proves !A \limp B$. |
182 |
\end{theorem} |
183 |
|
184 |
\todo{need that $A$ above is closed! Check for rules to axioms.} |
185 |
|
186 |
|
187 |
|
188 |
\subsection{Converting axioms to rules in $\MELLW$} |
189 |
|
190 |
\begin{proposition} |
191 |
An axiom $\Ax$ of the form, |
192 |
\[ |
193 |
A_1 \limp \vldots \limp A_m \limp !B_1 \limp \vldots \limp !B_n \limp C |
194 |
\] |
195 |
is equivalent (over propositional $\LL$) to the rule $\Rl$: |
196 |
\[ |
197 |
\vliiinf{\Rl}{}{ !\Gamma , A_1 , \dots , A_m \seqar C , ? \Delta }{ !\Gamma \seqar B_1 , ?\Delta }{\vldots }{ !\Gamma \seqar B_n , ?\Delta} |
198 |
\] |
199 |
\end{proposition} |
200 |
\begin{proof} |
201 |
Let us first assume $\Ax$ and derive $\Rl$. From the axiom and Currying, we have a proof of: |
202 |
\begin{equation}\label{eqn:curried-axiom} |
203 |
A_1 , \dots , A_m , !B_1 , \dots , !B_n \seqar C |
204 |
\end{equation} |
205 |
|
206 |
This can simply be cut against each of the premisses of $\Rl$, applying appropriate contractions and necessitations, to derive it: |
207 |
\[ |
208 |
\vlderivation{ |
209 |
\vliq{c}{}{!\Gamma , A_1 , \dots , A_m \seqar C , ?\Delta }{ |
210 |
\vliin{\cut}{}{!\Gamma, \dots , !\Gamma , A_1 , \dots , A_m \seqar C , ?\Delta, \dots , ?\Delta }{ |
211 |
\vlin{!}{}{!\Gamma \seqar !B_n, ?\Delta }{\vlhy{!\Gamma \seqar B_n , ?\Delta }} |
212 |
}{ |
213 |
\vliin{\cut}{}{\qquad \qquad \qquad \qquad \vlvdots \qquad \qquad \qquad \qquad }{ |
214 |
\vlin{!}{}{!\Gamma \seqar !B_1 , ?\Delta}{\vlhy{!\Gamma \seqar B_1, ?\Delta }} |
215 |
}{\vlhy{ A_1 , \dots , A_m , !B_1 , \dots , !B_n \seqar C } } |
216 |
} |
217 |
} |
218 |
} |
219 |
\] |
220 |
|
221 |
Now let us prove $\Ax$ (again in the form of \eqref{eqn:curried-axiom}) by using $\Rl$ as follows: |
222 |
\[ |
223 |
\vliiinf{\Rl}{}{ A_1 , \dots , A_m , !B_1 , \dots , !B_n \seqar C }{ \vlderivation{ |
224 |
\vlin{w}{}{ !B_1 , \dots , !B_n \seqar B_1 }{ |
225 |
\vlin{!}{}{!B_1 \seqar B_1 }{ |
226 |
\vlin{\id}{}{B_1 \seqar B_1 }{\vlhy{}} |
227 |
} |
228 |
} |
229 |
} }{\vldots}{ |
230 |
\vlderivation{ |
231 |
\vlin{w}{}{ !B_1 , \dots , !B_n \seqar B_n }{ |
232 |
\vlin{!}{}{!B_n \seqar B_n }{ |
233 |
\vlin{\id}{}{B_n \seqar B_n }{\vlhy{}} |
234 |
} |
235 |
} |
236 |
} |
237 |
} |
238 |
\] |
239 |
\end{proof} |
240 |
|
241 |
|
242 |
\textbf{NB:} The proof does not strictly require side formulae $? \Delta$ on the right of the sequent arrow $\seqar$, it would work without them, e.g.\ for the intuitionistic case. In a one-sided setting there is no difference. |
243 |
|
244 |
|
245 |
|
246 |
\begin{corollary} |
247 |
The induction axiom of $A^1_2$ is equivalent to the rule: |
248 |
\[ |
249 |
\vliinf{}{(x \notin \FV(\Gamma, \Delta))}{ !\Gamma , A(\epsilon) \seqar A(t) , ?\Delta }{ !\Gamma , A(x) \seqar A(s_0 x ), ?\Delta }{ !\Gamma, A(x) \seqar A( s_1 x ) , ?\Delta} |
250 |
\] |
251 |
\end{corollary} |
252 |
\begin{proof} |
253 |
By proposition above, generalisation and Currying. |
254 |
\end{proof} |
255 |
|
256 |
|
257 |
\subsection{Prenexing} |
258 |
%In the presence of weakening we have a prenex normal form due to the following: |
259 |
% |
260 |
%\[ |
261 |
%\vlderivation{ |
262 |
% \vlin{}{}{\exists x . A \lor B \seqar \exists x . (A(x) \lor B) }{ |
263 |
% |
264 |
% } |
265 |
% } |
266 |
%\] |
267 |
|
268 |
Cannot derive prenexing operations, e.g.\ a problem with $\exists x . A \lor B \seqar \exists x . (A(x) \lor B)$. Can safely add prenexing rules? Or not a problem due to Witness predicate? |
269 |
|
270 |
\section{Free-cut elimination in linear logic} |
271 |
|
272 |
\section{Some variants of arithmetic in linear logic} |
273 |
|
274 |
For pretty much all variants discussed we will actually work in the \emph{affine} variant of linear logic, which validates weakening: $(A \land B )\limp A$. There are many reasons for this; essentially it has not much effect on complexity while also creating a more robust proof theory. For example it induces the following equivalence: |
275 |
\[ |
276 |
!(A\land B) \equiv (!A \land !B) |
277 |
\] |
278 |
(The right-left direction is already valid in usual linear logic, but the left-right direction requires weakening). |
279 |
|
280 |
We define a variant of arithmetic inspired by Bellantoni and Hofmann's $A^1_2$. We describe later some connections to bounded arithmetic. |
281 |
|
282 |
|
283 |
\subsection{Based on Bellantoni-Hoffmann, Leivant, etc.} |
284 |
|
285 |
\newcommand{\natcntr}{\nat\mathit{cntr}} |
286 |
\newcommand{\geneps}{\nat_{\epsilon}} |
287 |
\newcommand{\genzer}{\nat_{0}} |
288 |
\newcommand{\genone}{\nat_{1}} |
289 |
|
290 |
|
291 |
\newcommand{\sepeps}{\epsilon} |
292 |
\newcommand{\sepzer}{\succ_{0}} |
293 |
\newcommand{\sepone}{\succ_{1}} |
294 |
|
295 |
\newcommand{\inj}{\mathit{inj}} |
296 |
\newcommand{\surj}{\mathit{surj}} |
297 |
|
298 |
\begin{definition} |
299 |
[Arithmetic] |
300 |
We have the following axioms: |
301 |
\[ |
302 |
\begin{array}{rl} |
303 |
\natcntr & \forall x^N . (N(x) \land N(x)) \\ |
304 |
\geneps & \nat(\epsilon) \\ |
305 |
\genzer & \forall x^N . N(\succ_0 x) \\ |
306 |
\genone & \forall x^N . N(\succ_1 x) \\ |
307 |
\sepeps & \forall x^N . (\epsilon \neq \succ_0 x \land \epsilon \neq \succ_1 x) \\ |
308 |
\sepzer & \forall x^N , y^N. ( \succ_0 x = \succ_0 y \limp x=y ) \\ |
309 |
\sepone & \forall x^N , y^N. ( \succ_1 x = \succ_1 y \limp x=y ) \\ |
310 |
\inj & \forall x^N . \succ_0 x \neq \succ_1 x \\ |
311 |
\surj & \forall x^N . (x = \epsilon \lor \exists y^N . x = \succ_0 y \lor \exists y^N . x = \succ_1 y ) \\ |
312 |
\noalign{\bigskip} |
313 |
\ind & todo |
314 |
\end{array} |
315 |
\] |
316 |
|
317 |
Induction rule should be the following, to take account of relativised quantifiers? |
318 |
\[ |
319 |
\vliinf{\ind}{}{ !N(t) , !\Gamma , A(\epsilon) \seqar A(t), ?\Delta }{ !N(a) , !\Gamma, A(a) \seqar A(\succ_0 a) , ?\Delta }{ !N(a) , !\Gamma, A(a) \seqar A(\succ_0 a) , ?\Delta } |
320 |
\] |
321 |
|
322 |
\todo{in existential above, is there a prenexing problem?} |
323 |
|
324 |
\todo{what about $\leq$? Introducing this could solve prenexing problem, e.g.\ by induction?} |
325 |
\end{definition} |
326 |
|
327 |
\subsection{$\nat$-hierarchy} |
328 |
|
329 |
\begin{definition} |
330 |
|
331 |
\todo{replace N with nat.} |
332 |
|
333 |
Let us define the quantifiers $\exists x^N . A$ and $\forall x^N . A$ as $\exists x . (N(x) \land A)$ and $\forall x . (N(x) \limp A) $ respectively. |
334 |
|
335 |
We define $\Sigma^N_0 = \Pi^N_0 $ as the class of formulae that are free of quantifiers. For $i\geq 0$ we define: |
336 |
\begin{itemize} |
337 |
\item $\Sigma^N_{i+1}$ is the class of formulae $\exists x^N . A$ where $A \in \Pi^N_i$. |
338 |
\item $\Pi^N_{i+1}$ is the class of formulae $\forall x^N . A$ where $A \in \Sigma^N_i$. |
339 |
\item ($\Delta^N_i$ is the class $\Sigma^N_i \cap \Pi^N_i$.) |
340 |
\end{itemize} |
341 |
\end{definition} |
342 |
|
343 |
\todo{allow closure under positive Boolean operations?} |
344 |
|
345 |
\todo{What about prenexing rules? Should not change provably total functions!} |
346 |
|
347 |
\subsection{Equivalent rule systems} |
348 |
|
349 |
For the quantifiers $\exists x^N $ and $\forall x^N$ we introduce the following rules, which are compatible with free-cut elimination: |
350 |
|
351 |
\[ |
352 |
\begin{array}{cc} |
353 |
\vlinf{}{}{\Gamma \seqar \Delta, \forall x^N . A(x)}{\Gamma, N(a) \seqar \Delta , A(a)} |
354 |
\quad & \quad |
355 |
\vlinf{}{}{\Gamma, N(t),\forall x^N A(x) \seqar \Delta}{\Gamma, A(t) \seqar \Delta} |
356 |
\\ |
357 |
\noalign{\bigskip} |
358 |
\vlinf{}{}{\Gamma , \exists x^N A(x) \seqar \Delta}{\Gamma, N(a), A(a) \seqar \Delta} |
359 |
\quad &\quad |
360 |
\vlinf{}{}{\Gamma, N(t) \seqar \Delta , \exists x^N . A(x)}{\Gamma \seqar \Delta, A(t)} |
361 |
\end{array} |
362 |
\] |
363 |
|
364 |
CHECK THESE! |
365 |
|
366 |
\todo{Also include rules for contraction and weakening.} |
367 |
|
368 |
\section{Convergence of Bellantoni-Cook programs} |
369 |
|
370 |
\subsection{Bellantoni-Cook programs} |
371 |
We first recall the notion of safe recursion on notation from BC. TODO |
372 |
|
373 |
\subsection{Convergence in arithmetic} |
374 |
\begin{theorem} |
375 |
[Convergence] |
376 |
If $\Phi(f)$ is an equational specification corresponding to a BC-program defining $f()$, then $\cax{\Sigma^N_1}{\pind} \proves \ !\Phi(f) \limp \forall \vec{x}^{!N} . N(f(\vec x))$. |
377 |
\end{theorem} |
378 |
\begin{proof} |
379 |
We show by induction on the structure of a BC-program for $f(\vec x ; \vec y)$ that: |
380 |
\begin{equation} |
381 |
\Phi(f) , \cax{\Sigma^N_1}{\pind} \proves \ \forall \vec{x}^{!N} . \forall \vec{y}^N . N(f(\vec x ; \vec y)) |
382 |
\end{equation} |
383 |
We give some key cases in what follows. |
384 |
|
385 |
Suppose $f$ is defined by PRN by: |
386 |
\[ |
387 |
\begin{array}{rcl} |
388 |
f(0,\vec x ; \vec y) & = & g(\vec x ; \vec y) \\ |
389 |
f(\succ_i x , \vec x ; \vec y) & = & h_i (x, \vec x ; \vec y , f(x , \vec x ; \vec y)) |
390 |
\end{array} |
391 |
\] |
392 |
By the inductive hypothesis we already have that $g, h_0, h_1$ are provably convergent, so let us suppose that $N(\vec x)$ and prove, |
393 |
\begin{equation} |
394 |
\forall x^{!N} . ( N(\vec y) \limp N(f(x , \vec x ; \vec y) ) |
395 |
\end{equation} |
396 |
by $\cax{\Sigma^N_1}{\pind}$ on $x$. |
397 |
|
398 |
In the base case we have the following proof: |
399 |
\[ |
400 |
\vlderivation{ |
401 |
\vliin{}{}{N(\vec y) \limp N(f(0, \vec x ; \vec y))}{ |
402 |
\vltr{IH}{N(\vec y) \limp N(g(\vec x ; \vec y))}{\vlhy{\quad}}{\vlhy{}}{\vlhy{\quad}} |
403 |
}{ |
404 |
\vlin{}{}{N(g (\vec x ; \vec y) ) \limp N(f(0, \vec x ; \vec y)) }{ |
405 |
\vlin{}{}{g(\vec x ; \vec y) = f(0 , \vec x ; \vec y)}{\vlhy{}} |
406 |
} |
407 |
} |
408 |
} |
409 |
\] |
410 |
|
411 |
For the inductive step, we need to show that, |
412 |
\[ |
413 |
\forall x^{!N} . (( N(\vec y) \limp N( f(x, \vec x ; \vec y) ) ) \limp N(\vec y) \limp N(f(\succ_i x , \vec x ; \vec y) ) ) |
414 |
\] |
415 |
so let us suppose that $N(x)$ and we give the following proof: |
416 |
\[ |
417 |
\vlderivation{ |
418 |
\vlin{N\cntr}{}{N(y) \limp ( N(y ) \limp N(f( x , \vec x ; \vec y ) ) ) \limp N(f (\succ_i x , \vec x ; \vec y) ) }{ |
419 |
\vliin{}{}{N(y) \limp N(y) \limp ( N(y ) \limp N(f( x , \vec x ; \vec y ) ) ) \limp N(f (\succ_i x , \vec x ; \vec y) ) }{ |
420 |
\vliin{}{}{ N(y) \limp N(y) \limp ( N(y) \limp N( f(x, \vec x ; \vec y) ) ) \limp N( h_i (x , \vec x ; \vec y , f(x , \vec x ; \vec y) ) ) }{ |
421 |
\vltr{MLL}{( N(\vec y) \limp (N (\vec y) \limp N(f(x, \vec x ; \vec y) )) \limp N(f(x, \vec x ; \vec y)) }{\vlhy{\quad }}{\vlhy{\ }}{\vlhy{\quad }} |
422 |
}{ |
423 |
\vlhy{2} |
424 |
} |
425 |
}{ |
426 |
\vlhy{3} |
427 |
} |
428 |
} |
429 |
} |
430 |
\] |
431 |
TOFINISH |
432 |
\end{proof} |
433 |
|
434 |
\section{Witness function method} |
435 |
|
436 |
\todo{negation normal form} |
437 |
|
438 |
\newcommand{\type}{\mathtt{t}} |
439 |
\newcommand{\norm}{\nu} |
440 |
\newcommand{\safe}{\sigma} |
441 |
|
442 |
\subsection{Typing} |
443 |
|
444 |
\begin{definition} |
445 |
[Types] |
446 |
To each formula we associate a type as follows: |
447 |
\[ |
448 |
\begin{array}{rcll} |
449 |
\type (\nat (t)) & := & \Nat_\safe & \\ |
450 |
\type(s = t) & := & \Nat_\safe & \\ |
451 |
\type (A \star B) & : = & \type (A) \times \type (B) & \text{for $\star \in \{ \lor, \land, \laor, \laand \} $.} \\ |
452 |
\type (! A) & : = & \type_\norm (A) & \text{for $\lambda \in \{ !, ? \}$.}\\ |
453 |
\type (\exists x^N . A) & := & \Nat_\norm \times \type (A) & \\ |
454 |
\type (\forall x^N . A) & := & \Nat_\norm \to \type(A) |
455 |
\end{array} |
456 |
\] |
457 |
\end{definition} |
458 |
|
459 |
\todo{does this need to be compatible with safety etc.?} |
460 |
|
461 |
|
462 |
|
463 |
\newcommand{\witness}[2]{\mathit{Witness}^{#1}_{#2}} |
464 |
\begin{definition} |
465 |
[Witness predicate] |
466 |
We define the following formula: |
467 |
\[ |
468 |
\begin{array}{rcll} |
469 |
\witness{\vec a}{A} (w, \vec a) & := & A(\vec a) & \text{for $A$ quantifier-free.} \\ |
470 |
\witness{\vec a}{\exists x . A} (w, \vec w , \vec a) & := & \witness{\vec{a}, a}{A(a)}(\vec w , \vec a, w ) & \\ |
471 |
\witness{\vec a}{A \star B} ( \vec w^1 , \vec w^2 ) & := & \witness{\vec a}{A} (\vec w^1) \star \witness{\vec a}{B} (\vec w^2) & \text{for $\star \in \{ \land, \lor, \laand , \laor\}$.} \\ |
472 |
\end{array} |
473 |
\] |
474 |
\end{definition} |
475 |
\todo{problem: what about complexity of checking equality? } |
476 |
|
477 |
\todo{What about $\nat (t)$? What does it mean? Replace with true?} |
478 |
|
479 |
\todo{either use the witness predicate above, or use realizability predicate at meta-level and a model theory, like BH.} |
480 |
|
481 |
|
482 |
\subsection{The translation} |
483 |
Need witness predicate so that we know what is being preserved. |
484 |
|
485 |
\begin{definition} |
486 |
[Translation] |
487 |
We give a translation of proofs $\pi$ of sequents $\Gamma(\vec a) \seqar \Delta(\vec a)$ to BC-programs for a vector of functions $\vec f^\pi : \type(\bigotimes\Gamma) \times \Nat^{|\vec a|} \to \type(\bigparr\Delta)$ such that: |
488 |
\[ |
489 |
\witness{\vec a}{\bigotimes \Gamma} (\vec w , \vec a) \implies \witness{\vec a}{\bigparr \Delta } (\vec f(\vec w , \vec a), \vec a) |
490 |
\] |
491 |
We will be explicit about normal and safe inputs when necessary, for the most part we will simply rearrange inputs into lists $(\vec x; \vec a)$ as in BC framework. |
492 |
|
493 |
We often suppress the parameters $\vec a$ when it is not important. |
494 |
|
495 |
\anupam{Is this implication provable in Bellantoni's version of PV based on BC?} |
496 |
|
497 |
\anupam{for moment try ignore decoration on right? what about negation?} |
498 |
|
499 |
\anupam{just do it and see what happens!} |
500 |
|
501 |
\[ |
502 |
\vlderivation{ |
503 |
\vliin{\land}{}{ \Gamma, \Sigma \seqar \Delta, \Pi, A\land B }{ |
504 |
\vltr{\pi_1}{ \Gamma \seqar \Delta, A }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
505 |
}{ |
506 |
\vltr{\pi_2}{ \Sigma \seqar \Pi, B }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
507 |
} |
508 |
} |
509 |
\] |
510 |
|
511 |
So we have $\vec f^{1} (\vec x ; \vec a)$ and $\vec f^2 (\vec y ; \vec b)$ for $\pi_1 $ and $\pi_2$ respectively, by the inductive hypothesis. We simply construct $\vec f^\pi$ by rearranging these functions: |
512 |
\[ |
513 |
\vec f^\pi (\vec x , \vec y ; \vec a , \vec b) \quad := \quad ( f^1_1 (\vec x ; \vec a) , \dots , f^1_{|\Delta|} (\vec x ; \vec a) , f^2_1 (\vec y; \vec b) , \dots , f^2_{|\Pi|} (\vec y ; \vec b) , f^1_{|\Delta|+1} (\vec x ; \vec a ) , f^2_{|\Pi|+1} (\vec y ; \vec b) |
514 |
\] |
515 |
|
516 |
\anupam{bad notation since need to include free variables of sequent too. (also of theory.) Reconsider.} |
517 |
|
518 |
\[ |
519 |
\vlderivation{ |
520 |
\vlin{\lefrul{\cntr}}{}{ !A , \Gamma \seqar \Delta }{ |
521 |
\vltr{\pi'}{ !A, !A , \Gamma \seqar \Delta}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
522 |
} |
523 |
} |
524 |
\] |
525 |
Have $\vec f' (x_1 , x_2 , \vec y ; \vec a)$ for $\pi'$. Define |
526 |
\[ |
527 |
\vec f (x_1 , \vec y ; \vec a) \quad := \quad \vec f'(x_1 , x_1 , \vec y ; \vec a) |
528 |
\] |
529 |
\[ |
530 |
\vlderivation{ |
531 |
\vlin{\rigrul{\cntr}}{}{\Gamma \seqar \Delta, ?A}{ |
532 |
\vltr{\pi'}{ \Gamma \seqar \Delta, ?A, ?A}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
533 |
} |
534 |
} |
535 |
\] |
536 |
(need test function against witness predicate?) |
537 |
|
538 |
\anupam{problem: how to test even equality of two terms? Maybe treat $?$ as $!$ on left?} |
539 |
|
540 |
\anupam{Not a problem by free-cut elimination! Can assume there are no $?$ in the proof! Is this equivalent to treaing $?$ as $!$ on left?} |
541 |
|
542 |
\anupam{Yes I think so. We can work in a left-sided calculus. only problem is for induction. But this can never be a problem for modalities since induction formulae are modality-free.} |
543 |
|
544 |
\anupam{this is actually the main point.} |
545 |
|
546 |
|
547 |
\[ |
548 |
\vlderivation{ |
549 |
\vliin{\rigrul{\laand}}{}{\Gamma \seqar \Delta, A \laand B}{ |
550 |
\vltr{\pi_1}{ \Gamma \seqar \Delta, A}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
551 |
}{ |
552 |
\vltr{\pi_2}{ \Gamma \seqar \Delta, B}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
553 |
} |
554 |
} |
555 |
\] |
556 |
|
557 |
Suppose we have $\vec f^i (\vec x , \vec a ; \vec y , \vec b)$ from $\pi_i$. |
558 |
|
559 |
\anupam{problem: does this require many tests, just like for contraction? Can we isolate a different complexity class? e.g.\ PH or Grzegorzyck?} |
560 |
\anupam{skip this case and consider later.} |
561 |
\[ |
562 |
\vlderivation{ |
563 |
\vliin{\cut}{}{\Gamma , \Sigma \seqar \Delta , \Pi}{ |
564 |
\vltr{\pi_1}{ \Gamma \seqar \Delta, A }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
565 |
}{ |
566 |
\vltr{\pi_2}{\Sigma , A \seqar \Pi}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
567 |
} |
568 |
} |
569 |
\] |
570 |
|
571 |
We can assume that $A$ in the conclusion of $\pi_2$ is free of modalities, since one of the $A$s must be directly descended from an induction formula, and so consists of only safe inputs. Therefore we have functions $\vec f^1 (\vec w; \vec x)$ and $\vec f^2 (\vec y ; \vec z , \vec u)$ for $\pi_1$ and $\pi_2 $ respectively (free variable parameters are suppressed), with $\vec u$ corresponding to the (safe) inputs for $A$. |
572 |
|
573 |
Let us write: |
574 |
\[ |
575 |
\begin{array}{rcl} |
576 |
\vec f^1 & = & ( \vec f^1_i )^{|\Delta|+1}_{i=1} \\ |
577 |
\vec f^2 & = & ( \vec f^2_i )^{|\Pi|}_{i=1} |
578 |
\end{array} |
579 |
\] |
580 |
to denote the parts of $\vec f^i$ corresponding to formulae in their sequents. |
581 |
|
582 |
|
583 |
We define: |
584 |
\[ |
585 |
\vec f (\vec w , \vec y ; \vec x , \vec z) |
586 |
\quad := \quad |
587 |
( |
588 |
( \vec f^1_i (\vec w ; \vec x) )_{i \leq |\Delta|} |
589 |
, |
590 |
\vec f^2 ( \vec y ; \vec z , \vec f^1_{|\Delta| +1 } (\vec w ; \vec x) ) |
591 |
) |
592 |
\] |
593 |
|
594 |
Notice that all safe inputs are hereditarily right of a $;$, and so these terms are definable by safe composition and projection. |
595 |
|
596 |
\todo{left todo below.} |
597 |
|
598 |
|
599 |
Right existential: |
600 |
\[ |
601 |
\vlderivation{ |
602 |
\vlin{\rigrul{\exists}}{}{ \Gamma, \nat(t) \seqar \Delta , \exists x^\nat . A(x) }{ |
603 |
\vltr{\pi'}{ \Gamma \seqar \Delta , A(t) }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
604 |
} |
605 |
} |
606 |
\] |
607 |
|
608 |
|
609 |
Left existential: |
610 |
\[ |
611 |
\vlderivation{ |
612 |
\vlin{\lefrul{\exists}}{}{ \Gamma, \exists x^N . A(x) \seqar \Delta }{ |
613 |
\vltr{\pi'}{ \Gamma, A(a) , N(a) \seqar \Delta }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
614 |
} |
615 |
} |
616 |
\] |
617 |
|
618 |
!: |
619 |
\[ |
620 |
\vlderivation{ |
621 |
\vlin{!}{}{\Gamma, !A \seqar \Delta}{ |
622 |
\vltr{\pi'}{ \Gamma , A \seqar \Delta }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
623 |
} |
624 |
} |
625 |
\] |
626 |
\anupam{Again, use free-cut elimination to get rid of this case. We know $!$-ed formulae in advance, so just fix those as normal inputs in advance.} |
627 |
|
628 |
|
629 |
Induction: (can assume no side-formulae on right for same reason as no contraction.) |
630 |
\[ |
631 |
\vlderivation{ |
632 |
\vliin{\ind}{}{ !\Gamma , !\nat (t) , A(0) \seqar A(t) }{ |
633 |
\vltr{\pi_0}{ !\Gamma , !\nat(a) , A(a) \seqar A(\succ_0 a)}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
634 |
}{ |
635 |
\vltr{\pi_1}{ !\Gamma , !\nat(a), A(a)\seqar A(\succ_1 a) }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }} |
636 |
} |
637 |
} |
638 |
\] |
639 |
|
640 |
Suppose we have functions $\vec f^i (\vec x , y ; \vec u)$ from proofs $\pi_i$ where $\vec x $ corresponds to $!\Gamma$, $y$ corresponds to $!N(a)$ and $\vec u$ corresponds to $A(a)$. |
641 |
|
642 |
|
643 |
\anupam{role of $!N(a)$ versus having $a$ as a parameter to function. To consider!} |
644 |
|
645 |
Define the function $f_k$ (for $k = 1 , \dots , |\vec u|$) by PRN: |
646 |
\[ |
647 |
\begin{array}{rcl} |
648 |
f_k(\epsilon, \vec x , y ; \vec u) & := & u_k \\ |
649 |
f_k (\succ_i w , \vec x , y ; \vec u) & : = & f^i_k ( \vec x , y ; \vec f ( w, \vec x , y ; \vec u ) ) |
650 |
\end{array} |
651 |
\] |
652 |
|
653 |
\anupam{check this, esp use of parameters, cf.\ above.} |
654 |
|
655 |
\anupam{Is this not using a simultaneous version of PRN? Might need concatenation of words/basic coding to deal with this.} |
656 |
|
657 |
\end{definition} |
658 |
|
659 |
|
660 |
\section{Further work} |
661 |
|
662 |
Say something about minimisation and the polynomial hierarchy. Could be achieved by controlling contraction/additives, since this requires a notion of tests. |
663 |
|
664 |
\section{Conclusions} |
665 |
|
666 |
|
667 |
\end{document} |