Statistiques
| Révision :

root / CSL17 / completeness.tex @ 197

Historique | Voir | Annoter | Télécharger (8,09 ko)

1 166 adas
\section{Completeness}
2 166 adas
3 166 adas
The main result of this section is the following:
4 166 adas
5 166 adas
\begin{theorem}
6 166 adas
	\label{thm:completeness}
7 197 pbaillot
	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(\vec u , \vec x , f(\vec u ; \vec x))$.
8 168 adas
\end{theorem}
9 168 adas
10 168 adas
The rest of this section is devoted to a proof of this theorem.
11 197 pbaillot
We proceed by structural induction on a $\mubc^{i-1} $ program, dealing with each case in the proceeding paragraphs.
12 168 adas
13 168 adas
\paragraph*{Predicative minimisation}
14 168 adas
Suppose $f(\vec u ; \vec x)$ is defined as $\mu x^{+1} . g(\vec u ; \vec x , x) =_2 0$.
15 168 adas
By definition $g$ is in $\mubci{i-2}$, and so by the inductive hypothesis there is a $\Sigma_{i-1}$ formula $A_g (\vec u , \vec x , x , y)$ computing the graph of $g$ such that,
16 168 adas
\[
17 168 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)
18 168 adas
\]
19 168 adas
Let us define $A_f(\vec u ; \vec x , z)$ as:
20 168 adas
\[
21 168 adas
\begin{array}{rl}
22 168 adas
&\left(
23 168 adas
z=0 \  \cand \ \forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)
24 168 adas
\right) \\
25 168 adas
\cor & \left(
26 168 adas
\begin{array}{ll}
27 168 adas
z\neq 0
28 168 adas
& \cand\   \forall y^\safe . (A_g (\vec u , \vec x , p z , y) \cimp y=_2 0 ) \\
29 168 adas
& \cand\ \forall x^\safe < p z . \forall y^\safe . (A_g (\vec u , \vec x , x , y) \cimp y=_2 1)
30 168 adas
\end{array}
31 168 adas
\right)
32 168 adas
\end{array}
33 168 adas
\]
34 168 adas
Notice that $A_f$ is $\Pi_{i-1}$, since $A_g$ is $\Sigma_{i-1}$ and occurs only in negative context above, with additional safe universal quantifiers occurring in positive context.
35 168 adas
In particular this means $A_f$ is $\Sigma_i$.
36 168 adas
37 168 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}$:
38 168 adas
39 168 adas
\begin{lemma}
40 168 adas
[Minimisation]
41 168 adas
$\arith^i \proves \cmin{\Sigma^\safe_{i-1}}$.
42 168 adas
\end{lemma}
43 174 pbaillot
% see Thm 20 p. 58 in Buss' book.
44 168 adas
\begin{proof}
45 168 adas
\todo{}
46 168 adas
\end{proof}
47 168 adas
48 168 adas
Now, working in $\arith^i$, let $\vec u \in \normal , \vec x \in \safe$ and let us prove:
49 168 adas
\[
50 168 adas
\exists !z^\safe  . A_f(\vec u ; \vec x , z)
51 168 adas
\]
52 168 adas
Suppose that $\exists x^\safe , y^\safe .  (A_g (\vec u ,\vec x , x , y) \cand y=_2 0)$.
53 170 pbaillot
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$.
54 170 pbaillot
%\todo{verify $z\neq 0$ disjunct.}
55 170 pbaillot
Then $z \neq 0$ holds. Moreover we had  $\exists ! y^\safe . A_g(\vec u , \vec x , x , y)$. So we deduce that
56 170 pbaillot
 $\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
57 170 pbaillot
  $\exists y^\safe .  (A_g (\vec u ,\vec x , p z , y) \cand y=_2 0)$, we deduce
58 170 pbaillot
 $\ \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
59 170 pbaillot
 $A_f(\vec u ; \vec x , z)$ is proven.
60 168 adas
61 170 pbaillot
 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.
62 168 adas
63 170 pbaillot
So we have proven $\exists z^\safe  . A_f(\vec u ; \vec x , z)$, and unicity can be easily verified.
64 168 adas
65 168 adas
\paragraph*{Predicative recursion on notation}
66 171 adas
67 171 adas
\anupam{Assume access to the following predicates (makes completeness easier, soundness will be okay):
68 171 adas
	\begin{itemize}
69 171 adas
	%	\item $\pair x y z $ . ``$z$ is the sequence that appends $y$ to the sequence $x$''
70 171 adas
		\item $\pair x y z$. ``$z$ is the sequence that prepends $x$ to the sequence $y$''
71 171 adas
		\item $\beta (i; x ,y)$. ``The $i$th element of the sequence $x$ is $y$.''
72 171 adas
	\end{itemize}
73 171 adas
	}
