Statistiques
| Révision :

root / CSL17 / tech-report / completeness.tex @ 260

Historique | Voir | Annoter | Télécharger (13,94 ko)

1
\section{Completeness}\label{sect:completeness}
2
We now turn to proving the converse result to the last section, that our theories $\arith^i$ are strong enough to represent any $\fphi i $ function.
3
The main result of this section is the following:
4

    
5
\begin{theorem}
6
	\label{thm:completeness}
7
	For every $\mubci{i-1}$ program $f(\vec u ; \vec x)$ (which is in $\fphi i$), there is a $\Sigma^{\safe}_i$ formula $A_f(\vec u, \vec x)$ such that $\arith^i$ proves $\forall^{\normal} \vec u, \forall^{\safe} \vec x, \exists^{\safe} ! y. A_f(\vec u , \vec x , y )$ and $\Nat \models \forall \vec u , \vec x. A_f(\vec u , \vec x , f(\vec u ; \vec x))$.
8
\end{theorem}
9
%\begin{proof}[Proof sketch]
10
% The proof proceeds by induction on the construction of $\mubci{i-1}$ program $f(\vec u ; \vec x)$ to construct a suitable formula $A_f(\vec u, \vec x)$ .  The case of initial functions is easy, by using the formulas we gave in Sect. \ref{sect:graphsbasicfunctions}. The case of safe composition is also simple, and makes use of the $\rais$ rule and simply combines previously defined graphs by \emph{modus ponens} (or, equivalently, $\cut$) and logical steps. 
11
% Naturally, the interesting cases are predicative recursion and predicative minimisation. 
12
% 
13
% For predicative recursion, the basic idea is to follow the classical simulation of primitive recursion in arithmetic, adapted to recursion on notation, by encoding the sequence of recursive calls as an integer $w$. 
14
% The main technical difficulty is the representation of (de)coding functions $\beta (k, x)$ (``the $k$th element of the sequence $x$'') and $\langle x,y \rangle$ (``the pair $(x,y)$'').
15
% For this we represent instead the length-bounded variants of these functions given towards the end of Sect.~\ref{sect:prelims}, relying on the bounded minimisation and polychecking results, Lemmas~\ref{lem:bounded-minimisation} and \ref{lem:polychecking}, to find appropriate length bounds.
16
%%  which is sorted in a suitable way so that the formula $A_f$  is in the same class $\Sigma^{\safe}_i$ as $A_g$,  $A_{h_0}$ and $A_{h_1}$.  This can be obtained by defining  the predicate $\beta (k, w, y)$ with $k$ in $\normal$ and $w$, $y$ in $\safe$.
17
%
18
% 
19
% For predicative minimisation, assume $f$ is defined as  $\succ 1 \mu x .( g(\vec u ; \vec x , x) =_2 0)$ (or $0$ if no such $x$ exists).
20
%  By induction hypothesis we have a $\Sigma^{\safe}_{i-1}$ formula $A_g (\vec u , \vec x , x , y)$  satisfying the property. We then define $A_f(\vec u ; \vec x , z)$ as the following $\Sigma^{\safe}_{i}$ formula:
21
%\[
22
%\begin{array}{rl}
23
%&\left(
24
%z=0 \  \cand \ \forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)
25
%\right) \\
26
%\cor & \left(
27
%\begin{array}{ll}
28
%z\neq 0 
29
%& \cand\   \forall y^\safe . (A_g (\vec u , \vec x , p z , y) \cimp y=_2 0 ) \\
30
%& \cand\ \forall x^\safe < p z . \forall y^\safe . (A_g (\vec u , \vec x , x , y) \cimp y=_2 1) 
31
%\end{array}
32
%\right)
33
%\end{array}
34
%\]
35
%As for the analogous bounded arithmetic theory $S^i_2$ (\cite{Buss86book}, Thm 20, p. 58),  $\arith^i$ can prove a \emph{minimisation} principle for $\Sigma^\safe_{i-1}$ formulas, allowing us to extract the \emph{least} witness of a safe existential, which we apply to $\exists x^\safe , y^\safe .  (A_g (\vec u ,\vec x , x , y) \cand y=_2 0)$. From here we are able to readily prove the totality of $A_f(\vec u ; \vec x , z)$, notably relying crucially on classical reasoning.
36
%\end{proof}
37

    
38
\begin{proof}
39
	We proceed by structural induction on a $\mubc^{i-1} $ program, dealing with each case in the proceeding paragraphs.
