Statistiques
| Révision :

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

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

1 251 adas
\section{Completeness}\label{sect:completeness}
2 251 adas
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 251 adas
The main result of this section is the following:
4 251 adas
5 251 adas
\begin{theorem}
6 251 adas
	\label{thm:completeness}
7 251 adas
	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 251 adas
\end{theorem}
9 257 adas
%\begin{proof}[Proof sketch]
10 257 adas
% 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 257 adas
% Naturally, the interesting cases are predicative recursion and predicative minimisation.
12 257 adas
%
13 257 adas
% 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 257 adas
% 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 257 adas
% 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 257 adas
%%  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 257 adas
%
18 257 adas
%
19 257 adas
% 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 257 adas
%  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 257 adas
%\[
22 257 adas
%\begin{array}{rl}
23 257 adas
%&\left(
24 257 adas
%z=0 \  \cand \ \forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)
25 257 adas
%\right) \\
26 257 adas
%\cor & \left(
27 257 adas
%\begin{array}{ll}
28 257 adas
%z\neq 0
29 257 adas
%& \cand\   \forall y^\safe . (A_g (\vec u , \vec x , p z , y) \cimp y=_2 0 ) \\
30 257 adas
%& \cand\ \forall x^\safe < p z . \forall y^\safe . (A_g (\vec u , \vec x , x , y) \cimp y=_2 1)
31 257 adas
%\end{array}
32 257 adas
%\right)
33 257 adas
%\end{array}
34 257 adas
%\]
35 257 adas
%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 257 adas
%\end{proof}
37 251 adas
38 257 adas
\begin{proof}
39 257 adas
	We proceed by structural induction on a $\mubc^{i-1} $ program, dealing with each case in the proceeding paragraphs.
40 257 adas
41 257 adas
	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 257 adas
	\paragraph*{Predicative minimisation}
43 257 adas
	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 257 adas
	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 257 adas
	\[
46 257 adas
	\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 257 adas
	\]
48 257 adas
	Let us define $A_f(\vec u ; \vec x , z)$ as:
49 257 adas
	\[
50 257 adas
	\begin{array}{rl}
51 257 adas
	&\left(
52 257 adas
	z=0 \  \cand \ \forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)
53 257 adas
	\right) \\
54 257 adas
	\cor & \left(
55 257 adas
	\begin{array}{ll}
56 260 pbaillot
	%z\neq 0
57 260 pbaillot
	z=\succ{1} p z
58 257 adas
	& \cand\   \forall y^\safe . (A_g (\vec u , \vec x , p z , y) \cimp y=_2 0 ) \\
59 257 adas
	& \cand\ \forall x^\safe < p z . \forall y^\safe . (A_g (\vec u , \vec x , x , y) \cimp y=_2 1)
60 257 adas
	\end{array}
61 257 adas
	\right)
62 257 adas
	\end{array}
63 257 adas
	\]
64 257 adas
	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 257 adas
	In particular this means $A_f$ is $\Sigma^{\safe}_i$.
66 257 adas
67 257 adas
	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 257 adas
69 257 adas
	\begin{lemma}
70 257 adas
		[Minimisation]
71 257 adas
		$\arith^i \proves \cmin{\Sigma^\safe_{i-1}}$.
72 257 adas
	\end{lemma}
73 257 adas
	% see Thm 20 p. 58 in Buss' book.
74 257 adas
	%\begin{proof}
75 257 adas
	%\end{proof}
76 257 adas
	\begin{proof}
77 257 adas
		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 257 adas
79 257 adas
		Let $A(x)$ be a  $\Sigma^\safe_{i-1}$ formula, with $x$ in $\safe$. We define the formula $B(a,b,c)$ as:
80 257 adas
		$$ \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 257 adas
		where $a$ is in $\normal$, $b$ in $\normal$ and $c$ in $\safe$.  $B(a,b,c)$ is in $\Sigma^\safe_{i}$.
82 257 adas
83 257 adas
		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 257 adas
85 257 adas
		First, one can prove:
86 257 adas
		$$ (A(a) \cand a \neq 0) \cimp B(a,0,0).$$
87 257 adas
		And thus:
88 257 adas
		$$ (A(a) \cand a \neq 0) \cimp \exists x^{\safe}\leq a .B(a,0,x).$$
89 257 adas
		We then can check that the two following statements are provable:
90 257 adas
		$$
91 257 adas
		\begin{array}{rcl}
