Statistiques
| Révision :

root / CSL17 / tech-report / sequence-coding.tex @ 255

Historique | Voir | Annoter | Télécharger (3,62 ko)

1 251 adas
\section{A safe encoding of sequences and computations}
2 251 adas
3 251 adas
Before we can prove the completeness result for our theory, we need to address an apparent problem with usual first-order encodings of computations.
4 251 adas
Recalling the polychecking lemma, we notice that for usual encodings of sequences of natural numbers it is not possible to `decode' sequences as a safe input.
5 251 adas
Otherwise phrased, we would like to implement G\"odel's beta functions with the sorting $\beta (i;x)$, returning the $i$th element of the sequence encoded by $x$.
6 251 adas
However, for $x$ to be safe here, we must only require $\poly (i)$ rightmost bits of $x$ to determine a finite number of rightmost bits of $\beta(i;x)$.
7 251 adas
If $x$ is construed as a concatenation of its elements, with distinguished delimiters, or similarly, accessing the $i$th element cannot have this property since we do not have any information about previously occurring elements, which may be very large.
8 251 adas
9 251 adas
In bounded arithmetic this problem is avoided due to the fact that we know in advance that computations can be polynomially bounded both in length and size of elements, since we are in PH by Parikh's theorem.
10 251 adas
Due to the polymax bounded property we actually have a similar situation here, although we would naturally prefer to avoid introducing explicit bounds, favouring that all complexity control is managed by safety and normality of arguments.
11 251 adas
12 251 adas
The answer is to use a slightly modified encoding of sequences, based on a simple (and well known) idea.
13 251 adas
For the sake of example, if we wanted to simply pair two arguments safely, we could just interleave their bits and satisfy the polychecking lemma, regardless of the size of the two arguments.
14 251 adas
This is naturally scalable to any $k$-tuple of arguments, all safe.
15 251 adas
16 251 adas
For an arbitrary sequence we cannot use quite the same technique since length is not determined in advance.
17 251 adas
However, by using a slightly more asymmetric encoding we can still access all required bits in quadratic modulus rather than linear, appealing to a `zig-zag' technique.
18 251 adas
19 251 adas
\anupam{Every number is an infinite ultimately 0 sequence.}
20 251 adas
21 251 adas
22 251 adas
\begin{definition}
23 251 adas
[Sequence (de)coding]
24 251 adas
We define the function $\beta\bit (i,j;x,b)$, intuitively meaning ``the $j$th bit of the $i$th element of $x$ is $b$'' as $\bit \left( \frac{1}{2} (i+j)(i+j+1) +i ; x , b \right)$.
25 251 adas
26 251 adas
We now define \emph{length-bounded $\beta$ function} $\beta(i,l;x,b)$ as:
27 251 adas
\[
28 251 adas
\forall j \leq l . \bigvee\limits_{b=0,1} ( \beta\bit (i,j;x,b) \cand \bit (j;y,b) )
29 251 adas
\]
30 251 adas
\end{definition}
31 251 adas
32 251 adas
Our aim is to construct sequences formed from old sequences and new elements.
33 251 adas
Namely we want the following result, which says that, given a number $x$ and a sequence $y$, there is another sequence $z$ formed from prepending $x$ to $y$:
34 251 adas
\begin{proposition}
35 251 adas
	[In $\arith$]
36 251 adas
	$$
37 251 adas
	\forall x^\safe, y^\safe. \exists z^\safe . \forall i^\normal\leq k, j^\normal\leq l .
38 251 adas
	\left(
39 251 adas
	\begin{array}{rl}
40 251 adas
	& \bigwedge\limits_{b=0,1} (\bit(j;x,b) \cimp \beta (0,j;z,b) ) \\
41 251 adas
	\cand & i>0 \cimp \bigwedge\limits_{b=0,1} (\beta(i-1, j;y,b) \cimp \beta(i,j;z,b) )
42 251 adas
	\end{array}
43 251 adas
	\right)
44 251 adas
	$$
45 251 adas
\end{proposition}
46 251 adas
47 251 adas
To prove this we will need two lemmata.
48 251 adas
The first says we can construct a sequence whose $0$th element is $x$ and every other element is $0$.
49 251 adas
50 251 adas
\begin{lemma}
51 251 adas
[In $\arith$]
52 251 adas
$\forall l . \exists z . (\beta (0,|l| ; z , x) \cand \forall i \leq |k| . \beta(i,|l|;z,0) )$.
53 251 adas
\end{lemma}
54 251 adas
\begin{proof}
55 251 adas
	Length induction on $l$.
56 251 adas
\end{proof}
57 251 adas
58 251 adas
The second says we can prepend $0$ to any sequence:
59 251 adas
60 251 adas
\begin{lemma}
61 251 adas
	[In $\arith$]
62 251 adas
	$\forall x . \exists z . ( \beta(0,|l|;z,0) \cand \forall i\in (0,|k|] . \exists y . (\beta (i, |l| ; z,y) \cand \beta(i-1,|l|;x,y) )   )$
63 251 adas
\end{lemma}
64 251 adas
\begin{proof}
65 251 adas
	Length induction on $l$.
66 251 adas
\end{proof}