Statistiques
| Révision :

root / CSL17 / completeness.tex @ 170

Historique | Voir | Annoter | Télécharger (5,66 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 166 adas
	For every $\mubci{i-1}$ program $f(\vec u ; \vec x)$ (which is in $\fphi i$), there is a $\Sigma_i$ formula $A_f(\vec u, \vec x)$ such that $\arith^i$ proves $\forall \vec u \in \normal . \forall \vec x \in \safe. \exists ! y \in \safe . 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 168 adas
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 168 adas
\begin{proof}
44 168 adas
\todo{}
45 168 adas
\end{proof}
46 168 adas
47 168 adas
Now, working in $\arith^i$, let $\vec u \in \normal , \vec x \in \safe$ and let us prove:
48 168 adas
\[
49 168 adas
\exists !z^\safe  . A_f(\vec u ; \vec x , z)
50 168 adas
\]
51 168 adas
Suppose that $\exists x^\safe , y^\safe .  (A_g (\vec u ,\vec x , x , y) \cand y=_2 0)$.
52 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$.
53 170 pbaillot
%\todo{verify $z\neq 0$ disjunct.}
54 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
55 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
56 170 pbaillot
  $\exists y^\safe .  (A_g (\vec u ,\vec x , p z , y) \cand y=_2 0)$, we deduce
57 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
58 170 pbaillot
 $A_f(\vec u ; \vec x , z)$ is proven.
59 168 adas
60 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.
61 168 adas
62 170 pbaillot
So we have proven $\exists z^\safe  . A_f(\vec u ; \vec x , z)$, and unicity can be easily verified.
63 168 adas
64 168 adas
\paragraph*{Predicative recursion on notation}
65 168 adas
Now suppose that $f$ is defined by PRN:
66 168 adas
\[
67 168 adas
\begin{array}{rcl}
68 168 adas
f(0 , \vec u ; \vec x) & \dfn & g(\vec u ; \vec x) \\
69 168 adas
f(\succ i u, \vec u ; \vec x) & \dfn & h_i( u , \vec u ; \vec x , f(u , \vec u ; \vec x))
70 168 adas
\end{array}
71 168 adas
\]
72 168 adas
73 168 adas
\anupam{using $\beta(i,x,y)$ predicate for sequences: ``$i$th element of $x$ is $y$''. Provably total in $\arith^1$.}
74 168 adas
75 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$.
76 168 adas
We define $A_f (u ,\vec u ; \vec x , y)$ as,
77 168 adas
\[
78 168 adas
\exists w^\safe . \left(
79 168 adas
\begin{array}{ll}
80 168 adas
&
81 168 adas
%Seq(z) \cand
82 168 adas
\exists y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w , y_0) ) \cand \beta(|u|, w,y ) \\
83 168 adas
\cand & \forall k < |u| . \exists y_k , y_{k+1} . ( \beta (k, w, y_i) \cand \beta (k+1 ,w, y_{k+1})  \cand A_{h_i} (u , \vec u ; \vec x , y_k , y_{k+1}) )
84 168 adas
\end{array}
85 168 adas
\right)
86 168 adas
\]
87 168 adas
which is $\Sigma^\safe_i$ by inspection, and indeed defines the graph of $f$.
88 168 adas
89 168 adas
To show totality, let $\vec u \in \normal, \vec x \in \safe$ and proceed by induction on $u \in \normal$.
90 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:
91 168 adas
\[
92 168 adas
\exists y^\safe . A_f (u , \vec u ; \vec x , y)
93 168 adas
\quad \seqar \quad
94 168 adas
\exists z^\safe . A_f (s_i u, \vec u ; \vec x , y)
95 168 adas
\]
96 168 adas
97 168 adas
\anupam{here need to `add' element to the computation sequence. Need to do this earlier in the paper.}
98 168 adas
99 168 adas
\anupam{for inductive cases, need $u\neq 0$ for $\succ 0$ case.}
100 168 adas
101 168 adas
\paragraph*{Safe composition}
102 168 adas
Now suppose that $f$ is defined by safe composition:
103 168 adas
\[
104 168 adas
f(\vec u ; \vec x) \quad \dfn \quad g( \vec h(\vec u;) ; \vec h' (\vec u ; \vec x) )
105 168 adas
\]
106 168 adas
107 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.
108 168 adas
In particular, by Raising, we have that $\forall \vec u^\normal . \exists v^\normal . A_{h_i} (\vec u , v)$.
109 168 adas
110 168 adas
We define $A_f (\vec u , \vec x , z)$ defining the graph of $f$ as follows:
111 168 adas
\[
112 168 adas
\exists \vec v^\normal . \exists \vec y^\safe .
113 168 adas
\left(
114 168 adas
\bigwedge\limits_i A_{h_i} (\vec u , v_i)
115 168 adas
\wedge
116 168 adas
\bigwedge\limits_j A_{h_j'} (\vec u ; \vec x , y_j)
117 168 adas
\wedge
118 168 adas
A_g ( \vec v , \vec y , z )
119 168 adas
\right)
120 168 adas
\]
121 168 adas
The provable totality of $A_f$ follows from simple first-order reasoning, mostly cuts and basic quantifier manipulations.
122 168 adas
123 168 adas
\todo{elaborate}
124 168 adas
125 168 adas
\paragraph*{Other cases}
126 168 adas
\todo{}
127 168 adas
128 168 adas
129 168 adas
130 168 adas
131 168 adas
132 168 adas
133 168 adas
134 168 adas
135 168 adas
136 168 adas
137 168 adas
138 168 adas
139 168 adas
140 168 adas
141 168 adas
142 168 adas
143 168 adas
144 168 adas
145 168 adas
146 168 adas
147 168 adas
148 168 adas
149 168 adas