Statistiques
| Révision :

root / CSL17 / soundness.tex @ 223

Historique | Voir | Annoter | Télécharger (8,78 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 172 adas
[Length bounded basic functions]
19 172 adas
We define \emph{length-bounded equality}, $\eq(l;x,y)$ as the characteristic function of the predicate:
20 172 adas
\[
21 172 adas
x \mode l = y \mode l
22 172 adas
\]
23 201 adas
which is definable by safe recursion on $l$:
24 201 adas
\[
25 201 adas
\begin{array}{rcl}
26 201 adas
\eq (0 ; x,y) & \dfn & \equivfn (;\bit (0;x),\bit(0;y) ) \\
27 201 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 201 adas
\end{array}
29 201 adas
\]
30 202 adas
We also define length-bounded inequality as:
31 202 adas
\[
32 202 adas
\begin{array}{rcl}
33 202 adas
\leqfn (0 ; x ,y) & \dfn & \cimp (; \bit (0;x), \bit (0;y) ) \\
34 202 adas
\leqfn (\succ i l ; x,y) & \dfn & \orfn ( ; <(\bit (\succ i l ; x) , \bit(\succ i l ; y) ) , \andfn (; \equivfn (\bit (\succ i l ; x) , \bit(\succ i l ; y)) , \leqfn (l;x,y ) ) )
35 202 adas
\end{array}
36 202 adas
\]
37 172 adas
\end{definition}
38 172 adas
39 172 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.}
40 172 adas
41 172 adas
Notice that $\eq$ is a polymax bounded polyomial checking function on its normal input, and so can be added to $\mubc$ without problems.
42 172 adas
43 172 adas
\begin{definition}
44 172 adas
	[Length bounded characteristic functions]
45 172 adas
	We define $\mubci{}$ programs $\charfn{}{A} (l , \vec u; \vec x)$, parametrised by a formula $A(\vec u ; \vec x)$, as follows.
46 172 adas
%	If $A$ is a $\Pi_{i}$ formula then:
47 172 adas
	\[
48 172 adas
	\begin{array}{rcl}
49 202 adas
	\charfn{}{s\leq t} (l, \vec u ; \vec x) & \dfn & \leqfn(l;s,t) \\
50 172 adas
	\smallskip
51 202 adas
	\charfn{}{s=t} (l, \vec u ; \vec x) & \dfn & \eq(l;s,t) \\
52 172 adas
	\smallskip
53 202 adas
	\charfn{}{\neg A} (l, \vec u ; \vec x) & \dfn & \neg (;\charfn{}{A}(l , \vec u ; \vec x)) \\
54 172 adas
	\smallskip
55 202 adas
	\charfn{}{A\cor B} (l, \vec u ; \vec x ) & \dfn & \cor (; \charfn{}{A} (l, \vec u ; \vec x , w), \charfn{}{B} (\vec u ;\vec x) ) \\
56 172 adas
	\smallskip
57 202 adas
	\charfn{}{A\cand B} (l, \vec u ; \vec x ) & \dfn & \cand(; \charfn{}{A} (l, \vec u ; \vec x , w), \charfn{}{B} (\vec u ;\vec x) ) \\
58 172 adas
	\smallskip
59 202 adas
	\charfn{}{\exists x^\safe . A(x)} (l, \vec u ;\vec x) & \dfn & \begin{cases}
60 202 adas
	1 & \exists x^\safe . \charfn{}{A(x)} (l, \vec u ;\vec x , x) = 1 \\
61 172 adas
	0 & \text{otherwise}
62 172 adas
	\end{cases} \\
63 172 adas
	\smallskip
64 202 adas
	\charfn{}{\forall x^\safe . A(x)} (l, \vec u ;\vec x ) & \dfn &
65 172 adas
	\begin{cases}
66 173 adas
	0 & \exists x^\sigma. \charfn{}{ A(x)} (l, \vec u; \vec x , x) = 0 \\
67 172 adas
	1 & \text{otherwise}
68 172 adas
	\end{cases}
69 172 adas
	\end{array}
70 172 adas
	\]