40
	
41
	The property is easily verified for the class of initial functions of  $\mubci{i-1}$: constant, projections, (binary) successors, predecessor, conditional, as already shown in Sect. \ref{sect:graphsbasicfunctions}. Now let us examine the three constructions: predicative minimisation, predicative (safe) recursion and composition. 
42
	\paragraph*{Predicative minimisation}
43
	Suppose $f(\vec u ; \vec x)$ is defined by predicative minimisation from $g$ (we then denote $f$ as as $\mu x^{+1} . g(\vec u ; \vec x , x) =_2 0$). 
44
	By definition $g$ is in $\mubci{i-2}$, and so by the inductive hypothesis there is a $\Sigma^{\safe}_{i-1}$ formula $A_g (\vec u , \vec x , x , y)$ computing the graph of $g$ such that,
45
	\[
46
	\arith^i \proves \forall \vec u^\normal . \forall \vec x^\safe , x^\safe . \exists ! y^\safe . A_g(\vec u , \vec x , x , y)
47
	\]
48
	Let us define $A_f(\vec u ; \vec x , z)$ as:
49
	\[
50
	\begin{array}{rl}
51
	&\left(
52
	z=0 \  \cand \ \forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)
53
	\right) \\
54
	\cor & \left(
55
	\begin{array}{ll}
56
	%z\neq 0
57
	z=\succ{1} p z 
58
	& \cand\   \forall y^\safe . (A_g (\vec u , \vec x , p z , y) \cimp y=_2 0 ) \\
59
	& \cand\ \forall x^\safe < p z . \forall y^\safe . (A_g (\vec u , \vec x , x , y) \cimp y=_2 1) 
60
	\end{array}
61
	\right)
62
	\end{array}
63
	\]
64
	Notice that $A_f$ is $\Pi^{\safe}_{i-1}$, since $A_g$ is $\Sigma^{\safe}_{i-1}$ and occurs only in negative context above, with additional safe universal quantifiers occurring in positive context.
65
	In particular this means $A_f$ is $\Sigma^{\safe}_i$.
66
	
67
	Now, to prove totality of $A_f$, we rely on $\Sigma^\safe_{i-1}$-minimisation, which is a consequence of $\cpind{\Sigma^\safe_i}$:
68
	
69
	\begin{lemma}
70
		[Minimisation]
71
		$\arith^i \proves \cmin{\Sigma^\safe_{i-1}}$.	
72
	\end{lemma}
73
	% see Thm 20 p. 58 in Buss' book.
74
	%\begin{proof}
75
	%\end{proof}
76
	\begin{proof}
77
		This Lemma is proved by using the same method as for the proof of the analogous result in the bounded arithmetic $S_2^{i}$ (see \cite{Buss86book}, Thm 20, p. 58).
78
		
79
		Let $A(x)$ be a  $\Sigma^\safe_{i-1}$ formula, with $x$ in $\safe$. We define the formula $B(a,b,c)$ as:
80
		$$ \forall x^{\safe}. (x < |a| \moins b \cimp \zerobit(x,c)) \cand \forall y^{\safe}<c. \neg A(y) \cand \exists y^{\safe} < 2^{|a|\moins b}.A(c+y)$$
81
		where $a$ is in $\normal$, $b$ in $\normal$ and $c$ in $\safe$.  $B(a,b,c)$ is in $\Sigma^\safe_{i}$.
82
		
83
		The intuitive idea of the proof is to observe that, if $A(a)$ is true for $a\neq 0$, then  $\exists x^{\safe}\leq a. B(a,b,x)$ holds for $b=0$, and to try to prove it for $b=|a|$, by using a length induction on $b$.
