Statistiques
| Révision :

root / CSL17 / tech-report / soundness.tex @ 251

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

1 251 adas
\section{Soundness}
2 251 adas
\label{sect:soundness}
3 251 adas
In this section we show that the representable functions of our theories $\arith^i$ are in $\fphi i$ (`soundness').
4 251 adas
The main result is the following:
5 251 adas
6 251 adas
\begin{theorem}
7 251 adas
	\label{thm:soundness}
8 251 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 251 adas
\end{theorem}
10 251 adas
11 251 adas
12 251 adas
13 251 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 251 adas
For this we will use \emph{length-bounded} witnessing argument, borrowing a similar idea from Bellantoni's work \cite{Bellantoni95}.
15 251 adas
16 251 adas
17 251 adas
\begin{definition}
18 251 adas
[Length bounded (in)equality]
19 251 adas
%We define \emph{length-bounded equality}, $\eq(l;x,y)$ as the characteristic function of the predicate:
20 251 adas
%\[
21 251 adas
%x \mode l = y \mode l
22 251 adas
%\]
23 251 adas
%which is definable by safe recursion on $l$:
24 251 adas
%\[
25 251 adas
%\begin{array}{rcl}
26 251 adas
%\eq (0 ; x,y) & \dfn & \equivfn (;\bit (0;x),\bit(0;y) ) \\
27 251 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 251 adas
%\end{array}
29 251 adas
%\]
30 251 adas
We define \emph{length-bounded inequality} as:
31 251 adas
\[
32 251 adas
\begin{array}{rcl}
33 251 adas
\leqfn (0 ; x ,y) & \dfn & \cond(; \bit (0;x), 1, \bit (0;y) ) \\
34 251 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 251 adas
\end{array}
36 251 adas
\]
37 251 adas
\end{definition}
38 251 adas
39 251 adas
Notice that $\leqfn (l; x,y) = 1$ just if $x \mode l \leq y \mode l$.
40 251 adas
We can also define $\eq( l; x,y)$ as $\andfn (;\leq(l;x,y),\leq(l;y,x))$.
41 251 adas
42 251 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 251 adas
%
44 251 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 251 adas
46 251 adas
47 251 adas
In the presence of a compatible sorting, we may easily define functions that \emph{evaluate} safe formulae in $\mubc$:
48 251 adas
49 251 adas
50 251 adas
\begin{proposition}
51 251 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 251 adas
\end{proposition}
53 251 adas
54 251 adas
55 251 adas
We will use the programs $\charfn{}{}$ in the witness functions we define below.
56 251 adas
Let us write $\charfn{}{i}$ to denote the class of functions $\charfn{}{A}$ for $A \in \Sigma^\safe_{i}$.
57 251 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 251 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 251 adas
60 251 adas
61 251 adas
\begin{definition}
62 251 adas
	[Length bounded witness function]
63 251 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 251 adas
	\begin{itemize}
65 251 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 251 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 251 adas
%		\[
68 251 adas
%		\wit{\vec u ; \vec x}{A} (l, \vec u ;\vec x , w)
69 251 adas
%		\quad \dfn \quad
70 251 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 251 adas
%		\]
72 251 adas
%		and we may set $b_A = O(b_B + b_C)$.
73 251 adas
		\item Similarly if $A $ is $B \cand C$, but with $\andfn$ in place of $\orfn$.
74 251 adas
%		\item If $A$ is $B \cand C$ then
75 251 adas
%			\[
76 251 adas
%			\wit{\vec u ; \vec x}{A} (l, \vec u ;\vec x , w)
77 251 adas
%			\quad \dfn \quad
78 251 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 251 adas
%			\]
80 251 adas
%			and we may set $b_A = O(b_B + b_C)$.
81 251 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 251 adas
		\(
83 251 adas
		\wit{\vec u ; \vec x}{A}
84 251 adas
		 \dfn
85 251 adas
		\forall u \leq |t|.
86 251 adas
		\wit{u, \vec u ; \vec x}{B(u)} (l, u, \vec u ; \vec x , \beta( b_{B(t)} (l) , u ; w ) )
87 251 adas
		\)
88 251 adas
		%appealing to Lemma~\ref{lem:sharply-bounded-recursion},
89 251 adas
		and
90 251 adas
		we set
91 251 adas
		$b_A = O(b_{B(t)}^2 )$.
92 251 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 251 adas
		\item If $A$ is $\exists x^\safe . B(x) $ then
94 251 adas
		\(
95 251 adas
		\wit{\vec u ; \vec x}{A}
96 251 adas
		\dfn
97 251 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 251 adas
		\)
99 251 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 251 adas
		We may set $b_A = O(b_B + q )$.
101 251 adas
	\end{itemize}
102 251 adas
%	\[
103 251 adas
%	\begin{array}{rcl}
104 251 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 251 adas
%	\smallskip
106 251 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 251 adas
%	\smallskip
108 251 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 251 adas
%	\smallskip
110 251 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 251 adas
%	\\
112 251 adas
%	\smallskip
113 251 adas
%	\wit{\vec u ; \vec x}{\forall u \leq |t(\vec u;)| . A(x)} (l , \vec u ; \vec x, w) & \dfn &
114 251 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 251 adas
%	\end{array}
116 251 adas
%	\]
117 251 adas
%	\anupam{need length bounding for sharply bounded quantifiers}
118 251 adas
\end{definition}
119 251 adas
120 251 adas
121 251 adas
122 251 adas
\begin{proposition}
123 251 adas
	\label{prop:wit-rfn}
124 251 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 251 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 251 adas
\end{proposition}
127 251 adas
128 251 adas
129 251 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 251 adas
131 251 adas
132 251 adas
\begin{lemma}
133 251 adas
		[Proof interpretation]
134 251 adas
		\label{lem:proof-interp}
135 251 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 251 adas
	there are $\bc (\charfn{}{i-1})$ functions $ f^\pi_B (\vec u ; \vec x , w)$ for $B\in\Delta$ such that
137 251 adas
	% such that, for any $l, \vec u ; \vec x  , w$, we have:
138 251 adas
	\[
139 251 adas
%	\vec a^\nu = \vec u ,
140 251 adas
%	\vec b^\sigma = \vec u,
141 251 adas
%	\bigwedge\limits_{A \in \Gamma} \wit{\vec u ; \vec x}{ A} (l, \vec u ; \vec x , w_A) =1
142 251 adas
%	\ \implies \
143 251 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 251 adas
	\begin{array}{rl}
145 251 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 251 adas
\noalign{\medskip}
147 251 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 251 adas
	\end{array}
149 251 adas
	\]
150 251 adas
	for some polynomial $p$.
151 251 adas
%	\anupam{Need $\vec w \mode p(l)$ for some $p$.}
152 251 adas
%	\anupam{$l$ may occur freely in the programs $f^\pi_B$}
153 251 adas
\end{lemma}
154 251 adas
155 251 adas
156 251 adas
157 251 adas
158 251 adas
Now we can prove the soundness result:
159 251 adas
160 251 adas
	\begin{proof}
161 251 adas
		[Proof sketch of Thm.~\ref{thm:soundness} from Lemma~\ref{lem:proof-interp}]
162 251 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 251 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 251 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 251 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 251 adas
	\end{proof}