71 173 adas
\end{definition}
72 173 adas
73 219 adas
\anupam{Above and below definitions need to be with respect to a typing of variables which terms respect.}
74 173 adas
75 219 adas
76 176 adas
\begin{proposition}
77 176 adas
	$\charfn{}{A} (l, \vec u ; \vec x)$ is the characteristic function of $A (\vec u \mode l ; \vec x \mode l)$.
78 176 adas
\end{proposition}
79 176 adas
80 173 adas
\begin{definition}
81 173 adas
	[Length bounded witness function]
82 173 adas
	We now define $\Wit{\vec u ; \vec x}{A} (l , \vec u ; \vec x)$ for a $\Sigma_{i+1}$-formula $A$ with free variables amongst $\vec u; \vec x$.
83 219 adas
	For a $\Sigma^\safe_i$ formula $A$ with free variables amongst $(\vec u ; \vec x)$, with $\vec x$ occurring only hereditarily safe in terms, we define the \emph{length-bounded witness function} $\wit{\vec u ; \vec x}{A} (l, \vec u ; \vec x , w)$ and its \emph{bounding polynomial} $b_A (l)$ as follows:
84 219 adas
	\begin{itemize}
85 219 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 )$.
86 219 adas
		\item If $A$ is $B \cor C$ then
87 219 adas
		\[
88 219 adas
		\wit{\vec u ; \vec x}{A} (l, \vec u ;\vec x , w)
89 219 adas
		\quad \dfn \quad
90 219 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 ) )  )
91 219 adas
		\]
92 219 adas
		and we may set $b_A = O(b_B + b_C)$.
93 219 adas
		\item Similarly if $A $ is $B \cand C$, but with $\andfn$ in place of $\orfn$.
94 219 adas
%		\item If $A$ is $B \cand C$ then
95 219 adas
%			\[
96 219 adas
%			\wit{\vec u ; \vec x}{A} (l, \vec u ;\vec x , w)
97 219 adas
%			\quad \dfn \quad
98 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 ) )  )
99 219 adas
%			\]
100 219 adas
%			and we may set $b_A = O(b_B + b_C)$.
101 219 adas
		\item If $A$ is $\forall u \leq |t(\vec u;)| . B(u)$ then
102 219 adas
		\[
103 219 adas
		\wit{\vec u ; \vec x}{A}
104 219 adas
		\quad \dfn\quad
105 219 adas
		\forall u\normal \leq |t|.
106 219 adas
		\wit{u, \vec u ; \vec x}{B(u)} (l, u, \vec u ; \vec x , \beta( b_{B(t)} (l) , u ; w ) )
107 219 adas
		\]
108 219 adas
		appealing to Lemma~\ref{lem:sharply-bounded-recursion}, where we may set $b_A = O(b_{B(t)}^2 )$.
109 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|$.
110 219 adas
		\item If $A$ is $\exists x^\safe . B(x) $ then
111 219 adas
		\[
112 219 adas
		\wit{\vec u ; \vec x}{A}
113 219 adas
		\quad \dfn \quad
114 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 ))
115 219 adas
		\]
116 219 adas
		where $q$ is obtained by the polychecking and bounded minimisation lemmata for $\wit{\vec u ; \vec x , x}{B(x)}$.
117 219 adas
		We may set $b_A = O(b_B + q )$.
118 219 adas
	\end{itemize}