84
		
85
		First, one can prove:
86
		$$ (A(a) \cand a \neq 0) \cimp B(a,0,0).$$ 
87
		And thus:
88
		$$ (A(a) \cand a \neq 0) \cimp \exists x^{\safe}\leq a .B(a,0,x).$$ 
89
		We then can check that the two following statements are provable:
90
		$$
91
		\begin{array}{rcl}
92
		(b<|a| \cand B(a,b,c)\cand \exists y^{\safe}<2^{|a| \moins (b+1)}.A(c+y)) &\cimp& B(a,\succ{} b,c)\\
93
		(b<|a| \cand B(a,b,c)\cand \forall y^{\safe}<2^{|a| \moins(b+1)}.  A(c+y)) &\cimp & B(a,\succ{} b, c+2^{|a| \moins (b+1)})
94
		\end{array}
95
		$$
96
		Moreover we have: $A(a) \cand B(a,b,c) \cimp c\leq a$.
97
		From these three statements we deduce:
98
		$$(A(a) \cand a \neq 0 \cand b<|a| \cand \exists x^{\safe} \leq a. B(a,b,x)) \cimp \exists x^{\safe } \leq a.B(a,\succ{} b,x).$$
99
		Note that here we have used the fact that we are in classical logic.
100
		
101
		The formula $\exists x\leq a. B(a,b,c)$ is in $\Sigma^{\safe}_{i}$, so by $\Sigma^{\safe}_{i}$-LIND on the formula $\exists x\leq a. B(a,b,c)$, with the variable $b$ which is in $\normal$,  we obtain:
102
		$$(A(a) \cand a \neq 0 ) \cimp \exists x^{\safe } \leq a.B(a,|a|,x).$$
103
		But $B(a,|a|,x)$ implies $(\forall y^{\safe}<x. \neg A(y))\cand A(x)$, so we have proven:
104
		$$(A(a) \cand a \neq 0 ) \cimp (\exists x^{\safe } \leq a. (\forall y^{\safe}<x. \neg A(y))\cand A(x))$$
105
		which is the $\Sigma_{i-1}^{\safe}$ axiom for $A$.
106
	\end{proof}
107
	
108
	Now, working in $\arith^i$, let $\vec u \in \normal , \vec x \in \safe$ and let us prove:
109
	\[
110
	\exists !z^\safe  . A_f(\vec u ; \vec x , z)
111
	\]
112
	Suppose that $\exists x^\safe , y^\safe .  (A_g (\vec u ,\vec x , x , y) \cand y=_2 0)$.
113
	We can apply minimisation due to the lemma above to find the least $x\in \safe$ such that $\exists y^\safe .  (A_g (\vec u ,\vec x , x , y) \cand y=_2 0)$, and we set $z = \succ 1 x$. So $x= p z$. 
114
	%\todo{verify $z\neq 0$ disjunct.} 
115
	%Then $z \neq 0$ holds. 
116
	Then $z=\succ{1} p z$ holds.
117
	Moreover we had  $\exists ! y^\safe . A_g(\vec u , \vec x , x , y)$. So we deduce that
118
	$\forall y^\safe . (A_g (\vec u , \vec x , p z , y) \cimp y=_2 0 ) $. Finally, as $p z$ is the least element such that
119
	$\exists y^\safe .  (A_g (\vec u ,\vec x , p z , y) \cand y=_2 0)$, we deduce 
120
	$\ \forall x^\safe < p z . \forall y^\safe . (A_g (\vec u , \vec x , x , y) \cimp y=_2 1) $. We conclude that the second member of the disjunction
121
	$A_f(\vec u ; \vec x , z)$ is proven.  
122
	
123
	Otherwise, we have that $\forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)$, so we can set $z=0$ and the first member of the disjunction $A_f(\vec u ; \vec x , z)$ is proven.  
124
	
125
	So we have proven $\exists z^\safe  . A_f(\vec u ; \vec x , z)$, and unicity can be easily verified.