92 257 adas
		(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 257 adas
		(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 257 adas
		\end{array}
95 257 adas
		$$
96 257 adas
		Moreover we have: $A(a) \cand B(a,b,c) \cimp c\leq a$.
97 257 adas
		From these three statements we deduce:
98 257 adas
		$$(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 257 adas
		Note that here we have used the fact that we are in classical logic.
100 257 adas
101 257 adas
		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 257 adas
		$$(A(a) \cand a \neq 0 ) \cimp \exists x^{\safe } \leq a.B(a,|a|,x).$$
103 257 adas
		But $B(a,|a|,x)$ implies $(\forall y^{\safe}<x. \neg A(y))\cand A(x)$, so we have proven:
104 257 adas
		$$(A(a) \cand a \neq 0 ) \cimp (\exists x^{\safe } \leq a. (\forall y^{\safe}<x. \neg A(y))\cand A(x))$$
105 257 adas
		which is the $\Sigma_{i-1}^{\safe}$ axiom for $A$.
106 257 adas
	\end{proof}
107 257 adas
108 257 adas
	Now, working in $\arith^i$, let $\vec u \in \normal , \vec x \in \safe$ and let us prove:
109 257 adas
	\[
110 257 adas
	\exists !z^\safe  . A_f(\vec u ; \vec x , z)
111 257 adas
	\]
112 257 adas
	Suppose that $\exists x^\safe , y^\safe .  (A_g (\vec u ,\vec x , x , y) \cand y=_2 0)$.
113 257 adas
	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 257 adas
	%\todo{verify $z\neq 0$ disjunct.}
115 260 pbaillot
	%Then $z \neq 0$ holds.
116 260 pbaillot
	Then $z=\succ{1} p z$ holds.
117 260 pbaillot
	Moreover we had  $\exists ! y^\safe . A_g(\vec u , \vec x , x , y)$. So we deduce that
118 257 adas
	$\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 257 adas
	$\exists y^\safe .  (A_g (\vec u ,\vec x , p z , y) \cand y=_2 0)$, we deduce
120 257 adas
	$\ \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 257 adas
	$A_f(\vec u ; \vec x , z)$ is proven.
122 257 adas
123 257 adas
	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 257 adas
125 257 adas
	So we have proven $\exists z^\safe  . A_f(\vec u ; \vec x , z)$, and unicity can be easily verified.
126 257 adas
127 257 adas
	\paragraph*{Predicative recursion on notation}
128 257 adas
129 257 adas
	\anupam{Assume access to the following predicates (makes completeness easier, soundness will be okay):
130 257 adas
		\begin{itemize}
131 257 adas
			%	\item $\pair x y z $ . ``$z$ is the sequence that appends $y$ to the sequence $x$''
132 257 adas
			\item $\pair x y z$. ``$z$ is the sequence that prepends $x$ to the sequence $y$''
133 257 adas
			\item $\beta (i; x ,y)$. ``The $i$th element of the sequence $x$ is $y$.''
134 257 adas
		\end{itemize}
135 257 adas
	}
136 257 adas
	\patrick{I also assume access to the following predicates:
137 257 adas
		\begin{itemize}
138 257 adas
			%   \item $\zerobit (u,k)$ (resp. $\onebit(u,k)$). " The $k$th bit of $u$ is 0 (resp. 1)"
139 257 adas
			%   \item $\pref(k,x,y)$. "The prefix of $x$ (as a binary string) of length $k$ is $y$"
140 257 adas
			\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 257 adas
		\end{itemize}}
142 257 adas
		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 257 adas
144 257 adas
		Suppose that $f$ is defined by predicative recursion on notation:
145 257 adas
		\[
146 257 adas
		\begin{array}{rcl}
147 257 adas
		f(0 , \vec u ; \vec x) & \dfn & g(\vec u ; \vec x) \\
148 257 adas
		f(\succ i u, \vec u ; \vec x) & \dfn & h_i( u , \vec u ; \vec x , f(u , \vec u ; \vec x))
149 257 adas
		\end{array}
150 257 adas
		\]
151 257 adas
152 257 adas
		\anupam{using $\beta(i,x,y)$ predicate for sequences: ``$i$th element of $x$ is $y$''. Provably total in $\arith^1$.}
153 257 adas
154 257 adas
		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 257 adas
		We define $A_f (u ,\vec u ; \vec x , y)$ as,
156 257 adas
		\[
157 257 adas
		\exists w^\safe . \left(
158 257 adas
		\begin{array}{ll}
159 257 adas
		&
160 257 adas
		%Seq(z) \cand
161 257 adas
		\exists^{\safe} y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w , y_0) ) \cand \beta(|u|, w,y ) \\
162 257 adas
		%\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 257 adas
		\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 257 adas
		\end{array}
165 257 adas
		\right)
166 257 adas
		\]
167 257 adas
		where
168 257 adas
		\[
169 257 adas
		B (u , \vec u ; \vec x , y_k , y_{k+1}) = \left(
170 257 adas
		\begin{array}{ll}
171 257 adas
		& \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 257 adas
		\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 257 adas
		\end{array}
174 257 adas
		\right)
175 257 adas
		\]
176 257 adas
177 257 adas
		%which is $\Sigma^\safe_i$ by inspection, and indeed defines the graph of $f$.
178 257 adas
179 257 adas
		To show totality, let $\vec u \in \normal, \vec x \in \safe$ and proceed by induction on $u \in \normal$.
180 257 adas
		The base case, when $u=0$, is immediate from the totality of $A_g$, so for the inductive case we need to show:
181 257 adas
		\[
182 257 adas
		\exists y^\safe . A_f (u , \vec u ; \vec x , y)
183 257 adas
		\quad \seqar \quad
184 257 adas
		\exists z^\safe . A_f (s_i u, \vec u ; \vec x , z)
185 257 adas
		\]
186 257 adas
187 257 adas
		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 257 adas
		$A_f (u , \vec u ; \vec x , w) $.
189 257 adas
190 257 adas
		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 257 adas
		$\addtosequence(w,z,w')$. Observe also that we have $\pref(|u|,s_i u,u)$
192 257 adas
193 257 adas
		So we have, for $k=|u|$:
194 257 adas
195 257 adas
		$$  \beta (k, w', y) \cand \beta (k+1 ,w', z)  \cand B (u , \vec u ; \vec x , y , z).$$
196 257 adas
197 257 adas
		and we can conclude that
198 257 adas
		\[
199 257 adas
		\exists w'^\safe . \left(
200 257 adas
		\begin{array}{ll}
201 257 adas
		&
202 257 adas
		%Seq(z) \cand
203 257 adas
		\exists y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w' , y_0) ) \cand \beta(|u|+1, w',z ) \\
204 257 adas
		\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 257 adas
		\end{array}
206 257 adas
		\right)
207 257 adas
		\]
