Statistiques
| Révision :

root / CSL17 / arithmetic.tex @ 223

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

1 206 pbaillot
\section{An arithmetic for the polynomial hierarchy}\label{sect:arithmetic}
2 182 pbaillot
%Our base language is $\{ 0, \succ{} , + , \times, \smsh , |\cdot| , \leq \}$.
3 220 adas
Our base language consists of constant and function symbols $\{ 0, \succ{} , + , \times, \smsh , |\cdot|, \hlf{}.\}$ and predicate symbols
4 220 adas
 $\{\leq, \safe, \normal \}$. The function symbols are interpreted in the intuitive way, with $|x|$ denoting the length of $x$ seen as a binary string, and $\smash(x,y)$ denoting $2^{|x||y|}$, so a string of length $|x||y|+1$.
5 220 adas
 We may write $\succ{0}(x)$ for $2\cdot x$, $\succ{1}(x)$ for $\succ{}(2\cdot x)$, and $\pred (x)$ for $\hlf{x}$, to better relate to the $\bc$ setting.
6 218 pbaillot
7 220 adas
We consider formulas of classical first-order logic, over $\neg$, $\cand$, $\cor$, $\forall$, $\exists$, along with usual shorthands and abbreviations.
8 220 adas
%The formula $A \cimp B$ will be a notation for $\neg A \cor B$.
9 220 adas
%We will also use as shorthand notations:
10 220 adas
%$$ (s=t) = (s\leq t) \cand (t\leq s), \quad (s\neq t) = \neg(s=t).$$
11 220 adas
\textit{Atomic formulas} formulas are of the form $(s\leq t)$, for terms $s,t$.
12 220 adas
 We will assume, without loss of generality, that formulas are in \textit{De Morgan normal form}, that is to say that in formulas negation can only occur on atomic formulas, and that there is not any occurrence of a subformula of the form $\neg \neg A$.
13 220 adas
 We write $\exists x^{N_i} . A$ or $\forall x^{N_i} . A$ for $\exists x . (N_i (x) \cand A)$ and $\forall x . (N_i (x) \cimp A)$ respectively.