126
	
127
	\paragraph*{Predicative recursion on notation}
128
	
129
	\anupam{Assume access to the following predicates (makes completeness easier, soundness will be okay):
130
		\begin{itemize}
131
			%	\item $\pair x y z $ . ``$z$ is the sequence that appends $y$ to the sequence $x$''
132
			\item $\pair x y z$. ``$z$ is the sequence that prepends $x$ to the sequence $y$''
133
			\item $\beta (i; x ,y)$. ``The $i$th element of the sequence $x$ is $y$.''
134
		\end{itemize}
135
	}
136
	\patrick{I also assume access to the following predicates:
137
		\begin{itemize}
138
			%   \item $\zerobit (u,k)$ (resp. $\onebit(u,k)$). " The $k$th bit of $u$ is 0 (resp. 1)"
139
			%   \item $\pref(k,x,y)$. "The prefix of $x$ (as a binary string) of length $k$ is $y$" 
140
			\item $\addtosequence(w,y,w')$. "$w'$ represents the sequence obtained by adding $y$ at the end of the sequence represented by $w$". Here we are referring to sequences which can be decoded with predicate $\beta$.
141
		\end{itemize}}
142
		In the following we will use the predicates $\zerobit (u,k)$, $\onebit(u,k)$, $\pref(k,x,y)$ which have been defined in Sect. \ref{sect:graphsbasicfunctions}.
143
		
144
		Suppose that $f$ is defined by predicative recursion on notation:
145
		\[
146
		\begin{array}{rcl}
147
		f(0 , \vec u ; \vec x) & \dfn & g(\vec u ; \vec x) \\
148
		f(\succ i u, \vec u ; \vec x) & \dfn & h_i( u , \vec u ; \vec x , f(u , \vec u ; \vec x))
149
		\end{array}
150
		\]
151
		
152
		\anupam{using $\beta(i,x,y)$ predicate for sequences: ``$i$th element of $x$ is $y$''. Provably total in $\arith^1$.}
153
		
154
		Suppose we have $\Sigma^\safe_i$ formulae $A_g (\vec u ; \vec x,y)$ and $A_{h_i} (u , \vec u ; \vec x , y , z)$ computing the graphs of $g$ and $h_i$ respectively, provably total in $\arith^i$.
155
		We define $A_f (u ,\vec u ; \vec x , y)$ as,
156
		\[
157
		\exists w^\safe . \left(
158
		\begin{array}{ll}
159
		& 
160
		%Seq(z) \cand 
161
		\exists^{\safe} y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w , y_0) ) \cand \beta(|u|, w,y ) \\
162
		%\cand & \forall k < |u| . \exists y_k , y_{k+1} . ( \beta (k, w, y_k) \cand \beta (k+1 ,w, y_{k+1})  \cand A_{h_i} (u , \vec u ; \vec x , y_k , y_{k+1}) )\\
163
		\cand & \forall^{\normal}  k < |u| . \exists^{\safe} y_k , y_{k+1} . ( \beta (k, w, y_k) \cand \beta (k+1 ,w, y_{k+1})  \cand B (u , \vec u ; \vec x , y_k , y_{k+1}) )
164
		\end{array}
165
		\right)
166
		\]
167
		where 
168
		\[
169
		B (u , \vec u ; \vec x , y_k , y_{k+1}) = \left(
170
		\begin{array}{ll}
171
		& \zerobit(u,k+1) \cimp  \exists v .(\pref(k,u,v)  \cand A_{h_0}(v,\vec u ; \vec x, y_k, y_{k+1}) )\\
172
		\cand &  \onebit(u,k+1) \cimp  \exists v .(\pref(k,u,v)  \cand A_{h_1}(v,\vec u ; \vec x, y_k, y_{k+1}) )
173
		\end{array}
174
		\right)
175
		\]
176
		
177
		%which is $\Sigma^\safe_i$ by inspection, and indeed defines the graph of $f$.
178
		