74 195 pbaillot
\patrick{I also assume access to the following predicates:
75 195 pbaillot
\begin{itemize}
76 195 pbaillot
   \item $\zerobit (u,k)$ (resp. $\onebit(u,k)$). " The $k$th bit of $u$ is 0 (resp. 1)"
77 195 pbaillot
   \item $\pref(k,x,y)$. "The prefix of $x$ (as a binary string) of length $k$ is $y$"
78 197 pbaillot
   \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$.
79 195 pbaillot
\end{itemize}}
80 168 adas
Now suppose that $f$ is defined by PRN:
81 168 adas
\[
82 168 adas
\begin{array}{rcl}
83 168 adas
f(0 , \vec u ; \vec x) & \dfn & g(\vec u ; \vec x) \\
84 168 adas
f(\succ i u, \vec u ; \vec x) & \dfn & h_i( u , \vec u ; \vec x , f(u , \vec u ; \vec x))
85 168 adas
\end{array}
86 168 adas
\]
87 168 adas
88 168 adas
\anupam{using $\beta(i,x,y)$ predicate for sequences: ``$i$th element of $x$ is $y$''. Provably total in $\arith^1$.}
89 168 adas
90 168 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$.
91 168 adas
We define $A_f (u ,\vec u ; \vec x , y)$ as,
92 168 adas
\[
93 168 adas
\exists w^\safe . \left(
94 168 adas
\begin{array}{ll}
95 168 adas
&
96 168 adas
%Seq(z) \cand
97 168 adas
\exists y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w , y_0) ) \cand \beta(|u|, w,y ) \\
98 197 pbaillot
%\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}) )\\
99 195 pbaillot
\cand & \forall k < |u| . \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}) )
100 168 adas
\end{array}
101 168 adas
\right)
102 168 adas
\]
103 197 pbaillot
where
104 197 pbaillot
\[
105 197 pbaillot
B (u , \vec u ; \vec x , y_k , y_{k+1}) = \left(
106 197 pbaillot
\begin{array}{ll}
107 197 pbaillot
& \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}) )\\
108 197 pbaillot
\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}) )
109 197 pbaillot
\end{array}
110 197 pbaillot
\right)
111 197 pbaillot
\]
112 195 pbaillot
113 196 pbaillot
%which is $\Sigma^\safe_i$ by inspection, and indeed defines the graph of $f$.
114 195 pbaillot
115 168 adas
To show totality, let $\vec u \in \normal, \vec x \in \safe$ and proceed by induction on $u \in \normal$.
116 168 adas
The base case, when $u=0$, is immediate from the totality of $A_g$, so for the inductive case we need to show:
117 168 adas
\[
118 168 adas
\exists y^\safe . A_f (u , \vec u ; \vec x , y)
119 168 adas
\quad \seqar \quad
120 197 pbaillot
\exists z^\safe . A_f (s_i u, \vec u ; \vec x , z)
121 168 adas
\]
122 168 adas
123 197 pbaillot
So let us assume $\exists y^\safe . A_f (u , \vec u ; \vec x , y) $. Then there exists $w$ such that $\safe(w)$ and
124 197 pbaillot
 $A_f (u , \vec u ; \vec x , w) $.
125 197 pbaillot
126 197 pbaillot
 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
127 197 pbaillot
 $\addtosequence(w,z,w')$. Observe also that we have $\pref(|u|,s_i u,u)$
128 197 pbaillot
129 197 pbaillot
 So we have, for $k=|u|$:
130 197 pbaillot
131 197 pbaillot
 $$  \beta (k, w', y) \cand \beta (k+1 ,w', z)  \cand B (u , \vec u ; \vec x , y , z).$$
132 197 pbaillot
133 197 pbaillot
  and we can conclude that
134 197 pbaillot
   \[
135 197 pbaillot
\exists w'^\safe . \left(
136 197 pbaillot
\begin{array}{ll}
137 197 pbaillot
&
138 197 pbaillot
%Seq(z) \cand
139 197 pbaillot
\exists y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w' , y_0) ) \cand \beta(|u|+1, w',z ) \\
140 197 pbaillot
\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}) )
141 197 pbaillot
\end{array}
142 197 pbaillot
\right)
143 197 pbaillot
\]
144 197 pbaillot
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,
145 197 pbaillot
\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.
146 197 pbaillot
147 168 adas
\anupam{here need to `add' element to the computation sequence. Need to do this earlier in the paper.}
148 168 adas
149 168 adas
\anupam{for inductive cases, need $u\neq 0$ for $\succ 0$ case.}
150 168 adas
151 168 adas
\paragraph*{Safe composition}
152 168 adas
Now suppose that $f$ is defined by safe composition:
153 168 adas
\[
154 168 adas
f(\vec u ; \vec x) \quad \dfn \quad g( \vec h(\vec u;) ; \vec h' (\vec u ; \vec x) )
155 168 adas
\]
156 168 adas
157 168 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.
158 168 adas
In particular, by Raising, we have that $\forall \vec u^\normal . \exists v^\normal . A_{h_i} (\vec u , v)$.
159 168 adas
160 168 adas
We define $A_f (\vec u , \vec x , z)$ defining the graph of $f$ as follows:
161 168 adas
\[
162 168 adas
\exists \vec v^\normal . \exists \vec y^\safe .
163 168 adas
\left(
164 168 adas
\bigwedge\limits_i A_{h_i} (\vec u , v_i)
165 168 adas
\wedge
166 168 adas
\bigwedge\limits_j A_{h_j'} (\vec u ; \vec x , y_j)
167 168 adas
\wedge
168 168 adas
A_g ( \vec v , \vec y , z )
169 168 adas
\right)
170 168 adas
\]
171 168 adas
The provable totality of $A_f$ follows from simple first-order reasoning, mostly cuts and basic quantifier manipulations.
172 168 adas
173 168 adas
\todo{elaborate}
174 168 adas
175 168 adas
\paragraph*{Other cases}
176 168 adas
\todo{}
177 168 adas
178 168 adas
179 168 adas
180 168 adas
181 168 adas
182 168 adas
183 168 adas
184 168 adas
185 168 adas
186 168 adas
187 168 adas
188 168 adas
189 168 adas
190 168 adas
191 168 adas
192 168 adas
193 168 adas
194 168 adas
195 168 adas
196 168 adas
197 168 adas
198 168 adas
199 168 adas