208 257 adas
		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 257 adas
		\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 257 adas
211 257 adas
		\anupam{here need to `add' element to the computation sequence. Need to do this earlier in the paper.}
212 257 adas
213 257 adas
		\anupam{for inductive cases, need $u\neq 0$ for $\succ 0$ case.}
214 257 adas
215 257 adas
		\paragraph*{Safe composition}
216 257 adas
		Now suppose that $f$ is defined by safe composition:
217 257 adas
		\[
218 257 adas
		f(\vec u ; \vec x) \quad \dfn \quad g( \vec h(\vec u;) ; \vec h' (\vec u ; \vec x) )
219 257 adas
		\]
220 257 adas
221 257 adas
		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 257 adas
		In particular, by Raising, we have that $\forall \vec u^\normal . \exists v^\normal . A_{h_i} (\vec u , v)$.
223 257 adas
224 257 adas
		We define $A_f (\vec u , \vec x , z)$ defining the graph of $f$ as follows:
225 257 adas
		\[
226 257 adas
		\exists \vec v^\normal . \exists \vec y^\safe .
227 257 adas
		\left(
228 257 adas
		\bigwedge\limits_i A_{h_i} (\vec u , v_i)
229 257 adas
		\wedge
230 257 adas
		\bigwedge\limits_j A_{h_j'} (\vec u ; \vec x , y_j)
231 257 adas
		\wedge
232 257 adas
		A_g ( \vec v , \vec y , z )
233 257 adas
		\right)
234 257 adas
		\]
235 257 adas
		The provable totality of $A_f$ follows from simple first-order reasoning, mostly cuts and basic quantifier manipulations.
236 257 adas
237 257 adas
		\todo{elaborate}
238 257 adas
239 257 adas
		The proof of Thm \ref{thm:completeness} is thus completed.
240 251 adas
\end{proof}
241 251 adas
242 251 adas
243 251 adas
244 251 adas
245 251 adas
246 251 adas
247 251 adas
248 251 adas
249 251 adas
250 251 adas
251 251 adas
252 251 adas
253 251 adas
254 251 adas
255 251 adas
256 251 adas
257 251 adas
258 251 adas
259 251 adas
260 251 adas