Révision 168 CSL17/completeness.tex

completeness.tex (revision 168)
5 5
\begin{theorem}
6 6
	\label{thm:completeness}
7 7
	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
\end{theorem}
8
\end{theorem}
9

  
10
The rest of this section is devoted to a proof of this theorem.
11
We proceed by structural induction on a $\mubc{i-1} $ program, dealing with each case in the proceeding paragraphs.
12

  
13
\paragraph*{Predicative minimisation}
14
Suppose $f(\vec u ; \vec x)$ is defined as $\mu x^{+1} . g(\vec u ; \vec x , x) =_2 0$. 
15
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
\[
17
\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
\]
19
Let us define $A_f(\vec u ; \vec x , z)$ as:
20
\[
21
\begin{array}{rl}
22
&\left(
23
z=0 \  \cand \ \forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)
24
\right) \\
25
\cor & \left(
26
\begin{array}{ll}
27
z\neq 0 
28
& \cand\   \forall y^\safe . (A_g (\vec u , \vec x , p z , y) \cimp y=_2 0 ) \\
29
& \cand\ \forall x^\safe < p z . \forall y^\safe . (A_g (\vec u , \vec x , x , y) \cimp y=_2 1) 
30
\end{array}
31
\right)
32
\end{array}
33
\]
34
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
In particular this means $A_f$ is $\Sigma_i$.
36

  
37
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

  
39
\begin{lemma}
40
[Minimisation]
41
$\arith^i \proves \cmin{\Sigma^\safe_{i-1}}$.	
42
\end{lemma}
43
\begin{proof}
44
\todo{}
45
\end{proof}
46

  
47
Now, working in $\arith^i$, let $\vec u \in \normal , \vec x \in \safe$ and let us prove:
48
\[
49
\exists !z^\safe  . A_f(\vec u ; \vec x , z)
50
\]
51
Suppose that $\exists x^\safe , y^\safe .  (A_g (\vec u ,\vec x , x , y) \cand y=_2 0)$.
52
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$.
53
\todo{verify $z\neq 0$ disjunct.} 
54

  
55
Otherwise, we have that $\forall x^\safe , y^\safe . (A_g (\vec u , \vec x , x, y) \cimp y=_2 1)$ and so we can set $z=0$.
56

  
57

  
58
\paragraph*{Predicative recursion on notation}
59
Now suppose that $f$ is defined by PRN:
60
\[
61
\begin{array}{rcl}
62
f(0 , \vec u ; \vec x) & \dfn & g(\vec u ; \vec x) \\
63
f(\succ i u, \vec u ; \vec x) & \dfn & h_i( u , \vec u ; \vec x , f(u , \vec u ; \vec x))
64
\end{array}
65
\]
66

  
67
\anupam{using $\beta(i,x,y)$ predicate for sequences: ``$i$th element of $x$ is $y$''. Provably total in $\arith^1$.}
68

  
69
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$.
70
We define $A_f (u ,\vec u ; \vec x , y)$ as,
71
\[
72
\exists w^\safe . \left(
73
\begin{array}{ll}
74
& 
75
%Seq(z) \cand 
76
\exists y_0 . ( A_g (\vec u , \vec x , y_0) \cand \beta(0, w , y_0) ) \cand \beta(|u|, w,y ) \\
77
\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}) )
78
\end{array}
79
\right)
80
\]
81
which is $\Sigma^\safe_i$ by inspection, and indeed defines the graph of $f$.
82

  
83
To show totality, let $\vec u \in \normal, \vec x \in \safe$ and proceed by induction on $u \in \normal$.
84
The base case, when $u=0$, is immediate from the totality of $A_g$, so for the inductive case we need to show:
85
\[
86
\exists y^\safe . A_f (u , \vec u ; \vec x , y) 
87
\quad \seqar \quad
88
\exists z^\safe . A_f (s_i u, \vec u ; \vec x , y)
89
\]
90

  
91
\anupam{here need to `add' element to the computation sequence. Need to do this earlier in the paper.}
92

  
93
\anupam{for inductive cases, need $u\neq 0$ for $\succ 0$ case.}
94

  
95
\paragraph*{Safe composition}
96
Now suppose that $f$ is defined by safe composition:
97
\[
98
f(\vec u ; \vec x) \quad \dfn \quad g( \vec h(\vec u;) ; \vec h' (\vec u ; \vec x) )
99
\]
100

  
101
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.
102
In particular, by Raising, we have that $\forall \vec u^\normal . \exists v^\normal . A_{h_i} (\vec u , v)$.
103

  
104
We define $A_f (\vec u , \vec x , z)$ defining the graph of $f$ as follows:
105
\[
106
\exists \vec v^\normal . \exists \vec y^\safe .  
107
\left(  
108
\bigwedge\limits_i A_{h_i} (\vec u , v_i)
109
\wedge
110
\bigwedge\limits_j A_{h_j'} (\vec u ; \vec x , y_j)
111
\wedge
112
A_g ( \vec v , \vec y , z ) 
113
\right)
114
\]
115
The provable totality of $A_f$ follows from simple first-order reasoning, mostly cuts and basic quantifier manipulations.
116

  
117
\todo{elaborate}
118

  
119
\paragraph*{Other cases}
120
\todo{}
121

  
122

  
123

  
124

  
125

  
126

  
127

  
128

  
129

  
130

  
131

  
132

  
133

  
134

  
135

  
136

  
137

  
138

  
139

  
140

  
141

  
142

  
143

  
144

  

Formats disponibles : Unified diff