Statistiques
| Révision :

root / CSL17 / soundness.tex @ 229

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

1 166 adas
\section{Soundness}
2 168 adas
\label{sect:soundness}
3 168 adas
4 168 adas
The main result of this section is the following:
5 168 adas
6 168 adas
\begin{theorem}
7 202 adas
	\label{thm:soundness}
8 168 adas
	If $\arith^i$ proves $\forall \vec u^\normal . \forall \vec x^\safe . \exists y^\safe . A(\vec u ; \vec x , y)$ then there is a $\mubci{i-1}$ program $f(\vec u ; \vec x)$ such that $\Nat \models A(\vec u ; \vec x , f(\vec u ; \vec x))$.
9 168 adas
\end{theorem}
10 168 adas
11 171 adas
12 172 adas
13 172 adas
The main problem for soundness is that we have predicates, for example equality, that take safe arguments in our theory but do not formally satisfy the polychecking lemma for $\mubc$ functions.
14 172 adas
For this we will use length-bounded witnessing, borrowing a similar idea from Bellantoni's previous work \cite{Bellantoni95}.
15 172 adas
16 201 adas
17 172 adas
\begin{definition}
18 225 adas
[Length bounded (in)equality]
19 225 adas
%We define \emph{length-bounded equality}, $\eq(l;x,y)$ as the characteristic function of the predicate:
20 225 adas
%\[
21 225 adas
%x \mode l = y \mode l
22 225 adas
%\]
23 225 adas
%which is definable by safe recursion on $l$:
24 225 adas
%\[
25 225 adas
%\begin{array}{rcl}
26 225 adas
%\eq (0 ; x,y) & \dfn & \equivfn (;\bit (0;x),\bit(0;y) ) \\
27 225 adas
%\eq (\succ i l; x,y) & \dfn & \cond (; \eq ( u;x,y ) , 0, \equivfn (; \bit (\succ i u ; x ) , \bit (\succ i l ; y ))  )
28 225 adas
%\end{array}
29 225 adas
%\]
30 225 adas
We define \emph{length-bounded inequality} as:
31 172 adas
\[
32 201 adas
\begin{array}{rcl}
33 225 adas
\leqfn (0 ; x ,y) & \dfn & \cond(; \bit (0;x), 1, \bit (0;y) ) \\
34 225 adas
\leqfn (\succ i l ; x,y) & \dfn & \orfn ( ; \cond(;\bit (\succ i l ; x) , \bit(\succ i l ; y),0 ) , \andfn (; \equivfn (\bit (\succ i l ; x) , \bit(\succ i l ; y)) , \leqfn (l;x,y ) ) )
35 201 adas
\end{array}
36 201 adas
\]
37 172 adas
\end{definition}
38 172 adas
39 225 adas
Notice that $\leqfn (l; x,y) = 1$ just if $x \mode l \leq y \mode l$.
40 225 adas
We can also define $\eq( l; x,y)$ as $\andfn (;\leq(l;x,y),\leq(l;y,x))$.
41 172 adas
42 225 adas
%\anupam{Do we need the general form of length-boundedness? E.g. the $*$ functions from Bellantoni's paper? Put above if necessary. Otherwise just add sequence manipulation functions as necessary.}
43 225 adas
%
44 225 adas
%Notice that $\eq$ is a polymax bounded polyomial checking function on its normal input, and so can be added to $\mubc$ without problems.
45 172 adas
46 227 adas
47 225 adas
In the presence of a compatible sorting, we may easily define functions that \emph{evaluate} safe formulae in $\mubc$:
48 173 adas
49 173 adas
50 176 adas
\begin{proposition}
51 225 adas
Given a $\Sigma^\safe_i$ formula $A$ and compatible sorting $(\vec u; \vec x)$ of its variables, there is a $\mubci{i-1}$ program $\charfn{\vec u ;\vec x}{A} (l, \vec u ; \vec x)$ computing the characteristic function of $A (\vec u \mode l ; \vec x \mode l)$.
52 176 adas
\end{proposition}
53 176 adas
54 225 adas
55 225 adas
We will use the programs $\charfn{}{}$ in the witness functions we define below.
56 225 adas
Let us write $\charfn{}{i}$ to denote the class of functions $\charfn{}{A}$ for $A \in \Pi^\safe_{i-1}$.
57 225 adas
For the notion of bounding polynomial below we are a little informal with bounds, using `big-oh' notation, since it will suffice just to be `sufficiently large'.
58 227 adas
Notice that, while we write $p(l)$ below, we really mean a polynomial in the \emph{length} of $l$, as a slight abuse of notation.
59 225 adas
60 225 adas
61 173 adas
\begin{definition}
62 173 adas
	[Length bounded witness function]
63 225 adas
	For a $\Sigma^\safe_{i}$ formula $A$ with a compatible sorting $(\vec u ; \vec x)$, we define the \emph{length-bounded witness function} $\wit{\vec u ; \vec x}{A} (l, \vec u ; \vec x , w)$ in $\bc (\charfn{}{i})$ and its \emph{bounding polynomial} $b_A (l)$ as follows:
64 219 adas
	\begin{itemize}
65 225 adas
		\item If $A$ is $\Pi^\safe_{i-1}$ then $\wit{\vec u ; \vec x}{A} (l, \vec u ; \vec x , w) \dfn \charfn{\vec u ; \vec x}{A} (l, \vec u ; \vec x )$ and we set $b_A (l) = 1$.
66 225 adas
		\item If $A$ is $B \cor C$ then we may set $b_A = O(b_B + b_C)$ and define $		\wit{\vec u ; \vec x}{A} (l, \vec u ;\vec x , w) \dfn		\orfn ( ; \wit{\vec u ; \vec x}{B} (l, \vec u ; \vec x , \beta (b_B (l) , 0 ; w ) ) , \wit{\vec u ; \vec x}{C} (l, \vec u ; \vec x , \beta (b_C (l) , 0 ; w ) )  )$.
67 225 adas
%		\[
68 225 adas
%		\wit{\vec u ; \vec x}{A} (l, \vec u ;\vec x , w)
69 225 adas
%		\quad \dfn \quad
70 225 adas
%		\orfn ( ; \wit{\vec u ; \vec x}{B} (l, \vec u ; \vec x , \beta (b_B (l) , 0 ; w ) ) , \wit{\vec u ; \vec x}{C} (l, \vec u ; \vec x , \beta (b_C (l) , 0 ; w ) )  )
71 225 adas
%		\]
72 225 adas
%		and we may set $b_A = O(b_B + b_C)$.
73 219 adas
		\item Similarly if $A $ is $B \cand C$, but with $\andfn$ in place of $\orfn$.
74 219 adas
%		\item If $A$ is $B \cand C$ then
75 219 adas
%			\[
76 219 adas
%			\wit{\vec u ; \vec x}{A} (l, \vec u ;\vec x , w)
77 219 adas
%			\quad \dfn \quad
78 219 adas
%			\andfn ( ; \wit{\vec u ; \vec x}{B} (l, \vec u ; \vec x , \beta (b_B (l) , 0 ; w ) ) , \wit{\vec u ; \vec x}{C} (l, \vec u ; \vec x , \beta (b_C (l) , 0 ; w ) )  )
79 219 adas
%			\]
80 219 adas
%			and we may set $b_A = O(b_B + b_C)$.
81 225 adas
		\item If $A$ is $\forall u \leq |t(\vec u;)| . B(u)$ we appeal to sharply bounded closure, Lemma~\ref{lem:sharply-bounded-recursion}, to define
82 225 adas
		\(
83 219 adas
		\wit{\vec u ; \vec x}{A}
84 225 adas
		 \dfn
85 225 adas
		\forall u \leq |t|.
86 219 adas
		\wit{u, \vec u ; \vec x}{B(u)} (l, u, \vec u ; \vec x , \beta( b_{B(t)} (l) , u ; w ) )
87 225 adas
		\)
88 225 adas
		%appealing to Lemma~\ref{lem:sharply-bounded-recursion},
89 225 adas
		and
90 225 adas
		we set
91 225 adas
		$b_A = O(b_{B(t)}^2 )$.
92 219 adas
		\item Similarly if $A$ is $\exists u^\normal \leq |t(\vec u;)|. A'(u)$, but with $\exists u \leq |t|$ in place of $\forall u \leq |t|$.
93 219 adas
		\item If $A$ is $\exists x^\safe . B(x) $ then
94 225 adas
		\(
95 219 adas
		\wit{\vec u ; \vec x}{A}
96 225 adas
		\dfn
97 219 adas
		\wit{\vec u ; \vec x , x}{B(x)} ( l, \vec u ; \vec x , \beta( b_{B} (l) , 0;w ) , \beta (q(l) , 1 ;w ))
98 225 adas
		\)
99 225 adas
		where $q$ is obtained by the polychecking and bounded minimisation properties, Lemmas~\ref{lem:polychecking} and \ref{lem:bounded-minimisation}, for $\wit{\vec u ; \vec x , x}{B(x)}$.
100 219 adas
		We may set $b_A = O(b_B + q )$.
101 219 adas
	\end{itemize}
102 219 adas
%	\[
103 219 adas
%	\begin{array}{rcl}
104 219 adas
%	\wit{\vec u ; \vec x}{A} (l, \vec u ; \vec x , w) & \dfn & \charfn{}{A} (l, \vec u ; \vec x)  \text{ if $A$ is $\Pi_i$} \\
105 219 adas
%	\smallskip
106 219 adas
%	\wit{\vec u ; \vec x}{A \cor B} (l,\vec u ; \vec x , \vec w^A , \vec w^B) & \dfn & \cor ( ; \wit{\vec u ; \vec x}{A} (l,\vec u ; \vec x , \vec w^A) ,\wit{\vec u ; \vec x}{B} (l,\vec u ; \vec x , \vec w^B)  )  \\
107 219 adas
%	\smallskip
108 219 adas
%	\wit{\vec u ; \vec x}{A \cand B} (l,\vec u ; \vec x , \vec w^A , \vec w^B) & \dfn & \cand ( ; \wit{\vec u ; \vec x}{A} (l,\vec u ; \vec x , \vec w^A) ,\wit{\vec u ; \vec x}{B} (l,\vec u ; \vec x , \vec w^B)  )  \\
109 219 adas
%	\smallskip
110 219 adas
%	\wit{\vec u ; \vec x}{\exists x^\safe . A(x)} (l,\vec u ; \vec x , \vec w , w) & \dfn & \wit{\vec u ; \vec x , x}{A(x)} ( l,\vec u ; \vec x , w , \vec w )
111 219 adas
%	\\
112 219 adas
%	\smallskip
113 219 adas
%	\wit{\vec u ; \vec x}{\forall u \leq |t(\vec u;)| . A(x)} (l , \vec u ; \vec x, w) & \dfn &
114 219 adas
%	\forall u \leq |t(\vec u;)| . \wit{u , \vec u ; \vec x}{A(u)} (l, u , \vec u ; \vec x, \beta(u;w) )
115 219 adas
%	\end{array}
116 219 adas
%	\]
117 219 adas
%	\anupam{need length bounding for sharply bounded quantifiers}
118 173 adas
\end{definition}
119 173 adas
120 173 adas
121 202 adas
122 202 adas
\begin{proposition}
123 225 adas
	\label{prop:wit-rfn}
124 205 adas
	If, for some $w$, $\wit{\vec u ; \vec x}{A} (l, \vec u ; \vec x,w) =1$, then $A (\vec u \mode l ; \vec x \mode l)$ is true.
125 225 adas
Conversely, if $A (\vec u \mode l ; \vec x \mode l)$ is true then there is some $w \leq b_A(l)$ such that $\wit{\vec u ; \vec x}{A} (l, \vec u ; \vec x,w) =1$.
126 202 adas
\end{proposition}
127 202 adas
128 219 adas
129 225 adas
In order to prove Thm.~\ref{thm:soundness} we need the following lemma, essentially giving an interpretation of $\arith^i$ proofs into $\mubci{i-1}$:
130 202 adas
131 202 adas
132 202 adas
\begin{lemma}
133 219 adas
		[Proof interpretation]
134 219 adas
		\label{lem:proof-interp}
135 225 adas
	From a typed-variable normal form $\arith^i$ proof $\pi$ of a $\Sigma^\safe_i$ sequent $\normal(\vec u), \safe(\vec x) , \Gamma  \seqar \Delta$
136 225 adas
	there are $\bc (\charfn{}{i})$ functions $ f^\pi_B (\vec u ; \vec x , w)$ for $B\in\Delta$ such that
137 225 adas
	% such that, for any $l, \vec u ; \vec x  , w$, we have:
138 202 adas
	\[
139 219 adas
%	\vec a^\nu = \vec u ,
140 219 adas
%	\vec b^\sigma = \vec u,
141 219 adas
	\bigwedge\limits_{A \in \Gamma} \wit{\vec u ; \vec x}{ A} (l, \vec u ; \vec x , w_A) =1
142 225 adas
	\ \implies \
143 225 adas
	\bigvee\limits_{B\in \Delta} \wit{\vec u ; \vec x}{B} (l, \vec u ; \vec x , f^\pi_B((\vec u ; \vec x )\mode l, \vec w \mode p(l))) = 1
144 202 adas
	\]
145 225 adas
	for some polynomial $p$.
146 225 adas
%	\anupam{Need $\vec w \mode p(l)$ for some $p$.}
147 225 adas
%	\anupam{$l$ may occur freely in the programs $f^\pi_B$}
148 202 adas
\end{lemma}
149 219 adas
150 222 adas
151 222 adas
152 225 adas
153 225 adas
Now we can prove the soundness result:
154 202 adas
155 222 adas
	\begin{proof}
156 222 adas
		[Proof of Thm.~\ref{thm:soundness} from Lemma~\ref{lem:proof-interp}]
157 225 adas
		Suppose $\arith^i \proves \forall \vec u^\normal . \exists x^\safe . A(\vec u ; x)$. By inversion and Thm.~\ref{thm:normal-form} there is a $\arith^i$ proof $\pi$ of $\normal (\vec u ) \seqar \exists x^\safe. A(\vec u ; x )$ in typed variable normal form.
158 225 adas
By Lemma~\ref{lem:proof-interp}, we have a $\mubci{i-1}$ function $f^\pi$ with $\wit{\vec u ;}{\exists x^\safe . A} (l, \vec u ; f(\vec u \mode l;)) =1$.
159 225 adas
By the definition of $\wit{}{}$ and Prop.~\ref{prop:wit-rfn} we have that $\exists x . A(\vec u \mode l; x)$ is true just if $A(\vec u \mode l ; \beta (q(l), 1 ; f(\vec u \mode l;) ))$ is true.
160 227 adas
Now, since all $\vec u$ are normal, we may simply set $l$ to have a longer length than all of these arguments, so the function $f(\vec u;) \dfn \beta (q(\sum \vec u), 1 ; f(\vec u \mode \sum \vec u;) ))$ suffices to finish the proof.
161 222 adas
	\end{proof}