14 156 adas
15 183 pbaillot
16 220 adas
The theories we introduce are directly inspired from bounded arithmetic, namely the theories $S^i_2$.
17 220 adas
We include a similar set of axioms for direct comparison, although in our setting these are not minimal.
18 220 adas
Indeed, $\#$ can be defined using induction in our setting.
19 183 pbaillot
20 220 adas
The $\basic$ axioms of bounded arithmetic give the inductive definitions and interrelationships of the various function symbols.
21 220 adas
It also states the fundamental algebraic properties, i.e.\ $(0,\succ{ } )$ is a free algebra, and, for us, it will also give us certain `typing' information for our function symbols based on their $\bc$ specification, with safe inputs ranging over $\safe$ and normal ones over $\normal$.
22 220 adas
\begin{definition}
23 220 adas
	[Basic theory]
24 220 adas
	The theory $\basic$ consists of the axioms from Appendix \ref{appendix:arithmetic}.
25 220 adas
	\end{definition}
26 168 adas
27 172 adas
28 179 pbaillot
Notation: if $\vec t=t_0,\dots, t_k$, we will denote as $\safe(\vec t)$ the sequence of formulas $\safe(t_0),\dots, \safe(t_k)$. Similarly for $\normal(\vec t)$.
29 179 pbaillot
30 172 adas
\begin{definition}
31 172 adas
[Derived functions and notations]
32 172 adas
We write $1,2,3,\dots$ for the terms $\succ{} 0, \succ{} \succ{} 0, \succ{} \succ{} \succ{} 0 \dots$, and frequently omit the $\times$ symbol.
33 172 adas
We define the functions $\succ 0 x , \succ 1 x$ as $2 x$ and $2x +1$ respectively.
34 176 adas
35 176 adas
Need $bit$, $\beta$ , $\pair{}{}{}$.
36 172 adas
\end{definition}
37 172 adas
38 157 adas
(Here use a variation of S12 with sharply bounded quantifiers and safe quantifiers)
39 157 adas
40 157 adas
Use base theory + sharply bounded quantifiers.
41 157 adas
42 157 adas
43 157 adas
\begin{definition}
44 157 adas
[Quantifier hierarchy]
45 176 adas
$\Sigma^\safe_0 = \Pi^\safe_0 $ is the set of formulae whose only quantifiers are sharply bounded.
46 176 adas
We define $\Sigma^\safe_{i+1}$ as the closure of $\Pi^\safe_i $ under $\cor, \cand $, safe existentials and sharply bounded quantifiers.
47 176 adas
We define $\Pi^\safe_{i+1}$ as the closure of $\Sigma^\safe_i $ under $\cor, \cand $, safe universals and sharply bounded quantifiers.
48 157 adas
\end{definition}
49 157 adas
50 168 adas
51 168 adas
\anupam{Collection principles for prenexing? Otherwise need to add closure under sharply bounded quantifiers.}
52 177 pbaillot
\begin{definition}\label{def:polynomialinduction}
53 177 pbaillot
[Polynomial induction]
54 177 pbaillot
The \emph{polynomial induction} axiom schema, $\pind$, consists of the following axioms,
55 177 pbaillot
\[
56 177 pbaillot
A(0)
57 177 pbaillot
\cimp (\forall x^{\normal} . ( A(x) \cimp A(\succ{0} x) ) )
58 177 pbaillot
\cimp  (\forall x^{\normal} . ( A(x) \cimp A(\succ{1} x) ) )
59 177 pbaillot
\cimp  \forall x^{\normal} . A(x)
60 177 pbaillot
\]
61 177 pbaillot
for each formula $A(x)$.
62 168 adas
63 177 pbaillot
For a class $\Xi$ of formulae, $\cax{\Xi}{\pind}$ denotes the set of induction axioms when $A(x) \in \Xi$.
64 168 adas
65 177 pbaillot
%We write $I\Xi$ to denote the theory consisting of $\basic$ and $\cax{\Xi}{\ind}$.
66 177 pbaillot
\end{definition}
67 177 pbaillot
68 177 pbaillot
69 178 pbaillot
\begin{definition}\label{def:ariththeory}
70 166 adas
Define the theory $\arith^i$ consisting of the following axioms:
71 166 adas
\begin{itemize}
72 166 adas
	\item $\basic$;
73 166 adas
	\item $\cpind{\Sigma^\safe_i } $:
74 166 adas
\end{itemize}
75 180 pbaillot
and an inference rule, called $\rais$, for closed formulas $\exists y^\normal . A$:
76 168 adas
\[
77 168 adas
 \dfrac{\forall \vec x^\normal . \exists  y^\safe .  A }{ \forall \vec x^\normal .\exists y^\normal . A}
78 168 adas
\]
79 157 adas
\end{definition}
80 182 pbaillot
\patrick{I think in the definition of  $\arith^i$ we should impose that the formulas considered are \textit{integer positive}, that is to say that the only negative occurrences of atoms $\safe(t)$, $\normal(t)$ are those occurring in $\forall^{\safe}$ and $\forall^{\normal}$.  Indeed I don't think this can be just proved to be a consequence of a kind of 'normal form' of proofs, as we had discussed (see sect 4.4)}
81 182 pbaillot
82 168 adas
\anupam{In induction,for inductive cases, need $u\neq 0$ for $\succ 0$ case.}
83 157 adas
84 194 adas
It is often useful for us to work with \emph{length-induction}, which is equivalent to polynomial induction and well known from bounded arithmetic:
85 194 adas
\begin{proposition}
86 194 adas
	[Length induction]
87 194 adas
	The axiom schema of formulae,
88 194 adas
\begin{equation}
89 194 adas
\label{eqn:lind}
90 194 adas
	( A(0) \cand \forall x^\normal . (A(x) \cimp A(\succ{} x)) ) \cimp \forall x^\safe. A(|x|)
91 194 adas
\end{equation}
92 194 adas
	for formulae $A \in \Sigma^\safe_i$
93 194 adas
	is equivalent to $\cpind{\Sigma^\safe_i}$.
94 194 adas
\end{proposition}
95 194 adas
\begin{proof}
96 194 adas
	Suppose we have $A(0)$ and $A(a) \cimp A(\succ{} a)$ for each $a \in \normal$.
97 194 adas
	Then, by $\basic$, we have that $A(|a|) \cimp A(|2a|)$ and $A(|a|) \cimp A(|2a+1|)$ for each $a \in \normal$, whence we may conclude $\forall x. A(|x|)$ by polynomial induction on $A(|x|)$.
98 194 adas
\end{proof}
99 194 adas
100 194 adas
Let us refer to the axiom schema in \eqref{eqn:lind} as $\clind{\mathcal C}$, when $A \in \mathcal C$.
101 194 adas
We will freely use this in place of polynomial induction whenever it is convenient.
102 194 adas
103 157 adas
104 168 adas
105 168 adas
106 199 pbaillot
\subsection{Graphs of some basic functions}\label{sect:graphsbasicfunctions}
107 214 pbaillot
%Todo: $+1$,
108 168 adas
109 214 pbaillot
We say that a function $f$ is represented by a formula $A_f$ if the arithmetic can prove (in the forthcoming proof system) a formula of the form $\forall ^{\normal} \vec u, \forall ^{\safe} x, \exists^{\safe}! y. A_f$. The variables $\vec u$ and $\vec x$ can respectively be thought of as normal and safe arguments of $f$, and $y$ is the result of $f(\vec u; \vec x)$.
110 214 pbaillot
111 214 pbaillot
Let us give a few examples of formulas representing basic functions.
112 214 pbaillot
\begin{itemize}
113 215 pbaillot
\item Projection $\pi_k^{m,n}$: $\forall^{\normal} u_1, \dots, u_m,  \forall^{\safe} x_{m+1}, \dots, x_{m+n}, \exists^{\safe} y. y=x_k$.
114 215 pbaillot
\item Successor $\succ{}$: $\forall^{\safe} x, \exists^{\safe} y. y=x+1.$. The formulas for the binary successors $\succ{0}$, $\succ{1}$ and the constant functions $\epsilon^k$ are defined in a similar way.
115 215 pbaillot
\item Predecessor $p$:   $\forall^{\safe} x, \exists^{\safe} y. (x=\succ{0} y \cor x=\succ{1} y \cor (x=\epsilon \cand y= \epsilon)) .$
116 214 pbaillot
\item Conditional $C$:
117 214 pbaillot
$$\begin{array}{ll}
118 214 pbaillot
\forall^{\safe} x, y_{\epsilon}, y_0, y_1, \exists^{\safe} y. & ((x=\epsilon)\cand (y=y_{\epsilon})\\
119 214 pbaillot
                                                                                                   & \cor( \exists^{\safe}z.(x=\succ{0}z) \cand (y=y_0))\\
120 214 pbaillot
                                                                                                   & \cor( \exists^{\safe}z.(x=\succ{1}z) \cand (y=y_1)))\
121 214 pbaillot
\end{array}
122 214 pbaillot
$$
123 216 pbaillot
\item Addition:
124 216 pbaillot
$\forall^{\safe} x, y,  \exists^{\safe} z. z=x+y$.
125 217 pbaillot
\item Prefix:
126 217 pbaillot
127 217 pbaillot
  This is a predicate that we will need for technical reasons, in the completeness proof. The predicate $\pref(k,x,y)$ holds if the prefix of string $x$
128 217 pbaillot
  of length $k$ is $y$. It is defined as:
129 217 pbaillot
  $$\begin{array}{ll}
130 217 pbaillot
\exists^{\safe} z, \exists^{\normal} l\leq |x|. & (k+l= |x|\\
131 217 pbaillot
                                                                                                   & \cand \; |z|=l\\
132 217 pbaillot
                                                                                                   & \cand \; x=y\smsh(2,l)+z)
133 217 pbaillot
                                                                                                   \end{array}
134 217 pbaillot
$$
135 217 pbaillot
\item The following predicates will also be needed in proofs:
136 217 pbaillot
137 217 pbaillot
$\zerobit(x,k)$ (resp. $\onebit(x,k)$) holds iff the $k$th bit of $x$ is 0 (resp. 1). The predicate $\zerobit(x,k)$  can be
138 217 pbaillot
defined by:
139 217 pbaillot
$$ \exists^{\safe} y.(\pref(k,x,y) \cand C(y,0,1,0)).$$
140 214 pbaillot
\end{itemize}
141 214 pbaillot
142 215 pbaillot
143 168 adas
144 168 adas
145 168 adas
\subsection{A sequent calculus presentation}
146 168 adas
147 221 adas
 We denote sequence as $\Gamma \seqar \Delta$ where $\Gamma$, $\Delta$ are multi sets of formulas. The sequent calculus rules are displayed on Fig. \ref{fig:sequentcalculus} in Appendix~\ref{sect:app-sequent-calculus}.
148 179 pbaillot
149 221 adas
%We consider \emph{systems} of `nonlogical' rules extending this sequent calculus, which we write as follows,
150 221 adas
% \[
151 221 adas
% \begin{array}{cc}
152 221 adas
%    \vlinf{(R)}{}{ \Gamma , \Sigma' \seqar \Delta' , \Pi  }{ \{\Gamma , \Sigma_i \seqar \Delta_i , \Pi \}_{i \in I} }
153 221 adas
%\end{array}
154 177 pbaillot
%\]
155 221 adas
% where, in each rule $(R)$, $I$ is a finite possibly empty set (indicating the number of premises) and we assume the following conditions and terminology:
156 221 adas
% \begin{enumerate}
157 221 adas
% \item In $(R)$ the formulas of $\Sigma', \Delta'$  are called \textit{principal}, those of $\Sigma_i, \Delta_i$ are called \textit{active}, and those of
158 221 adas
%$ \Gamma,  \Pi$ are called \textit{context formulas}.
159 221 adas
%\item Each rule $(R)$ comes with a list $a_1$, \dots, $a_k$ of eigenvariables such that each $a_j$ appears in exactly one $\Sigma_i, \Delta_i$ (so in some active formulas of exactly one premise)  and does not appear in  $\Sigma', \Delta'$ or $ \Gamma,  \Pi$.
160 221 adas
%    \item A system $\mathcal{S}$ of rules must be closed under substitutions of free variables by terms (where these substitutions do not contain the eigenvariables $a_j$ in their domain or codomain).
161 221 adas
%   \end{enumerate}
162 221 adas
%
163 221 adas
%%The distinction between modal and nonmodal formulae in $(R)$ induces condition 1
164 221 adas
% Conditions 2 and 3 are standard requirements for nonlogical rules, independently of the logical setting, cf.\ \cite{Beckmann11}. Condition 2 reflects the intuitive idea that, in our nonlogical rules, we often need a notion of \textit{bound} variables in the active formulas (typically for induction rules), for which we rely on eigenvariables. Condition 3 is needed for our proof system to admit elimination of cuts on quantified formulas.
165 177 pbaillot
%
166 221 adas
%%\begin{definition}
167 221 adas
%%[Polynomial induction]
168 221 adas
%%The \emph{polynomial induction} axiom schema, $\pind$, consists of the following axioms,
169 221 adas
%%\[
170 221 adas
%%A(0)
171 221 adas
%%\cimp (\forall x^{\normal} . ( A(x) \cimp A(\succ{0} x) ) )
172 221 adas
%%\cimp  (\forall x^{\normal} . ( A(x) \cimp A(\succ{1} x) ) )
173 221 adas
%%\cimp  \forall x^{\normal} . A(x)
174 221 adas
%%\]
175 221 adas
%%for each formula $A(x)$.
176 221 adas
%%
177 221 adas
%%For a class $\Xi$ of formulae, $\cax{\Xi}{\pind}$ denotes the set of induction axioms when $A(x) \in \Xi$.
178 221 adas
%%
179 221 adas
%%We write $I\Xi$ to denote the theory consisting of $\basic$ and $\cax{\Xi}{\ind}$.
180 221 adas
%%\end{definition}
181 177 pbaillot
%
182 221 adas
%As an example any axiom can be represented by such a nonlogical rule $(R)$, with no premise ($I=\emptyset$), $\Delta'$ equal to the axiom and $\Gamma=\Sigma'=\Pi$.
183 174 pbaillot
184 221 adas
We extend the purely logical calculus with certain non-logical rules and initial sequents corresponding to our theories $\arith^i$.
185 221 adas
 For instance the axiom $\pind$ of Def. \ref{def:polynomialinduction} is represented by the following rule:
