Statistiques
| Révision :

root / CSL16 / feas-arith-wfm.tex @ 11

Historique | Voir | Annoter | Télécharger (42,9 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

    
15

    
16

    
17
\usepackage[lutzsyntax]{virginialake}
18
\usepackage{amsmath}
19
\usepackage{amssymb}
20
\usepackage{amsthm}
21
\usepackage{times}
22
%\usepackage{sans}
23
\usepackage{cmll}
24
\usepackage{bm}
25

    
26
%\newtheorem{theorem}{Theorem}
27
%\newtheorem{maintheorem}[theorem]{Main Theorem}
28
%\newtheorem{observation}[theorem]{Observation}
29
%\newtheorem{corollary}[theorem]{Corollary}
30
%\newtheorem{lemma}[theorem]{Lemma}
31
\newtheorem{proposition}[theorem]{Proposition}
32
%\newtheorem{conjecture}[theorem]{Conjecture}
33
%
34
%\theoremstyle{definition}
35
%\newtheorem{definition}[theorem]{Definition}
36
%\newtheorem{example}[theorem]{Example}
37
%\newtheorem{notation}[theorem]{Notation}
38
%\newtheorem{convention}[theorem]{Convention}
39
%\newtheorem{remark}[theorem]{Remark}
40
%\newtheorem{discussion}[theorem]{Discussion}
41

    
42
\newcommand{\todo}[1]{{\color{red}{\textbf{Todo:} #1}}}
43
\newcommand{\anupam}[1]{{\color{orange}{\textbf{Anupam:} #1}}}
44
\newcommand{\patrick}[1]{{\color{blue}{\textbf{Patrick:} #1}}}
45

    
46
\newcommand{\defined}{:=}
47
\begin{document}
48
	
49
	\newcommand{\LL}{\it{LL}}
50
	\vllineartrue
51
	
52
	
53
	\newcommand{\FV}{\mathit{FV}}
54
	
55
	
56
	%terms
57
	\renewcommand{\succ}{s}
58
	\renewcommand{\epsilon}{\varepsilon}
59
	
60
	% linear connectives
61
	
62
	\newcommand{\limp}{\multimap}
63
	\renewcommand{\land}{\otimes}
64
	\newcommand{\laand}{\&}
65
	\newcommand{\laor}{\oplus}
66
	\renewcommand{\lor}{\vlpa}
67
	\renewcommand{\lnot}[1]{{#1^{\perp}}}
68
	\newcommand{\lnotnot}[1]{#1^{\perp \perp}}
69
	
70
	% classical connectives
71
	
72
	\newcommand{\cimp}{\supset}
73
	\newcommand{\cand}{\wedge}
74
	\newcommand{\cor}{\vee}
75
	\newcommand{\cnot}{\neg}
76
	
77
	
78
	\newcommand{\Ax}{\mathit{(Ax)}}
79
	\newcommand{\Rl}{\mathit{(Rl)}}
80
	
81
	\newcommand{\MELL}{\mathit{MELL}}
82
	\newcommand{\MEAL}{\mathit{MELLW}}
83
	\newcommand{\MELLW}{\mathit{MELL(W)}}
84
	
85
	\newcommand{\Aonetwo}{\mathcal{A}^1_2}
86
	\newcommand{\logic}{\mathit{L}_{\mathcal A} }
87
	
88
	% predicates
89
	\newcommand{\nat}{N}
90
	
91
	\newcommand{\Nat}{\mathbb{N}}
92
	
93
	%axioms
94
	\newcommand{\wk}{\mathit{wk}}
95
	\newcommand{\impl}{\cimp\text{-}\mathit{l}}
96
	\newcommand{\impcomm}{\mathit{com}}
97
	\newcommand{\conint}{\cand\text{-}\mathit{i}}
98
	\newcommand{\conel}{\cand\text{-}\mathit{e}}
99
	\newcommand{\negclass}{\cnot}
100
	
101
	%rules
102
	\renewcommand{\mp}{\mathit{mp}}
103
	\newcommand{\gen}{\mathit{gen}}
104
	\newcommand{\inst}{\mathit{ins}}
105
	\newcommand{\id}{\it{id}}
106
	\newcommand{\cut}{\it{cut}}
107
	\newcommand{\multicut}{\it{mcut}}
108
	\newcommand{\indr}{\mathit{IND}}
109
	\newcommand{\nec}{\mathit{nec}}
110
	\newcommand{\tax}{\mathit{T}}
111
	\newcommand{\four}{\mathit{4}}
112
	\newcommand{\kax}{\mathit{K}}
113
	\newcommand{\cntr}{\mathit{cntr}}
114
	
115
	\newcommand{\lefrul}[1]{#1\text{-}\mathit{l}}
116
	\newcommand{\rigrul}[1]{#1\text{-}\mathit{r}}
117
	
118
	%consequence relations
119
	\newcommand{\admits}{\vDash}
120
	\newcommand{\seqar}{\vdash}
121
	\newcommand{\proves}{\vdash_e}
122
	
123
	%induction
124
	\newcommand{\ind}{\mathit{IND}}
125
	\newcommand{\pind}{\mathit{PIND}}
126
	\newcommand{\cax}[2]{#1\text{-}#2}
127

    
128

    
129

    
130
% Author macros::begin %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
131
\title{Free-cut elimination in linear logic: an application to implicit complexity}
132
%\titlerunning{A Sample LIPIcs Article} %optional, in case that the title is too long; the running title should fit into the top page column
133

    
134
%% 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
135
\author[1]{Patrick Baillot}
136
\author[2]{Anupam Das}
137
\affil[1]{Dummy University Computing Laboratory, Address/City, Country\\
138
  \texttt{open@dummyuniversity.org}}
139
\affil[2]{Department of Informatics, Dummy College, Address/City, Country\\
140
  \texttt{access@dummycollege.org}}
141
\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.'
142

    
143
\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/
144

    
145
\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". 
146
\keywords{Dummy keyword -- please provide 1--5 keywords}% mandatory: Please provide 1-5 keywords
147
% Author macros::end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
148

    
149
%Editor-only macros:: begin (do not touch as author)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
150
\EventEditors{John Q. Open and Joan R. Acces}
151
\EventNoEds{2}
152
\EventLongTitle{42nd Conference on Very Important Topics (CVIT 2016)}
153
\EventShortTitle{CVIT 2016}
154
\EventAcronym{CVIT}
155
\EventYear{2016}
156
\EventDate{December 24--27, 2016}
157
\EventLocation{Little Whinging, United Kingdom}
158
\EventLogo{}
159
\SeriesVolume{42}
160
\ArticleNo{23}
161
% Editor-only macros::end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
162

    
163
\maketitle
164

    
165
\begin{abstract}
166
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.
167
 \end{abstract}
168

    
169
\section{Introduction}
170

    
171
\todo{words or integers?}
172

    
173

    
174

    
175
\section{Preliminaries}
176

    
177
\todo{consider removing and just have a section on linear logic, including free-cut elimination.}
178

    
179

    
180

    
181

    
182
\paragraph*{Notation}
183
Fix conventions here for use throughout:
184
\begin{itemize}
185
\item Eigenvariables: $a, b , c$.
186
\item (Normal) variables: $u,v,w$. (only when distinction is important, e.g.\ $u^{!\nat}$).
187
\item (Safe) variables: $x,y,z$. (as above, e.g.\ $x^\nat$.)
188
\item Terms: $r,s,t$.
189
\item Formulae: $A,B,C$.
190
\item Atomic formulae: $p,q$.
191
\item Sequents: $\Gamma, \Delta, \Sigma, \Pi$.
192
\item Proofs: $\pi, \rho, \sigma$.
193
\item Theories: $\mathcal T$. Sequent systems: $\mathcal S$.
194
\end{itemize}
195

    
196
\subsection{Linear logic}
197

    
198
\anupam{use a system that is already in De Morgan form, for simplicity.}
199
\anupam{Have skipped units, can reconsider this when in arithmetic. Also in affine setting can be recovered by any contradiction/tautology.}
200

    
201
\begin{definition}
202
[Sequent calculus for linear logic]
203
We define the following calculus in De Morgan normal form:
204
\[
205
\begin{array}{l}
206
\begin{array}{cccc}
207
\vlinf{\lefrul{\bot}}{}{p, \lnot{p} \seqar }{}
208
& \vlinf{\id}{}{p \seqar p}{}
209
& \vlinf{\rigrul{\bot}}{}{\seqar p, \lnot{p}}{}
210
& \vliinf{\cut}{}{\Gamma, \Sigma \seqar \Delta , \Pi}{ \Gamma \seqar \Delta, A }{\Sigma, A \seqar \Pi}
211
\\
212
\noalign{\bigskip}
213
%\text{Multiplicatives:} & & & \\
214
%\noalign{\bigskip}
215
\vliinf{\lefrul{\lor}}{}{\Gamma,\Sigma, A \lor B \seqar \Delta, \Pi}{\Gamma, A \seqar \Delta}{\Sigma , B \seqar \Pi}
216
&
217
\vlinf{\lefrul{\land}}{}{\Gamma, A\land B \seqar \Delta}{\Gamma, A , B \seqar \Delta}
218
&
219
\vlinf{\rigrul{\lor}}{}{\Gamma \seqar \Delta, A \lor B}{\Gamma \seqar \Delta, A, B}
220
&
221
\vliinf{\rigrul{\land}}{}{\Gamma, \Sigma \seqar \Delta , \Pi , A \land B}{\Gamma \seqar \Delta , A}{\Sigma \seqar \Pi , B}
222
\\
223
\noalign{\bigskip}
224
%\text{Additives:} & & & \\
225
%\noalign{\bigskip}
226
\vliinf{\lefrul{\laor}}{}{\Gamma, A \laor B \seqar \Delta}{\Gamma , A \seqar \Delta}{\Gamma, B \seqar \Delta}
227
&
228
\vlinf{\lefrul{\laand}}{}{\Gamma, A_1\laand A_2 \seqar \Delta}{\Gamma, A_i \seqar \Delta}
229
&
230
%\vlinf{\lefrul{\laand}}{}{\Gamma, A\laand B \seqar \Delta}{\Gamma, B \seqar \Delta}
231
%\quad
232
\vlinf{\rigrul{\laor}}{}{\Gamma \seqar \Delta, A1\laor A_2}{\Gamma \seqar \Delta, A_i}
233
&
234
%\vlinf{\rigrul{\laor}}{}{\Gamma \seqar \Delta, A\laor B}{\Gamma \seqar \Delta, B}
235
%\quad
236
\vliinf{\rigrul{\laand}}{}{\Gamma \seqar \Delta, A \laand B }{\Gamma \seqar \Delta, A}{\Gamma \seqar \Delta, B}
237
\\
238
\noalign{\bigskip}
239
%\text{Exponentials:} & & & \\
240
%\noalign{\bigskip}
241
\vlinf{\lefrul{?}}{}{!\Gamma, ?A \seqar ?\Delta}{!\Gamma , A \seqar ?\Delta}
242
&
243
\vlinf{\lefrul{!}}{}{\Gamma, !A \seqar \Delta}{\Gamma, A \seqar \Delta}
244
&
245
\vlinf{\rigrul{?}}{}{\Gamma \seqar \Delta, ?A}{\Gamma \seqar \Delta, A}
246
&
247
\vlinf{\rigrul{!}}{}{!\Gamma \seqar ?\Delta, ?A}{!\Gamma \seqar ?\Delta, A}
248
\\
249
\noalign{\bigskip}
250
%\text{Structural:} & & & \\
251
%\noalign{\bigskip}
252
\vlinf{\lefrul{\wk}}{}{\Gamma, !A \seqar \Delta}{\Gamma \seqar \Delta}
253
&
254
\vlinf{\lefrul{\cntr}}{}{\Gamma, !A \seqar \Delta}{\Gamma, !A, !A \seqar \Delta}
255
&
256
\vlinf{\rigrul{\wk}}{}{\Gamma \seqar \Delta, ?A }{\Gamma \seqar \Delta}
257
&
258
\vlinf{\rigrul{\cntr}}{}{\Gamma \seqar \Delta, ?A}{\Gamma \seqar \Delta, ?A, ?A}
259
\\
260
\noalign{\bigskip}
261
\vlinf{\lefrul{\exists}}{}{\Gamma, \exists x . A(x) \seqar \Delta}{\Gamma, A(a) \seqar \Delta}
262
&
263
\vlinf{\lefrul{\forall}}{}{\Gamma, \forall x. A(x) \seqar \Delta}{\Gamma, A(t) \seqar \Delta}
264
&
265
\vlinf{\rigrul{\exists}}{}{\Gamma \seqar \Delta, \exists x . A(x)}{ \Gamma \seqar \Delta, A(t)}
266
&
267
\vlinf{\rigrul{\forall}}{}{\Gamma \seqar \Delta, \forall x . A(x)}{ \Gamma \seqar \Delta, A(a) }
268
\end{array}
269
\end{array}
270
\]
271
where $p$ atomic, $i \in \{ 1,2 \}$ and the eigenvariable $a$ does not occur free in $\Gamma$ or $\Delta$.
272
\end{definition}
273

    
274

    
275
\subsection{Deduction theorem}
276

    
277
[cite Avron:`semantics and proof theory of linear logic']
278

    
279
We will make much use of the deduction theorem, allowing us to argue informally within a theory for hypotheses that have been promoted.
280

    
281
\begin{theorem}
282
	[Deduction]
283
	If $\mathcal T , A \proves B$ then $\mathcal{T} \proves !A \limp B$.
284
\end{theorem}
285

    
286
\todo{need that $A$ above is closed! Check for rules to axioms.}
287

    
288

    
289

    
290
\subsection{Converting axioms to rules in $\MELLW$}
291

    
292
\begin{proposition}
293
	An axiom $\Ax$ of the form,
294
	\[
295
	A_1 \limp \vldots \limp A_m \limp !B_1 \limp \vldots \limp !B_n \limp C
296
	\]
297
	is equivalent (over propositional $\LL$) to the rule $\Rl$:
298
	\[
299
	\vliiinf{\Rl}{}{ !\Gamma , A_1 , \dots , A_m \seqar C , ? \Delta  }{ !\Gamma \seqar B_1 , ?\Delta }{\vldots }{ !\Gamma \seqar B_n , ?\Delta}
300
	\]
301
\end{proposition}
302
\begin{proof}
303
	Let us first assume $\Ax$ and derive $\Rl$. From the axiom and Currying, we have a proof of:
304
	\begin{equation}\label{eqn:curried-axiom}
305
	A_1 , \dots , A_m , !B_1 , \dots , !B_n \seqar C
306
	\end{equation}
307
	
308
	This can simply be cut against each of the premisses of $\Rl$, applying appropriate contractions and necessitations, to derive it:
309
	\[
310
	\vlderivation{
311
		\vliq{c}{}{!\Gamma , A_1 , \dots , A_m \seqar C , ?\Delta }{
312
			\vliin{\cut}{}{!\Gamma, \dots , !\Gamma , A_1 , \dots , A_m \seqar C , ?\Delta, \dots , ?\Delta }{
313
				\vlin{!}{}{!\Gamma \seqar !B_n, ?\Delta }{\vlhy{!\Gamma \seqar B_n , ?\Delta }}
314
			}{
315
			\vliin{\cut}{}{\qquad \qquad \qquad \qquad  \vlvdots \qquad \qquad \qquad \qquad }{
316
				\vlin{!}{}{!\Gamma \seqar !B_1 , ?\Delta}{\vlhy{!\Gamma \seqar B_1, ?\Delta }}
317
			}{\vlhy{ A_1 , \dots , A_m , !B_1 , \dots , !B_n \seqar C } }
318
		}
319
	}
320
}
321
\]
322

    
323
Now let us prove $\Ax$ (again in the form of \eqref{eqn:curried-axiom}) by using $\Rl$ as follows:
324
\[
325
\vliiinf{\Rl}{}{ A_1 , \dots , A_m , !B_1 , \dots , !B_n \seqar C }{  \vlderivation{
326
		\vlin{w}{}{ !B_1 , \dots , !B_n \seqar B_1 }{
327
			\vlin{!}{}{!B_1 \seqar B_1 }{
328
				\vlin{\id}{}{B_1 \seqar B_1 }{\vlhy{}}
329
			}
330
		}
331
	}  }{\vldots}{
332
	\vlderivation{
333
		\vlin{w}{}{ !B_1 , \dots , !B_n \seqar B_n }{
334
			\vlin{!}{}{!B_n \seqar B_n }{
335
				\vlin{\id}{}{B_n \seqar B_n }{\vlhy{}}
336
			}
337
		}
338
	}
339
}
340
\]
341
\end{proof}
342

    
343

    
344
\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.
345

    
346

    
347

    
348
\begin{corollary}
349
	The induction axiom of $A^1_2$ is equivalent to the rule:
350
	\[
351
	\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}
352
	\]
353
\end{corollary}
354
\begin{proof}
355
	By proposition above, generalisation and Currying.
356
\end{proof}
357

    
358

    
359
\subsection{Prenexing}
360
%In the presence of weakening we have a prenex normal form due to the following:
361
%
362
%\[
363
%\vlderivation{
364
%	\vlin{}{}{\exists x . A \lor B \seqar \exists x . (A(x) \lor B) }{
365
%		
366
%		}
367
%	}
368
%\]
369

    
370
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?
371

    
372
\section{Free-cut elimination in linear logic}
373

    
374

    
375
\todo{patrick}
376

    
377
\anupam{Possibly need to include the cases for affine logic too, e.g.\ if weakening is native, since it does not play nice as an axiom.}
378

    
379
\todo{include some bounds on free-cut elimination? Look at paper "Corrected upper bounds for free-cut elimination" by Beckmann and Buss for comparison.}
380

    
381
\section{Some variants of arithmetic in linear logic}
382

    
383
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:
384
\[
385
!(A\land B) \equiv (!A \land !B)
386
\]
387
(The right-left direction is already valid in usual linear logic, but the left-right direction requires weakening).
388

    
389
We define a variant of arithmetic inspired by Bellantoni and Hofmann's $A^1_2$. We describe later some connections to bounded arithmetic.
390

    
391

    
392
\subsection{Based on Bellantoni-Hoffmann, Leivant, etc.}
393

    
394
\newcommand{\natcntr}{\nat\mathit{cntr}}
395
\newcommand{\geneps}{\nat_{\epsilon}}
396
\newcommand{\genzer}{\nat_{0}}
397
\newcommand{\genone}{\nat_{1}}
398

    
399

    
400
\newcommand{\sepeps}{\epsilon}
401
\newcommand{\sepzer}{\succ_{0}}
402
\newcommand{\sepone}{\succ_{1}}
403

    
404
\newcommand{\inj}{\mathit{inj}}
405
\newcommand{\surj}{\mathit{surj}}
406

    
407
\begin{definition}
408
[Arithmetic]
409
We have the following axioms:
410
\[
411
\begin{array}{rl}
412
\wk & (A \land B )\limp A \\
413
\natcntr & \forall x^N . (N(x) \land N(x)) \\
414
\geneps & \nat(\epsilon) \\
415
\genzer & \forall x^N . N(\succ_0 x) \\
416
\genone & \forall x^N . N(\succ_1 x) \\
417
\sepeps & \forall x^N . (\epsilon \neq \succ_0 x \land \epsilon \neq \succ_1 x) \\
418
\sepzer & \forall x^N , y^N. ( \succ_0 x = \succ_0 y \limp x=y ) \\
419
\sepone & \forall x^N , y^N. ( \succ_1 x = \succ_1 y \limp x=y ) \\
420
\inj & \forall x^N . \succ_0 x \neq \succ_1 x \\
421
\surj & \forall x^N . (x = \epsilon \lor \exists y^N . x = \succ_0 y \lor \exists y^N . x = \succ_1 y ) \\
422
\noalign{\bigskip}
423
\ind & A(\epsilon) \limp !( \forall x^{!\nat} . ( A(x) \limp A(\succ_0 x) ) ) \limp !( \forall x^{!\nat} . ( A(x) \limp A(\succ_1 x) ) ) \limp \forall x^{!\nat} . A(x)
424
\end{array}
425
\]
426

    
427
Induction rule should be the following, to take account of relativised quantifiers?
428
\[
429
\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  }
430
\]
431

    
432
\todo{in existential above, is there a prenexing problem?}
433

    
434
\todo{what about $\leq$? Introducing this could solve prenexing problem, e.g.\ by induction?}
435
\end{definition}
436

    
437
\subsection{$\nat$-hierarchy}
438

    
439
\begin{definition}
440

    
441
\todo{replace N with nat.}
442

    
443
	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.
444
	
445
	We define $\Sigma^N_0 = \Pi^N_0 $ as the class of formulae that are free of quantifiers. For $i\geq 0$ we define:
446
	\begin{itemize}
447
		\item $\Sigma^N_{i+1}$ is the class of formulae $\exists x^N . A$ where $A \in \Pi^N_i$.
448
		\item $\Pi^N_{i+1}$ is the class of formulae $\forall x^N . A$ where $A \in \Sigma^N_i$.
449
		\item ($\Delta^N_i$ is the class $\Sigma^N_i \cap \Pi^N_i$.)
450
	\end{itemize}
451
\end{definition}
452

    
453
\todo{allow closure under positive Boolean operations?}
454

    
455
\todo{What about prenexing rules? Should not change provably total functions!}
456

    
457
\subsection{Equivalent rule systems}
458

    
459
For the quantifiers $\exists x^N $ and $\forall x^N$ we introduce the following rules, which are compatible with free-cut elimination:
460

    
461
\[
462
\begin{array}{cc}
463
\vlinf{}{}{\Gamma \seqar \Delta, \forall x^N . A(x)}{\Gamma, N(a) \seqar \Delta , A(a)}
464
\quad & \quad
465
\vlinf{}{}{\Gamma, N(t),\forall x^N A(x) \seqar \Delta}{\Gamma,  A(t) \seqar \Delta}
466
\\
467
\noalign{\bigskip}
468
\vlinf{}{}{\Gamma , \exists x^N A(x) \seqar \Delta}{\Gamma, N(a), A(a) \seqar \Delta}
469
\quad &\quad 
470
\vlinf{}{}{\Gamma, N(t) \seqar \Delta , \exists x^N . A(x)}{\Gamma  \seqar \Delta, A(t)}
471
\end{array}
472
\]
473

    
474
CHECK THESE!
475

    
476
\todo{Also include rules for contraction and weakening.}
477

    
478
\section{Convergence of Bellantoni-Cook programs}
479

    
480
\subsection{Bellantoni-Cook programs}
481
We first recall the notion of safe recursion on notation from BC. TODO
482

    
483
\subsection{Convergence in arithmetic}
484
\begin{theorem}
485
	[Convergence]
486
	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))$.
487
\end{theorem}
488
\begin{proof}
489
	We show by induction on the structure of a BC-program for $f(\vec x ; \vec y)$ that:
490
	\begin{equation}
491
	\Phi(f) , \cax{\Sigma^N_1}{\pind} \proves \ \forall \vec{x}^{!N} . \forall \vec{y}^N . N(f(\vec x ; \vec y))
492
	\end{equation}
493
	We give some key cases in what follows.
494
	
495
	Suppose $f$ is defined by PRN by:
496
	\[
497
	\begin{array}{rcl}
498
	f(0,\vec x ; \vec y) & = & g(\vec x ; \vec y) \\
499
	f(\succ_i x , \vec x ; \vec y) & = & h_i (x, \vec x ; \vec y , f(x , \vec x ; \vec y))
500
	\end{array}
501
	\]
502
	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,
503
	\begin{equation}
504
	\forall x^{!N} . ( N(\vec y) \limp N(f(x , \vec x ; \vec y)  )
505
	\end{equation}
506
	by $\cax{\Sigma^N_1}{\pind}$ on $x$.
507
	
508
	In the base case we have the following proof:
509
	\[
510
	\vlderivation{
511
		\vliin{}{}{N(\vec y) \limp N(f(0, \vec x ; \vec y))}{
512
			\vltr{IH}{N(\vec y) \limp N(g(\vec x ; \vec y))}{\vlhy{\quad}}{\vlhy{}}{\vlhy{\quad}}
513
		}{
514
		\vlin{}{}{N(g (\vec x ; \vec y) ) \limp N(f(0, \vec x ; \vec y)) }{
515
			\vlin{}{}{g(\vec x ; \vec y) = f(0 , \vec x ; \vec y)}{\vlhy{}}
516
		}
517
	}
518
}
519
\]
520

    
521
For the inductive step, we need to show that,
522
\[
523
\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) )   )
524
\]
525
so let us suppose that $N(x)$ and we give the following proof:
526
\[
527
\vlderivation{
528
	\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)  ) }{
529
		\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)  ) }{
530
			\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) ) ) }{
531
				\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 }}
532
			}{
533
			\vlhy{2}
534
		}
535
	}{
536
	\vlhy{3}
537
}
538
}
539
}
540
\]
541
TOFINISH
542
\end{proof}
543

    
544
\section{Witness function method}
545

    
546
\todo{negation normal form}
547

    
548
\newcommand{\type}{\mathtt{t}}
549
\newcommand{\norm}{\nu}
550
\newcommand{\safe}{\sigma}
551

    
552
\subsection{Typing}
553

    
554
\begin{definition}
555
	[Types]
556
	To each formula we associate a tuple type as follows:
557
	\[
558
	\begin{array}{rcll}
559
	\type (\nat (t)) & := & \Nat & \\
560
	\type(s = t) & := & \Nat & \\
561
	\type (A \star B)  & : = & \type (A) \times \type (B) & \text{for $\star \in \{ \lor, \land, \laor, \laand \} $.} \\
562
	\type (! A) & : = & \type_\norm (A) & \\
563
	\type (\exists x^N . A) & := & \Nat \times \type (A) & \\
564
%	\type (\forall x^N . A) & := & \Nat \to \type(A)
565
	\end{array}
566
	\]
567
	where $\nu$ designates that the inputs are normal.
568
	\end{definition}
569
	
570
	\todo{compatibility with safety. To consider.}
571
	
572
	
573
	
574
	
575
	\newcommand{\witness}[2]{\mathit{Witness}^{#1}_{#2}}
576
	\begin{definition}
577
		[Witness predicate]
578
		We define the following formula:
579
		\[
580
		\begin{array}{rcll}
581
		\witness{\vec a}{A} (w, \vec a) & := & A(\vec a) & \text{for $A$ quantifier-free.} \\
582
		\witness{\vec a}{\exists x . A} (w, \vec w , \vec a) & := & \witness{\vec{a}, a}{A(a)}(\vec w , \vec a, w ) & \\
583
		\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\}$.} \\
584
		\end{array}
585
		\]
586
	\end{definition}
587
	\todo{problem: what about complexity of checking equality? }
588
	
589
	\todo{What about $\nat (t)$? What does it mean? Replace with true?}
590
	
591
	\todo{either use the witness predicate above, or use realizability predicate at meta-level and a model theory, like BH.}
592
	
593
	\anupam{Need to check above properly. $N(t)$ should be witnessed by the value of $t $ in the model. For equality of terms the witness should not do anything.}
594
	
595
	\subsection{The translation}
596
	Need witness predicate so that we know what is being preserved.
597

    
598
\begin{definition}
599
	[Translation]
600
	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:
601
	\[
602
	\witness{\vec a}{\bigotimes \Gamma} (\vec w , \vec a) \implies \witness{\vec a}{\bigparr \Delta } (\vec f(\vec w , \vec a), \vec a)
603
	\]
604
	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.
605
	
606
	We often suppress the parameters $\vec a$ when it is not important.	
607
	
608
	\anupam{Is this implication provable in Bellantoni's version of PV based on BC?}
609
	
610
	\anupam{for moment try ignore decoration on right? what about negation?}
611
	
612

    
613
	
614
	\[
615
	\vlderivation{
616
		\vliin{\land}{}{ \Gamma, \Sigma \seqar \Delta, \Pi, A\land B }{
617
			\vltr{\pi_1}{ \Gamma \seqar \Delta, A }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
618
			}{
619
			\vltr{\pi_2}{ \Sigma \seqar \Pi, B }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
620
			}
621
		}
622
	\]
623
	
624
	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:
625
	\[
626
	\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)
627
	\] 
628
	
629
	\anupam{bad notation since need to include free variables of sequent too. (also of theory.) Reconsider.}
630
	
631
	\[
632
	\vlderivation{
633
		\vlin{\lefrul{\cntr}}{}{ !A , \Gamma \seqar \Delta }{
634
			\vltr{\pi'}{  !A, !A , \Gamma \seqar \Delta}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
635
			}
636
		}
637
	\]
638
	Have $\vec f' (x_1 , x_2 , \vec y ; \vec a)$ for $\pi'$. Define
639
	\[
640
	\vec f (x_1 , \vec y ; \vec a) \quad := \quad \vec f'(x_1 , x_1 , \vec y ; \vec a)
641
	\]
642
	\[
643
	\vlderivation{
644
	\vlin{\rigrul{\cntr}}{}{\Gamma \seqar \Delta, ?A}{
645
	\vltr{\pi'}{  \Gamma \seqar \Delta, ?A, ?A}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
646
	}
647
	}
648
	\]
649
	(need test function against witness predicate?)
650
	
651
	\anupam{problem: how to test even equality of two terms? Maybe treat $?$ as $!$ on left?}
652
	
653
	\anupam{Not a problem by free-cut elimination! Can assume there are no $?$ in the proof! Is this equivalent to treaing $?$ as $!$ on left?}
654
	
655
	\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.}
656
	
657
	\anupam{this is actually the main point.}
658
	
659
	
660
	\[
661
	\vlderivation{
662
	\vliin{\rigrul{\laand}}{}{\Gamma \seqar \Delta, A \laand B}{
663
	\vltr{\pi_1}{  \Gamma \seqar \Delta, A}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
664
	}{
665
	\vltr{\pi_2}{  \Gamma \seqar \Delta, B}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
666
	}
667
	}
668
	\]
669
	
670
	Suppose we have $\vec f^i (\vec x , \vec a ; \vec y , \vec b)$ from $\pi_i$.
671
	
672
	\anupam{problem: does this require many tests, just like for contraction? Can we isolate a different complexity class? e.g.\ PH or Grzegorzyck?}
673
	\anupam{skip this case and consider later.}
674
\[
675
\vlderivation{
676
\vliin{\cut}{}{\Gamma , \Sigma \seqar \Delta , \Pi}{
677
\vltr{\pi_1}{ \Gamma \seqar \Delta, A }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
678
}{
679
\vltr{\pi_2}{\Sigma , A \seqar \Pi}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
680
}
681
}
682
	\]
683
	
684
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$. 
685

    
686
Let us write:
687
\[
688
\begin{array}{rcl}
689
\vec f^1 & = & ( \vec f^1_i )^{|\Delta|+1}_{i=1} \\
690
\vec f^2 & = & ( \vec f^2_i )^{|\Pi|}_{i=1}
691
\end{array}
692
\]
693
to denote the parts of $\vec f^i$ corresponding to formulae in their sequents.
694

    
695

    
696
We define:
697
\[
698
\vec f (\vec w , \vec y ; \vec x , \vec z)
699
\quad := \quad
700
(
701
( \vec f^1_i (\vec w ; \vec x) )_{i \leq |\Delta|}
702
,
703
\vec f^2 ( \vec y ; \vec z , \vec f^1_{|\Delta| +1 } (\vec w ; \vec x) )
704
)
705
\]
706

    
707
Notice that all safe inputs are hereditarily right of a $;$, and so these terms are definable by safe composition and projection.
708

    
709
\todo{another case for $!\nat(x)$ cut formula.}
710

    
711
\anupam{should work for arbitrary $!$-cuts due to principal case for $!$}
712

    
713

    
714
Right existential:
715
\[
716
\vlderivation{
717
\vlin{\rigrul{\exists}}{}{ \Gamma, \nat(t) \seqar \Delta , \exists x^\nat . A(x) }{
718
\vltr{\pi'}{ \Gamma \seqar \Delta , A(t) }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
719
}
720
}
721
\]
722
Suppose we have functions $\vec f^X (\vec x ; \vec y)$ from $\pi'$ for $X = \Delta$ or $ X=A$. 
723
\[
724
\vec f(\vec x ; \vec y , z) \quad := \quad ( \vec f^\Delta (\vec x ; \vec y)   ,  z , \vec f^A ( \vec x ; \vec y ) )
725
\]
726

    
727

    
728
Left existential:
729
\[
730
\vlderivation{
731
\vlin{\lefrul{\exists}}{}{ \Gamma, \exists x^N . A(x) \seqar \Delta }{
732
\vltr{\pi'(a)}{ \Gamma,  N(a) , A(a) \seqar \Delta  }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
733
}
734
}
735
\]
736

    
737
Suppose we have functions $\vec f' (\vec u , \vec v ; x , \vec y , \vec z)$ from $\pi'$ with $(\vec u ; \vec x )$ corresponding to $\Gamma$, $(;x)$ corresponding to $N(a)$ and $(\vec v ; \vec z)$ corresponding to $A(a)$. We define:
738
\[
739
\vec f ( \vec u , \vec v ;  )
740
\]
741

    
742
\anupam{should just be same, no? To consider.}
743

    
744
%Suppose we have functions $\vec g (\vec v  , \vec w ; \vec x , y , \vec z)$ where $(\vec v ; \vec x) $ corresponds to $\Gamma$, $y$ corresponds to $\nat(a)$ and $(\vec w ; \vec z) $ corresponds to $A(a)$. Then we define:
745
%\[
746
%\vec f ( \vec v , \vec w ; \vec x , y , \vec z )
747
%\]
748

    
749
\todo{finish}
750

    
751
!:
752
\[
753
\vlderivation{
754
\vlin{!}{}{\Gamma, !A \seqar \Delta}{
755
\vltr{\pi'}{ \Gamma , A \seqar \Delta  }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
756
}
757
}
758
\]
759
\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.}
760

    
761

    
762
Induction: (can assume no side-formulae on right for same reason as no contraction.)
763
\[
764
\vlderivation{
765
\vliin{\ind}{}{ !\Gamma , !\nat (t) ,  A(\epsilon) \seqar A(t) }{
766
\vltr{\pi_0}{ !\Gamma , !\nat(a) , A(a) \seqar A(\succ_0 a)}{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
767
}{
768
\vltr{\pi_1}{ !\Gamma , !\nat(a), A(a)\seqar A(\succ_1 a) }{\vlhy{\quad }}{\vlhy{ }}{\vlhy{\quad }}
769
}
770
}
771
\]
772

    
773
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)$.
774

    
775

    
776
\anupam{role of $!N(a)$ versus having $a$ as a parameter to function. To consider!}
777

    
778
Define the function $f_k$ (for $k = 1 , \dots , |\vec u|$) by PRN:
779
\[
780
\begin{array}{rcl}
781
f_k(\epsilon, \vec x , y ; \vec u) & := & u_k \\
782
f_k (\succ_i w , \vec x , y ; \vec u) & : = & f^i_k ( \vec x ,  y ; \vec f ( w, \vec x , y ; \vec u ) )
783
\end{array}
784
\]
785

    
786
\anupam{check this, esp use of parameters, cf.\ above.}
787

    
788
\anupam{Is this not using a simultaneous version of PRN? Might need concatenation of words/basic coding to deal with this.}
789

    
790

    
791
\end{definition}
792

    
793
\newcommand{\concat}{\mathit{concat}}
794
\paragraph{Some points on concatenation \anupam{if necessary}}
795
We can define the concatenation operation by PRN:
796
\[
797
\begin{array}{rcl}
798
\concat (\epsilon ; y) & : = & x \\
799
\concat (\succ_i x ; y) & := & \succ_i \concat (x ; y)
800
\end{array}
801
\]
802

    
803
From here we can define iterated concatenation:
804
\[
805
\concat (x_1 , \dots x_n ; y) \quad := \quad \concat (x_n ; \concat (x_{n-1} ; \vldots \concat (x_1 ; y) \vldots ) )
806
\]
807

    
808
(notice all safe inputs are hereditarily to the right of $;$ so this is definable by safe composition and projection.)
809

    
810
\section{Further work}
811

    
812
Say something about minimisation and the polynomial hierarchy. Could be achieved by controlling contraction/additives, since this requires a notion of tests.
813

    
814
\section{Conclusions}
815

    
816
\appendix
817

    
818
\section{Some cut-elimination cases}
819
We work in a one-sided calculus for full linear logic. When working in the affine setting we simply drop the condition that weakened formulae are $?$-ed.
820

    
821
As well as all usual rules, we have the induction rule:
822
\[
823
\vlinf{\indr}{(x \notin FV (\Gamma) )}{? \Gamma, A^\perp (0) , A(t)}{? \Gamma , A^\perp (x) , A(s x) }
824
\]
825

    
826
We give all the various cut-reduction cases in the following section but first we give a simple cut-elimination argument.
827

    
828
\subsection{A basic (free-)cut elimination argument}
829
We give an argument that easily scales to free-cut elimination, i.e.\ in the presence of non-logical rules.
830

    
831
\newcommand{\anarrow}[2]{\overset{#1}{\underset{#2}{\longrightarrow}}}
832
\newcommand{\cutredlin}{\mathit{ma}}
833
\newcommand{\cutredexp}{exp}
834

    
835
\begin{definition}
836
	Let $\anarrow{}{\cutredexp}$ denote the reduction steps concerning exponential cuts, and $\anarrow{}{\cutredlin}$ be the set of cut-reduction steps concerning multiplicative and additive cuts.
837
\end{definition}
838

    
839
\newcommand{\rk}{\mathsf{rk}}
840
	\renewcommand{\deg}{\mathsf{deg}}
841
\begin{definition}
842
	[Measures]
843
	For a $\anarrow{}{\cutredlin}$-redex $r$, let its \emph{degree} $\deg( r)$ be the number of logical connectives or quantifiers in its cut-formula. For a proof $\pi$, its \emph{degree} $\deg( \pi)$ is the multiset of the degree of its redexes.
844
\end{definition}
845

    
846
\begin{proposition}
847
If $\pi$ is not $\anarrow{}{\cutredlin}$-normal then there is a derivation $L:\pi \anarrow{*}{\cutredlin} \pi'$ such that $\deg(\pi')< \deg(\pi)$.
848
\end{proposition}
849
\begin{proof}
850
	First let us show the statement in the special case that $\pi$ contains precisely one $\cut$-inference as its final step, by induction on $|\pi|$. Each commutative $\anarrow{}{\cutredlin}$-step results in us being able to apply the inductive hypothesis to smaller proofs,- in the case of $\vlan $ two smaller proofs. Each key $\anarrow{}{\cutredlin}$-case strictly reduces the degree of the proof. Consequently we can eventually transform $\pi$ to a proof $\pi'$ which has possibly several cuts of smaller degree, as required.
851
	
852
	Now to the general case, we simply apply the above procedure to the subproof above a topmost cut in $\pi$.
853
\end{proof}
854
\begin{corollary}
855
	$\anarrow{}{\cutredlin}$ is weakly normalising.
856
\end{corollary}
857

    
858

    
859
\newcommand{\cntdown}{\mathit{cn}}
860
\begin{definition}
861
	[Lazy contraction]
862
	Let $\anarrow{}{\cntdown}$ comprise of the following reduction steps:
863
	\begin{enumerate}
864
		\item The commuting steps,
865
			\[
866
			\vlderivation{
867
				\vlin{\rho}{}{\Gamma', ?A, }{
868
					\vlin{\cntr}{}{\Gamma, ?A}{\vlhy{\Gamma, ? A, ? A}}
869
				}
870
			}
871
			\quad\to \quad
872
			\vlderivation{
873
				\vlin{\cntr}{}{\Gamma', ?A}{
874
					\vlin{\rho}{}{\Gamma', ?A, ?A}{\vlhy{\Gamma, ? A, ? A}}
875
				}
876
			}	
877
			\]
878
			for each unary rule $\rho$.
879
			\item 
880
			The key steps:
881
			\[ 	
882
			\begin{array}{rcl}
883
			\vlderivation{
884
				\vlin{\cntr}{}{\Gamma, ?A}{
885
					\vlin{\wk}{}{\Gamma, ?A, ?A}{\vlhy{\Gamma, ?A}}
886
				}
887
			}
888
			\quad &\to & \quad
889
			\Gamma, ?A 
890
%			\]
891
%			and
892
%			\[
893
\\
894
\noalign{\smallskip}
895
				\vlderivation{
896
					\vlin{\wk}{}{\Gamma, ?A, ?A}{
897
						\vlin{\cntr}{}{\Gamma, ?A}{\vlhy{\Gamma, ?A, ?A}}
898
					}
899
				}
900
				\quad &\to& \quad
901
				\Gamma, ?A, ?A
902
							\end{array}
903
			\].
904
\item The commuting steps,
905
\[
906
	\vlderivation{
907
		\vliin{\rho}{}{\Gamma ,?A}{
908
			\vlin{\cntr}{}{\Gamma_1, ?A}{\vlhy{\Gamma_1, ?A, ?A}}
909
		}{\vlhy{\Gamma_2}}
910
	}
911
	\quad \to \quad
912
	\vlderivation{
913
		\vlin{\cntr}{}{\Gamma, ?A}{
914
			\vliin{\rho}{}{\Gamma,?A, ?A}{\vlhy{\Gamma_1, ?A, ?A}}{ \vlhy{\Gamma_2} }
915
		}
916
	}
917
\]
918
%\[
919
%\begin{array}{rcl}
920
%	\vlderivation{
921
%		\vliin{\land}{}{\Gamma, \Delta, ?A, B\land C}{
922
%			\vlin{\cntr}{}{\Gamma, ?A, B}{\vlhy{\Gamma, ?A, ?A, B}}
923
%		}{\vlhy{\Delta, C}}
924
%	}
925
%	\quad &\to &\quad
926
%	\vlderivation{
927
%		\vlin{\cntr}{}{\Gamma, \Delta, ?A, B\land C}{
928
%			\vliin{\land}{}{\Gamma, \Delta, ?A, ?A, B\land C}{\vlhy{\Gamma, ?A, ?A, B}}{ \vlhy{\Delta, C} }
929
%		}
930
%	}
931
%%	\]
932
%%	
933
%%	\[
934
%\\
935
%\noalign{\smallskip}
936
%	\vlderivation{
937
%		\vliin{\cut}{}{\Gamma, \Delta, ?A}{
938
%			\vlin{\cntr}{}{\Gamma, ?A, B}{\vlhy{\Gamma, ?A, ?A, B}}
939
%		}{\vlhy{\Delta, \lnot{B}}}
940
%	}
941
%	\quad &\to& \quad
942
%	\vlderivation{
943
%		\vlin{\cntr}{}{\Gamma, \Delta, ?A}{
944
%			\vliin{\cut}{}{\Gamma, \Delta, ?A, ?A}{\vlhy{\Gamma, ?A, ?A, B}}{ \vlhy{\Delta, \lnot{B}} }
945
%		}
946
%	}
947
%\end{array}
948
%\]
949
for each binary rule $\rho \in \{ \land, \cut \}$.
950
\item The commuting step:
951
	\[
952
	\vlderivation{
953
		\vliin{\vlan}{}{\Gamma, ?A, B\vlan C}{
954
			\vlin{\cntr}{}{\Gamma, ?A, B}{\vlhy{\Gamma, ?A, ?A, B}}
955
		}{\vlhy{\Gamma, ?A, B}}
956
	}
957
	\quad \to \quad
958
	\vlderivation{
959
		\vlin{\cntr}{}{\Gamma, ?A, B\vlan C}{
960
			\vliin{\vlan}{}{\Gamma, ?A, ?A, B\vlan C}{\vlhy{\Gamma, ?A, ?A, B}}{
961
				\vlin{\wk}{}{\Gamma, ?A, ?A, C}{\vlhy{\Gamma, ?A, C}}
962
			}
963
		}
964
	}
965
	\]
966
	\end{enumerate}
967
	For binary rules:
968

    
969
\end{definition}
970
\begin{proposition}
971
	$\anarrow{}{\cntdown}$ is weakly normalising
972
	, modulo $\cntr$-$\cntr$ redexes,
973
	and degree-preserving. 
974
	If $\pi$ is $\anarrow{}{\cutredlin}$-normal and $\pi \downarrow_\cntdown \pi'$, then so is $\pi'$.
975
\end{proposition}
976
\begin{proof}
977
	By induction on the number of redexes in a proof. Start with bottommost redex, by induction on number of inference steps beneath it.
978
\end{proof}
979

    
980
\begin{remark}
981
	Only weakly normalising since $\cntr$ can commute with $\cntr$, allowing cycles.
982
\end{remark}
983

    
984
\begin{proposition}
985
	If $\pi$ is $\anarrow{}{\cutredexp}$-reducible but $\anarrow{}{\cutredlin}$- and $\anarrow{}{\cntdown}$-normal then there is a derivation $H:\pi \anarrow{*}{\cutredexp} \pi'$ such that $\deg (\pi')<\deg(\pi)$.
986
\end{proposition}
987

    
988

    
989

    
990
\subsection{Base cases}
991

    
992
\[
993
\vlderivation{
994
\vliin{\cut}{}{ \Gamma,a }{ \vlhy{\Gamma,a} }{ \vlin{\id}{}{a,a^\bot}{ \vlhy{} } }
995
}
996
\quad\to\quad
997
\vlderivation{
998
\Gamma,a
999
}
1000
\]
1001

    
1002
\[
1003
\vlderivation{
1004
\vliin{\cut}{}{\Gamma}{ \vlin{\bot}{}{ \Gamma,\bot }{ \vlhy{\Gamma} } }{ \vlin{1}{}{1}{ \vlhy{} } }
1005
}
1006
\quad\to\quad
1007
\vlderivation{
1008
\Gamma
1009
}
1010
\]
1011

    
1012
\[
1013
\vlderivation{
1014
\vliin{\cut}{}{ \Gamma,\Delta,\top }{ \vlin{\top}{}{ \Gamma,\top,0 }{ \vlhy{} } }{ \vlhy{\Delta , \top } }
1015
}
1016
\quad\to\quad
1017
\vlinf{\top}{}{ \Gamma,\Delta,\top }{}
1018
\]
1019

    
1020
\subsection{Commutative cases}
1021
These are the cases when the principal formula of a step is not active for the cut-step below.
1022

    
1023
\begin{enumerate}
1024
\item The cut-step is immediately preceded by an initial step. Note that only the case for $\top$ applies:
1025
\[
1026
\vlderivation{
1027
\vliin{\cut}{}{\Gamma,\Delta,\top}{ 
1028
\vlin{\top}{  }{ \Gamma,\top,A }{ \vlhy{} }
1029
 }{ \vlhy{\Delta,A^\bot } }
1030
}
1031
\quad\to\quad
1032
\vlinf{\top}{}{ \Gamma,\Delta,\top }{}
1033
\]
1034
%Notice that this commutation eliminates the cut entirely and preserves the height of all cuts below.
1035
\item\label{CaseCommOneStep} A cut-step is immediately preceded by a step $\rho$ with exactly one premiss:
1036
\[
1037
\vlderivation{
1038
\vliin{\cut}{}{\Gamma',\Delta}{\vlin{\rho}{}{\Gamma',A}{\vlhy{\Gamma,A}}}{\vlhy{A^\bot , \Delta}}
1039
}
1040
\]
1041
We have three subcases:
1042
\begin{enumerate}
1043
\item\label{subcase:unary-commutation-vanilla} 
1044
%$\Delta$ consists of only $?$-ed formulae or 
1045
If $\rho \notin \{! , \indr \}$ then we can simply permute as follows:
1046
\begin{equation}
1047
\label{eqn:com-case-unary-simple}
1048
\vlderivation{
1049
\vliin{\cut}{}{\Gamma',\Delta}{\vlin{\rho}{}{\Gamma',A}{\vlhy{\Gamma,A}}}{\vlhy{A^\bot , \Delta}}
1050
}
1051
\quad \to \quad
1052
\vlderivation{
1053
\vlin{\rho}{}{\Gamma',\Delta}{
1054
\vliin{\cut}{}{\Gamma,\Delta}{\vlhy{\Gamma,A}}{\vlhy{A^\bot , \Delta}}
1055
}
1056
}
1057
\end{equation}
1058
(If $\rho$ was $\forall$ then we might need to rename some free variables in $\Delta$.)
1059
\item $\rho $ is a $!$-step. Therefore $\Gamma$ has the form $? \Sigma , B$ and $A$ has the form $?C$, yielding the following situation:
1060
\[
1061
\vlderivation{
1062
\vliin{\cut}{}{? \Sigma, !B, \Delta }{
1063
\vlin{!}{}{? \Sigma, !B , ?C}{\vlhy{?\Sigma , B , ?C}  }
1064
}{
1065
\vlin{\rho'}{}{!C^\perp , \Delta}{\vlhy{\vlvdots}}
1066
}
1067
}
1068
\]
1069
Now, if $!C^\perp$ is principle for $\rho'$ then $\rho'\in \{! , \indr\}$ and so $\Delta $ must be $?$-ed; in this case we are able to apply the transformation \eqref{eqn:com-case-unary-simple}. Otherwise $A^\perp$ is not principal for $\rho'$ and so $\rho' \notin \{! , \indr \}$, which means we can apply \ref{subcase:unary-commutation-vanilla} along this side of the subproof.
1070
\item $\rho$ is a $\indr$-step. Therefore $\Gamma$ has the form $? \Sigma , B^\perp(x), B(s x) $ and $A$ has the form $?C$, and the argument is similar to the case above.
1071
% yielding the following situation:
1072
%\[
1073
%\vlderivation{
1074
%	\vliin{\cut}{}{? \Sigma, B^\perp (0) , B(t), \Delta }{
1075
%		\vlin{\indr}{}{? \Sigma, B^\perp (0) , B(t) , ?C}{\vlhy{?\Sigma , B^\perp(x) , B(s x) , ?C}  }
1076
%	}{
1077
%	\vlin{\rho'}{}{!C^\perp , \Delta}{\vlhy{\vlvdots}}
1078
%}
1079
%}
1080
%\]
1081
\end{enumerate}
1082

    
1083

    
1084

    
1085
\item A cut-step is immediately preceded by a $\vlte $-step:
1086
\[
1087
\vlderivation{
1088
\vliin{\cut}{}{\Gamma,\Delta,\Sigma,A\vlte B }{
1089
\vliin{\vlte}{}{\Gamma,\Delta,A\vlte B,C }{\vlhy{\Gamma,A,C}}{\vlhy{\Delta,B}}
1090
}{\vlhy{ \Sigma , C^\bot  }}
1091
}
1092
\quad\to\quad
1093
\vlderivation{
1094
\vliin{\vlte}{}{\Gamma,\Delta,\Sigma,A\vlte B}{
1095
\vliin{\cut}{}{\Gamma,\Sigma,A}{\vlhy{\Gamma,A,C}}{\vlhy{\Sigma,C^\bot}}
1096
}{\vlhy{\Delta,B}}
1097
}
1098
\]
1099
%Notice that this commutation might increase the height of any cuts below along the right branch of the indicated cut, but decreases the height along the left branch.
1100
\item\label{CommCaseAmpersand} A cut-step is immediately preceded by a $\vlan$-step.
1101
\[
1102
\vlderivation{
1103
\vliin{\cut}{}{ \Gamma,\Delta,A\vlan B }{ \vliin{\vlan}{}{\Gamma,A\vlan B,C}{ \vlhy{\Gamma,A,C} }{\vlhy{\Gamma,B,C}}}{ \vlhy{\Delta, C^\bot} }
1104
}
1105
\quad\to\quad
1106
\vlderivation{
1107
\vliin{\vlan}{}{\Gamma,\Delta,A\vlan B }{
1108
\vliin{cut}{}{\Gamma,\Delta,A }{ \vlhy{\Gamma,A,C} }{ \vlhy{ \Delta,C^\bot } }
1109
}{
1110
\vliin{ \cut }{}{\Gamma,\Delta,B}{ \vlhy{\Gamma,B,C } }{ \vlhy{\Delta,C^\bot} }
1111
}
1112
}
1113
\]
1114
\item (No rule for cuts commuting with cuts.)
1115
%A cut-step is immediately preceded by another cut-step:
1116
\[
1117
\vlderivation{
1118
	\vliin{\cut}{}{\Gamma, \Delta, \Sigma}{
1119
		\vliin{\cut}{}{\Gamma, \Delta, B}{\vlhy{\Gamma, A}}{\vlhy{\Delta, \lnot{A}, B}}
1120
		}{\vlhy{\Sigma, \lnot{B}}}
1121
	}
1122
	\quad\to\quad
1123
\vlderivation{
1124
	\vliin{\cut}{}{\Gamma, \Delta, \Sigma}{\vlhy{\Gamma, A}}{
1125
		\vliin{\cut}{}{\Delta, \Sigma, \lnot{A}}{\vlhy{\Delta, \lnot{A}, B}}{\vlhy{\Sigma, \lnot{B}}}
1126
		}
1127
	}
1128
\]
1129
\end{enumerate}
1130

    
1131

    
1132

    
1133
\subsection{Key cases: structural steps}
1134
%[THIS SECTION MIGHT NOT BE NECESSARY]
1135
We attempt to permute cuts on exponential formulae over structural steps whose principal formula is active for the cut. 
1136

    
1137
We use the commutative case \ref{CaseCommOneStep} to assume that the topmost cut-step in a sequence has already been permuted up to its origin on the $!$-side. 
1138

    
1139
We have two cases.
1140
\begin{enumerate}
1141
\item\label{StructStepCont} The structural step preceding the cut is a weakening:
1142
\[
1143
\vlderivation{
1144
\vliin{\cut}{}{?\Gamma,\Delta}{ \vlin{!}{}{ ?\Gamma,!A }{ \vlhy{?\Gamma , A} } }{ \vlin{w}{}{ ?A^\bot }{ \vlhy{\Delta	} } }
1145
}
1146
\quad\to\quad
1147
\vlinf{w}{}{?\Gamma,\Delta}{ \Delta }
1148
\]
1149
%\item The structural step preceding the cut is a contraction:
1150
%\[
1151
%\vlderivation{
1152
%\vliin{\cut}{}{ ?\Gamma,\Delta }{
1153
% \vlin{!}{}{ ?\Gamma,!A }{ \vlhy{?\Gamma , A} }
1154
%}{ \vlin{c}{}{ ?A^\bot , \Delta }{ \vlhy{ ?A^\bot , ?A^\bot ,  \Delta} } }
1155
%}
1156
%\quad\to\quad
1157
%\vlderivation{
1158
%\vliq{c}{}{?\Gamma, \Delta}{
1159
%\vliin{\cut}{}{?\Gamma, ?\Gamma,\Delta }{
1160
% \vlin{!}{}{ ?\Gamma,!A }{ \vlhy{?\Gamma , A} }
1161
%}{
1162
%\vliin{\cut}{}{?\Gamma,?A^\bot , \Delta }{
1163
% \vlin{!}{}{ ?\Gamma,!A }{ \vlhy{?\Gamma , A} }
1164
%}{ \vlhy{?A^\bot , ?A^\bot , \Delta } }
1165
%}
1166
%}
1167
%}
1168
%\]
1169
%OR use a multicut:
1170
%\[
1171
%\vlderivation{
1172
%\vliin{\cut}{}{ ?\Gamma,\Delta }{
1173
% \vlin{!}{}{ ?\Gamma,!A }{ \vlhy{?\Gamma , A} }
1174
%}{ \vlin{c}{}{ ?A^\bot , \Delta }{ \vlhy{ ?A^\bot , ?A^\bot ,  \Delta} } }
1175
%}
1176
%\quad\to\quad
1177
%\vlderivation{
1178
%\vliin{\multicut}{}{?\Gamma,?A^\bot , \Delta }{
1179
% \vlin{!}{}{ ?\Gamma,!A }{ \vlhy{?\Gamma , A} }
1180
%}{ \vlhy{?A^\bot , ?A^\bot , \Delta } }
1181
%}
1182
%\]
1183
\item The structural step preceding a cut is a contraction:
1184
\[
1185
\vlderivation{
1186
	\vliin{\cut}{}{?\Gamma, \Sigma }{ \vlhy{?\Gamma,!A^\bot} }{
1187
		\vlin{\cntr}{}{ ?A,\Sigma }{ \vlhy{ ?A,?A,\Sigma } }
1188
	}
1189
}
1190
\quad\to\quad
1191
\vlderivation{
1192
	\vliq{\cntr}{}{ ?\Gamma,\Sigma }{
1193
		\vliin{\cut}{}{ ?\Gamma,?\Gamma,\Sigma }{ \vlhy{?\Gamma,!A^\bot } }{
1194
			\vliin{\cut}{}{ ?A,?\Gamma,\Sigma }{ \vlhy{?\Gamma,!A^\bot} }{ \vlhy{ ?A,?A,?\Delta,\Sigma } }
1195
		}
1196
	}
1197
}
1198
\]
1199
%\item The structural step preceding a cut is a parallel contraction:
1200
%\[
1201
%\vlderivation{
1202
%\vliin{\cut}{}{?\Gamma,?\Delta, \Sigma }{ \vlhy{?\Gamma,!A^\bot} }{
1203
%\vlin{}{}{ ?A,?\Delta,\Sigma }{ \vlhy{ ?A,?A,?\Delta,?\Delta,\Sigma } }
1204
%}
1205
%}
1206
%\quad\to\quad
1207
%\vlderivation{
1208
%\vlin{}{}{ ?\Gamma,?\Delta,\Sigma }{
1209
%\vliin{\cut}{}{ ?\Gamma,?\Gamma,?\Delta,?\Delta,\Sigma }{ \vlhy{?\Gamma,!A^\bot } }{
1210
%\vliin{\cut}{}{ ?A,?\Gamma,?\Delta,?\Delta,\Sigma }{ \vlhy{?\Gamma,!A^\bot} }{ \vlhy{ ?A,?A,?\Delta,?\Delta,\Sigma } }
1211
%}
1212
%}
1213
%}
1214
%\]
1215
\end{enumerate}
1216

    
1217
\subsection{Key cases: logical steps}
1218
Finally, once all cuts have been permuted maximally on both sides, we have the cases when the cut-formula is principal for a preceding logical step on both sides. We have three cases, one for every pair of connectives.
1219
\begin{enumerate}
1220
\item The cut-formula is multiplicative:
1221
\[
1222
\vlderivation{
1223
\vliin{\cut}{}{ \Gamma,\Delta,\Sigma }{
1224
\vliin{\vlte}{}{ \Gamma,\Delta,A\vlte B }{ \vlhy{\Gamma,A} }{ \vlhy{\Delta,B} }
1225
}{ \vlin{\vlpa}{}{ \Sigma, A^\bot \vlpa B^\bot }{ \vlhy{\Sigma , A^\bot , B^\bot} } }
1226
}
1227
\quad\to\quad
1228
\vlderivation{
1229
\vliin{\cut}{}{ \Gamma,\Delta,\Sigma }{ \vlhy{\Gamma,A} }{
1230
\vliin{\cut}{}{ \Delta,\Sigma,A^\bot }{ \vlhy{\Delta,B} }{ \vlhy{\Sigma , A^\bot,B^\bot } }
1231
}
1232
}
1233
\]
1234
\item The cut-formula is additive,
1235
\[
1236
\vlderivation{
1237
\vliin{\cut}{}{ \Gamma,\Delta }{ 
1238
\vliin{\vlan}{}{ \Gamma,A\vlan B }{ \vlhy{\Gamma,A} }{ \vlhy{\Gamma,B} }
1239
 }{ \vlin{\vlor}{}{ \Delta,A^\bot\vlor B^\bot }{ \vlhy{\Delta, A^\bot } } }
1240
}
1241
\quad\to\quad
1242
\vliinf{\cut}{}{ \Gamma,\Delta }{ \Gamma,A }{ \Delta,A^\bot }
1243
\]
1244
where the case for the other $\vlor$-rule is symmetric.
1245
\item The cut-formula is exponential.
1246
\[
1247
\vlderivation{
1248
\vliin{\cut}{}{ ?\Gamma,\Delta }{
1249
 \vlin{!}{}{ ?\Gamma,!A }{ \vlhy{?\Gamma , A} }
1250
}{
1251
\vlin{?}{}{ \Delta,?A^\bot }{ \vlhy{\Delta, A^\bot } }
1252
}
1253
}
1254
\quad\to\quad
1255
\vliinf{\cut}{}{ ?\Gamma,\Delta }{ ?\Gamma,A }{ \Delta,A^\bot }
1256
\]
1257
\item The cut-formula is quantified.
1258
\[
1259
\vlderivation{
1260
	\vliin{\cut}{}{\Gamma, \Delta}{
1261
		\vlin{\forall}{}{\Gamma, \forall x. A(x)}{\vltr{\pi(a)}{\Gamma, A(a)}{\vlhy{\quad}}{\vlhy{}}{\vlhy{\quad}}}
1262
		}{
1263
		\vlin{\exists}{}{\Delta, \exists x . \lnot{A}(x)}{\vlhy{\Delta, \lnot{A}(t)}}
1264
		}
1265
	}
1266
	\quad \to \quad
1267
	\vlderivation{
1268
		\vliin{\cut}{}{\Gamma, \Delta}{
1269
			\vltr{\pi(t)}{\Gamma, A(t)}{\vlhy{\quad}}{\vlhy{}}{\vlhy{\quad}}
1270
			}{\vlhy{\Delta, \lnot{A}(t)}}
1271
		}
1272
\]
1273
\end{enumerate}
1274

    
1275

    
1276
\end{document}