179
		To show totality, let $\vec u \in \normal, \vec x \in \safe$ and proceed by induction on $u \in \normal$.
180
		The base case, when $u=0$, is immediate from the totality of $A_g$, so for the inductive case we need to show:
181
		\[
182
		\exists y^\safe . A_f (u , \vec u ; \vec x , y) 
183
		\quad \seqar \quad
184
		\exists z^\safe . A_f (s_i u, \vec u ; \vec x , z)
185
		\]
186
		
187
		So let us assume $\exists y^\safe . A_f (u , \vec u ; \vec x , y) $. Then there exists $w$ such that $\safe(w)$ and 
188
		$A_f (u , \vec u ; \vec x , w) $.
189
		
190
		We know that there exists a $z$ such that $A_{h_i}(u,\vec u ; \vec x, y, z)$. Let then $w'$ be such that
191
		$\addtosequence(w,z,w')$. Observe also that we have $\pref(|u|,s_i u,u)$
192
		
193
		So we have, for $k=|u|$:
194
		
195
		$$  \beta (k, w', y) \cand \beta (k+1 ,w', z)  \cand B (u , \vec u ; \vec x , y , z).$$
196
		
197
		and we can conclude that
198
		\[
199
		\exists w'^\safe . \left(
200
		\begin{array}{ll}
201
		& 
202
		%Seq(z) \cand 
203
		\exists y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w' , y_0) ) \cand \beta(|u|+1, w',z ) \\
204
		\cand & \forall k < |u|+1 . \exists y_k , y_{k+1} . ( \beta (k, w, y_k) \cand \beta (k+1 ,w, y_{k+1})  \cand B (u , \vec u ; \vec x , y_k , y_{k+1}) )
205
		\end{array}
206
		\right)
207
		\]
208
		So $\exists z^{\safe} . A_f (s_i u, \vec u ; \vec x , z)$ has been proven. So by induction we have proven $\forall^{\normal} u,  
209
		\forall^{\normal} \vec u, \exists^{\safe} y. A_f (u ,\vec u ; \vec x , y)$. Moreover one can also check the unicity of $y$, and so we have proved the required formula. 
210
		
211
		\anupam{here need to `add' element to the computation sequence. Need to do this earlier in the paper.}
212
		
213
		\anupam{for inductive cases, need $u\neq 0$ for $\succ 0$ case.}
214
		
215
		\paragraph*{Safe composition}
216
		Now suppose that $f$ is defined by safe composition:
217
		\[
218
		f(\vec u ; \vec x) \quad \dfn \quad g( \vec h(\vec u;) ; \vec h' (\vec u ; \vec x) )
219
		\]
220
		
221
		By the inductive hypothesis, let us suppose that we have $\Sigma^\safe_i $ definitions $A_g , A_{h_i} , A_{h_j'} $ of the graphs of $g , h_i , h_j'$ respectively, which are provably total etc.
222
		In particular, by Raising, we have that $\forall \vec u^\normal . \exists v^\normal . A_{h_i} (\vec u , v)$.
223
		
224
		We define $A_f (\vec u , \vec x , z)$ defining the graph of $f$ as follows:
225
		\[
226
		\exists \vec v^\normal . \exists \vec y^\safe .  
227
		\left(  
228
		\bigwedge\limits_i A_{h_i} (\vec u , v_i)
229
		\wedge
230
		\bigwedge\limits_j A_{h_j'} (\vec u ; \vec x , y_j)
231
		\wedge
232
		A_g ( \vec v , \vec y , z ) 
233
		\right)
234
		\]
235
		The provable totality of $A_f$ follows from simple first-order reasoning, mostly cuts and basic quantifier manipulations.
236
		
237
		\todo{elaborate}
238
		
239
		The proof of Thm \ref{thm:completeness} is thus completed.
240
\end{proof}
241

    
242

    
243

    
244

    
245

    
246

    
247

    
248

    
249

    
250

    
251

    
252

    
253

    
254

    
255

    
256

    
257

    
258

    
259

    
260

    
261