Statistiques
| Révision :

root / CSL17 / soundness.tex @ 213

Historique | Voir | Annoter | Télécharger (8,07 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 173 adas
74 176 adas
\begin{proposition}
75 176 adas
	$\charfn{}{A} (l, \vec u ; \vec x)$ is the characteristic function of $A (\vec u \mode l ; \vec x \mode l)$.
76 176 adas
\end{proposition}
77 176 adas
78 173 adas
\begin{definition}
79 173 adas
	[Length bounded witness function]
80 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$.
81 173 adas
	\[
82 173 adas
	\begin{array}{rcl}
83 173 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$} \\
84 173 adas
	\smallskip
85 173 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)  )  \\
86 173 adas
	\smallskip
87 173 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)  )  \\
88 173 adas
	\smallskip
89 173 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 )
90 173 adas
	\\
91 173 adas
	\smallskip
92 173 adas
	\Wit{\vec u ; \vec x}{\forall u \leq |t(\vec u;)| . A(x)} (l , \vec u ; \vec x, w) & \dfn &
93 173 adas
	\forall u \leq |t(\vec u;)| . \Wit{u , \vec u ; \vec x}{A(u)} (l, u , \vec u ; \vec x, \beta(u;w) )
94 173 adas
	\end{array}
95 173 adas
	\]
96 173 adas
\end{definition}
97 173 adas
98 173 adas
\anupam{may as well use a single witness variable since need it for sharply bounded quantifiers anyway.}
99 173 adas
100 202 adas
\anupam{sharply bounded case obtained by sharply bounded lemma}
101 202 adas
102 202 adas
103 202 adas
\begin{proposition}
104 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.
105 202 adas
	\anupam{check statement, need proof-theoretic version?}
106 202 adas
\end{proposition}
107 202 adas
108 202 adas
In order to prove Thm.~\ref{thm:soundness} we need the following lemma:
109 202 adas
110 202 adas
111 202 adas
\begin{lemma}
112 202 adas
	[Proof interpretation]
113 202 adas
	\label{lem:proof-interp}
114 202 adas
	For any $\arith^i$ proof of a $\Sigma^\safe_i$ sequent $\Gamma \seqar \Delta$, there is a $\mubci{i-1}$ function $f$ such that, for any $l, \vec u , \vec x  , w$, we have:
115 202 adas
	\[
116 202 adas
	\wit{\vec u ; \vec x}{ \wedge \Gamma } (l, \vec u ; \vec x , w)
117 202 adas
	\quad \leq \quad
118 202 adas
	\wit{\vec u ; \vec x}{\vee \Delta} (l, \vec u ; \vec x , f(l, \vec u ; \vec x , w))
119 202 adas
	\]
120 202 adas
	\anupam{maybe want $f(\vec u \mode l ; \vec x \mode l , w)$}
121 205 adas
	\anupam{Also, perhaps split for formulae of $\Gamma$, to avoid lots of (de)coding}
122 202 adas
\end{lemma}
123 202 adas
\begin{proof}
124 202 adas
	We assume the proof, say $\pi$, is in integer positive free-cut free form, by the results from the previous section.
125 202 adas
	This means that the predicate $\charfn{\vec u ; \vec x}{A}$ is defined for each formula $A(\vec u ; \vec x)$ occurring in a proof, so the theorem is well-stated.
126 202 adas
	We define the function $f$ inductively, by considering the various final rules of $\pi$.
127 202 adas
128 202 adas
	\paragraph*{Negation}
129 202 adas
	Can assume only on atomic formulae, so no effect.
130 202 adas
	\paragraph*{Quantifiers}
131 202 adas
	\anupam{Do $\exists$-right and $\forall$-right, left rules are symmetric.}
132 202 adas
133 202 adas
	\paragraph*{Contraction}
134 202 adas
	Left contraction simply duplicates an argument, whereas right contraction requires a conditional on a $\Sigma^\safe_i$ formula.
135 202 adas
136 202 adas
	\paragraph*{Induction}
137 202 adas
	Corresponds to safe recursion on notation.
138 205 adas
	Suppose final step is:
139 205 adas
	\[
140 205 adas
	\vlinf{\pind}{}{\Gamma , \normal (t) , A(0) \seqar A(t) , \Delta}{ \left\{\Gamma , \normal (u) , A(u) \seqar A(\succ i u ) , \Delta \right\}_{i=0,1} }
141 205 adas
	\]
142 205 adas
	For simplicity we will assume $\Delta $ is empty, which we can always do by Prop.~\todo{DO THIS!}
143 205 adas
144 205 adas
		Now, by the inductive hypothesis, we have functions $h_i$ such that:
145 205 adas
		\[
146 205 adas
		\wit{u , \vec u ; \vec x}{LHS} (l , u , \vec u ; \vec x ,  w) =1
147 205 adas
		\quad \implies \quad
148 205 adas
		\wit{u , \vec u ; \vec x}{RHS} (l , u , \vec u ; \vec x ,  h_i (u \mode l , \vec u \mode l ; \vec x \mode l) ) =1
149 205 adas
		\]
150 205 adas
	We define $ f$ as follows:
151 205 adas
	\[
152 205 adas
	\begin{array}{rcl}
153 205 adas
	 f (0 , \vec u ; \vec x, \vec w^\Gamma , w^{\normal (t)} , w^{A(0)}) & \dfn &  w^{A(0)} \\
154 205 adas
	 f( \succ i u , \vec u ; \vec x , \vec w^\Gamma , w^{\normal (t)} , w^{A(0)}) & \dfn &
155 205 adas
	 h_i (u , \vec u ; \vec x , \vec w^\Gamma w^{\normal (?)}, f(u , \vec u ; \vec x , \vec w ))
156 205 adas
	\end{array}
157 205 adas
	\]
158 205 adas
	\anupam{Must check above, could be problems in recursive case.}
159 205 adas
	\anupam{Wait, should $\normal (t)$ have a witness? Also there is a problem like Patrick said for formulae like: $\forall x^\safe . \exists y^\safe. (\normal (z) \cor \cnot \normal (z))$, where $z$ is $y$ or otherwise.}
160 202 adas
\end{proof}
161 202 adas
162 202 adas
We are now ready to prove the soundness theorem.
163 202 adas
164 202 adas
\begin{proof}
165 202 adas
	[Proof of Thm.~\ref{thm:soundness} from Lemma~\ref{lem:proof-interp}]
166 202 adas
	(watch out for dependence on $l$, try do without)
167 202 adas
168 202 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,
169 202 adas
	\[
170 202 adas
	\normal (\vec u ) \seqar \exists x^\normal . A(\vec u , x ;)
171 202 adas
	\]
172 202 adas
	whence, by Lemma~\ref{lem:proof-interp}, we have a $\mubci{i-1}$ function $f$ such that:
173 202 adas
	\[
174 202 adas
	\vec u \mode l = \vec a \mode l
175 202 adas
	\quad \implies \quad
176 205 adas
	\wit{\vec u ; }{A} ( l , \vec u , f(\vec u \mode l;) ) =1
177 202 adas
	\]
178 205 adas
179 202 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.
180 202 adas
\end{proof}