186 177 pbaillot
\begin{equation}
187 177 pbaillot
\label{eqn:ind-rule}
188 177 pbaillot
\small
189 177 pbaillot
\vliinf{\pind}{}{ \normal(t) , \Gamma , A(0) \seqar A(t), \Delta }{ \normal(a) , \Gamma, A(a) \seqar A(\succ{0} a) , \Delta }{ \normal(a) , \Gamma, A(a) \seqar A(\succ{1} a) , \Delta  }
190 177 pbaillot
\end{equation}
191 177 pbaillot
where $I=2$ and  in all cases, $t$ varies over arbitrary terms and the eigenvariable $a$ does not occur in the lower sequent of the $\pind$ rule.
192 177 pbaillot
193 178 pbaillot
Similarly the $\rais$ inference rule of Def. \ref{def:ariththeory} is represented by the nonlogical rule:
194 177 pbaillot
 \[
195 177 pbaillot
 \begin{array}{cc}
196 179 pbaillot
    \vlinf{\rais}{}{  \normal(t_1), \dots, \normal(t_k) \seqar  \exists  y^\normal .  A }{  \normal(t_1), \dots, \normal(t_k) \seqar \exists  y^\safe .  A}
197 177 pbaillot
\end{array}
198 177 pbaillot
\]
199 179 pbaillot
200 179 pbaillot
%\patrick{In fact, I think we rather need the following nonlogical rule, which implies the previous one but is I guess more general:
201 179 pbaillot
%\[
202 179 pbaillot
% \begin{array}{cc}
203 179 pbaillot
%    \vlinf{\rais}{}{  \normal(t_1), \dots, \normal(t_k) \seqar  \normal(t) }{  \normal(t_1), \dots, \normal(t_k) \seqar \safe(t)}
204 179 pbaillot
%\end{array}
205 179 pbaillot
%\]
206 179 pbaillot
%}
207 179 pbaillot
208 179 pbaillot
The $\basic$ axioms are equivalent to the following nonlogical rules, that we will also designate by $\basic$:
209 179 pbaillot
\[
210 179 pbaillot
\small
211 179 pbaillot
\begin{array}{l}
212 179 pbaillot
\begin{array}{cccc}
213 179 pbaillot
\vlinf{}{}{\seqar \safe (0)}{}&
214 179 pbaillot
\vlinf{}{}{\safe(t) \seqar \safe(\succ{} t)}{}&
215 179 pbaillot
\vlinf{}{}{ \safe (t)   \seqar 0 \neq \succ{} t}{} &
216 179 pbaillot
\vlinf{}{}{\safe (s) , \safe (t)  , \succ{} s = \succ{} t\seqar s = t }{}\\
217 179 pbaillot
\end{array}
218 179 pbaillot
\\
219 179 pbaillot
\vlinf{}{}{\safe (t) \seqar t = 0 \cor \exists y^\safe . t = \succ{} y  }{}
220 179 pbaillot
\qquad
221 179 pbaillot
\vlinf{}{}{\safe(s), \safe(t) \seqar \safe(s+t) }{}\\
222 179 pbaillot
\vlinf{}{}{\normal (s), \safe(t) \seqar \safe(s \times t)  }{}
223 179 pbaillot
\qquad
224 179 pbaillot
\vlinf{}{}{\normal (s), \normal(t) \seqar \safe(s \smsh t)  }{}\\
225 180 pbaillot
\vlinf{}{}{\normal(t) \seqar \safe(t)  }{}
226 179 pbaillot
\end{array}
227 179 pbaillot
\]
228 179 pbaillot
229 179 pbaillot
 The sequent calculus for $\arith^i$ is that of Fig. \ref{fig:sequentcalculus} extended with the $\basic$,  $\cpind{\Sigma^\safe_i } $ and $\rais$ nonlogical rules.
230 179 pbaillot
231 222 adas
\todo{Present typed variable free-cut free form.}
232 222 adas
\anupam{I cut-and-pasted the rest of this section into appendices to save space. Move things back gradually.}