119 219 adas
%	\[
120 219 adas
%	\begin{array}{rcl}
121 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$} \\
122 219 adas
%	\smallskip
123 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)  )  \\
124 219 adas
%	\smallskip
125 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)  )  \\
126 219 adas
%	\smallskip
127 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 )
128 219 adas
%	\\
129 219 adas
%	\smallskip
130 219 adas
%	\wit{\vec u ; \vec x}{\forall u \leq |t(\vec u;)| . A(x)} (l , \vec u ; \vec x, w) & \dfn &
131 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) )
132 219 adas
%	\end{array}
133 219 adas
%	\]
134 219 adas
%	\anupam{need length bounding for sharply bounded quantifiers}
135 173 adas
\end{definition}
136 173 adas
137 173 adas
\anupam{may as well use a single witness variable since need it for sharply bounded quantifiers anyway.}
138 173 adas
139 202 adas
\anupam{sharply bounded case obtained by sharply bounded lemma}
140 202 adas
141 202 adas
142 202 adas
\begin{proposition}
143 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.
144 202 adas
	\anupam{check statement, need proof-theoretic version?}
145 202 adas
\end{proposition}
146 202 adas
147 219 adas
By the polychecking lemma, we can assume that such a $w$ is bounded by some polynomial in $l$.
148 219 adas
149 202 adas
In order to prove Thm.~\ref{thm:soundness} we need the following lemma:
150 202 adas
151 202 adas
152 202 adas
\begin{lemma}
153 219 adas
		[Proof interpretation]
154 219 adas
		\label{lem:proof-interp}
155 219 adas
	From a normal form \todo{define, prove exists} $\arith^i$ proof $\pi$ of a $\Sigma^\safe_i$ sequent $\normal(\vec u), \safe(\vec x) , \Gamma  \seqar \Delta$
156 219 adas
	there are $\mubci{i-1}$ functions $\vec f^\pi (\vec u ; \vec x , w)$ (where $\vec f^\pi = (f^\pi_B)_{B\in\Delta}$) such that, for any $l, \vec u ; \vec x  , w$, we have:
157 202 adas
	\[
158 219 adas
%	\vec a^\nu = \vec u ,
159 219 adas
%	\vec b^\sigma = \vec u,
160 219 adas
	\bigwedge\limits_{A \in \Gamma} \wit{\vec u ; \vec x}{ A} (l, \vec u ; \vec x , w_A) =1
161 219 adas
	\quad \implies \quad
162 219 adas
	\bigvee\limits_{B\in \Delta} \wit{\vec u ; \vec x}{B} (l, \vec u ; \vec x , f^\pi_B(\vec u \mode l ; \vec x \mode l, \vec w)) = 1
163 202 adas
	\]
164 219 adas
	\anupam{Need $\vec w \mode p(l)$ for some $p$.}
165 219 adas
	\anupam{$l$ may occur freely in the programs $f^\pi_B$}
166 202 adas
\end{lemma}
167 219 adas
168 222 adas
169 222 adas
\todo{Make statement above proper, with all bounds and moduli. I cut the proof to the appendix, maybe add sketch if space.}
170 222 adas
171 222 adas
From this lemma we can readily prove the soundness result:
172 202 adas
173 222 adas
	\begin{proof}
174 222 adas
		[Proof of Thm.~\ref{thm:soundness} from Lemma~\ref{lem:proof-interp}]
175 222 adas
		(watch out for dependence on $l$, try do without)
176 222 adas
177 222 adas
		Suppose $\arith^i \proves \forall \vec u^\normal . \exists x^\normal . A(\vec u ; x)$. Then by raising, inversion, free-variable normal forms, we have a proof of,
178 219 adas
		\[
179 222 adas
		\normal (\vec u ) \seqar \exists x^\normal . A(\vec u , x ;)
180 219 adas
		\]
181 222 adas
		whence, by Lemma~\ref{lem:proof-interp}, we have a $\mubci{i-1}$ function $f$ such that:
182 219 adas
		\[
183 222 adas
		\vec u \mode l = \vec a \mode l
184 219 adas
		\quad \implies \quad
185 222 adas
		\wit{\vec u ; }{A} ( l , \vec u , f(\vec u \mode l;) ) =1
186 219 adas
		\]
187 222 adas
188 222 adas
		Now it suffices to choose an $l$ bigger that both all the $\vec u$ and $f(\vec u)$, which is a polynomial in $\vec u$ by the polymax bounding lemma.
189 222 adas
	\end{proof}