Statistiques
| Révision :

root / CSL17 / soundness.tex @ 259

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

1 166 adas
\section{Soundness}
2 168 adas
\label{sect:soundness}
3 236 adas
In this section we show that the representable functions of our theories $\arith^i$ are in $\fphi i$ (`soundness').
4 236 adas
The main result 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 236 adas
The 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, Lemma~\ref{lem:polychecking}.
14 236 adas
For this we will use \emph{length-bounded} witnessing argument, borrowing a similar idea from Bellantoni's 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 247 adas
Given a $\Sigma^\safe_i$ formula $A$ and compatible sorting $(\vec u; \vec x)$ of its variables, there is a $\mubci{i}$ 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 247 adas
Let us write $\charfn{}{i}$ to denote the class of functions $\charfn{}{A}$ for $A \in \Sigma^\safe_{i}$.
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 235 adas
Notice that, while we refer to $b_A(l), p(l)$ etc.\ below as a `polynomial', we really mean a \emph{quasipolynomial} (which may also contain $\smsh$), i.e.\ 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 247 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-1})$ 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 249 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 248 adas
	there are $\bc (\charfn{}{i-1})$ 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 235 adas
%	\bigwedge\limits_{A \in \Gamma} \wit{\vec u ; \vec x}{ A} (l, \vec u ; \vec x , w_A) =1
142 235 adas
%	\ \implies \
143 235 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 235 adas
	\begin{array}{rl}
145 235 adas
&	\bigwedge\limits_{A \in \Gamma} \wit{\vec u ; \vec x}{ A} (l, \vec u ; \vec x , w_A \mode b_A(l)) =1 \\
146 235 adas
\noalign{\medskip}
147 235 adas
\implies & 	\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
148 235 adas
	\end{array}
149 202 adas
	\]
150 225 adas
	for some polynomial $p$.
151 225 adas
%	\anupam{Need $\vec w \mode p(l)$ for some $p$.}
152 225 adas
%	\anupam{$l$ may occur freely in the programs $f^\pi_B$}
153 202 adas
\end{lemma}
154 219 adas
155 222 adas
156 222 adas
157 225 adas
158 225 adas
Now we can prove the soundness result:
159 202 adas
160 222 adas
	\begin{proof}
161 233 adas
		[Proof sketch of Thm.~\ref{thm:soundness} from Lemma~\ref{lem:proof-interp}]
162 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.
163 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$.
164 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.
165 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.
166 222 adas
	\end{proof}