root / CSL17 / arithmetic.tex @ 225
Historique | Voir | Annoter | Télécharger (13,13 ko)
1 |
\section{An arithmetic for the polynomial hierarchy}\label{sect:arithmetic} |
---|---|
2 |
%Our base language is $\{ 0, \succ{} , + , \times, \smsh , |\cdot| , \leq \}$. |
3 |
Our base language consists of constant and function symbols $\{ 0, \succ{} , + , \times, \smsh , |\cdot|, \hlf{}.\}$ and predicate symbols |
4 |
$\{\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 |
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 |
|
7 |
We consider formulas of classical first-order logic, over $\neg$, $\cand$, $\cor$, $\forall$, $\exists$, along with usual shorthands and abbreviations. |
8 |
%The formula $A \cimp B$ will be a notation for $\neg A \cor B$. |
9 |
%We will also use as shorthand notations: |
10 |
%$$ (s=t) = (s\leq t) \cand (t\leq s), \quad (s\neq t) = \neg(s=t).$$ |
11 |
\textit{Atomic formulas} formulas are of the form $(s\leq t)$, for terms $s,t$. |
12 |
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 |
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 |
|
15 |
|
16 |
The theories we introduce are directly inspired from bounded arithmetic, namely the theories $S^i_2$. |
17 |
We include a similar set of axioms for direct comparison, although in our setting these are not minimal. |
18 |
Indeed, $\#$ can be defined using induction in our setting. |
19 |
|
20 |
The $\basic$ axioms of bounded arithmetic give the inductive definitions and interrelationships of the various function symbols. |
21 |
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 |
\begin{definition} |
23 |
[Basic theory] |
24 |
The theory $\basic$ consists of the axioms from Appendix \ref{appendix:arithmetic}. |
25 |
\end{definition} |
26 |
|
27 |
|
28 |
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 |
|
30 |
\begin{definition} |
31 |
[Derived functions and notations] |
32 |
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 |
We define the functions $\succ 0 x , \succ 1 x$ as $2 x$ and $2x +1$ respectively. |
34 |
|
35 |
Need $bit$, $\beta$ , $\pair{}{}{}$. |
36 |
\end{definition} |
37 |
|
38 |
(Here use a variation of S12 with sharply bounded quantifiers and safe quantifiers) |
39 |
|
40 |
Use base theory + sharply bounded quantifiers. |
41 |
|
42 |
|
43 |
\begin{definition} |
44 |
[Quantifier hierarchy] |
45 |
$\Sigma^\safe_0 = \Pi^\safe_0 $ is the set of formulae whose only quantifiers are sharply bounded. |
46 |
We define $\Sigma^\safe_{i+1}$ as the closure of $\Pi^\safe_i $ under $\cor, \cand $, safe existentials and sharply bounded quantifiers. |
47 |
We define $\Pi^\safe_{i+1}$ as the closure of $\Sigma^\safe_i $ under $\cor, \cand $, safe universals and sharply bounded quantifiers. |
48 |
\end{definition} |
49 |
|
50 |
|
51 |
\anupam{Collection principles for prenexing? Otherwise need to add closure under sharply bounded quantifiers.} |
52 |
\begin{definition}\label{def:polynomialinduction} |
53 |
[Polynomial induction] |
54 |
The \emph{polynomial induction} axiom schema, $\pind$, consists of the following axioms, |
55 |
\[ |
56 |
A(0) |
57 |
\cimp (\forall x^{\normal} . ( A(x) \cimp A(\succ{0} x) ) ) |
58 |
\cimp (\forall x^{\normal} . ( A(x) \cimp A(\succ{1} x) ) ) |
59 |
\cimp \forall x^{\normal} . A(x) |
60 |
\] |
61 |
for each formula $A(x)$. |
62 |
|
63 |
For a class $\Xi$ of formulae, $\cax{\Xi}{\pind}$ denotes the set of induction axioms when $A(x) \in \Xi$. |
64 |
|
65 |
%We write $I\Xi$ to denote the theory consisting of $\basic$ and $\cax{\Xi}{\ind}$. |
66 |
\end{definition} |
67 |
|
68 |
|
69 |
\begin{definition}\label{def:ariththeory} |
70 |
Define the theory $\arith^i$ consisting of the following axioms: |
71 |
\begin{itemize} |
72 |
\item $\basic$; |
73 |
\item $\cpind{\Sigma^\safe_i } $: |
74 |
\end{itemize} |
75 |
and an inference rule, called $\rais$, for closed formulas $\exists y^\normal . A$: |
76 |
\[ |
77 |
\dfrac{\forall \vec x^\normal . \exists y^\safe . A }{ \forall \vec x^\normal .\exists y^\normal . A} |
78 |
\] |
79 |
\end{definition} |
80 |
\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 |
|
82 |
\anupam{In induction,for inductive cases, need $u\neq 0$ for $\succ 0$ case.} |
83 |
|
84 |
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 |
\begin{proposition} |
86 |
[Length induction] |
87 |
The axiom schema of formulae, |
88 |
\begin{equation} |
89 |
\label{eqn:lind} |
90 |
( A(0) \cand \forall x^\normal . (A(x) \cimp A(\succ{} x)) ) \cimp \forall x^\safe. A(|x|) |
91 |
\end{equation} |
92 |
for formulae $A \in \Sigma^\safe_i$ |
93 |
is equivalent to $\cpind{\Sigma^\safe_i}$. |
94 |
\end{proposition} |
95 |
\begin{proof} |
96 |
Suppose we have $A(0)$ and $A(a) \cimp A(\succ{} a)$ for each $a \in \normal$. |
97 |
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 |
\end{proof} |
99 |
|
100 |
Let us refer to the axiom schema in \eqref{eqn:lind} as $\clind{\mathcal C}$, when $A \in \mathcal C$. |
101 |
We will freely use this in place of polynomial induction whenever it is convenient. |
102 |
|
103 |
|
104 |
|
105 |
|
106 |
\subsection{Graphs of some basic functions}\label{sect:graphsbasicfunctions} |
107 |
%Todo: $+1$, |
108 |
|
109 |
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 |
|
111 |
Let us give a few examples of formulas representing basic functions. |
112 |
\begin{itemize} |
113 |
\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 |
\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 |
\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 |
\item Conditional $C$: |
117 |
$$\begin{array}{ll} |
118 |
\forall^{\safe} x, y_{\epsilon}, y_0, y_1, \exists^{\safe} y. & ((x=\epsilon)\cand (y=y_{\epsilon})\\ |
119 |
& \cor( \exists^{\safe}z.(x=\succ{0}z) \cand (y=y_0))\\ |
120 |
& \cor( \exists^{\safe}z.(x=\succ{1}z) \cand (y=y_1)))\ |
121 |
\end{array} |
122 |
$$ |
123 |
\item Addition: |
124 |
$\forall^{\safe} x, y, \exists^{\safe} z. z=x+y$. |
125 |
\item Prefix: |
126 |
|
127 |
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 |
of length $k$ is $y$. It is defined as: |
129 |
$$\begin{array}{ll} |
130 |
\exists^{\safe} z, \exists^{\normal} l\leq |x|. & (k+l= |x|\\ |
131 |
& \cand \; |z|=l\\ |
132 |
& \cand \; x=y\smsh(2,l)+z) |
133 |
\end{array} |
134 |
$$ |
135 |
\item The following predicates will also be needed in proofs: |
136 |
|
137 |
$\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 |
defined by: |
139 |
$$ \exists^{\safe} y.(\pref(k,x,y) \cand C(y,0,1,0)).$$ |
140 |
\end{itemize} |
141 |
|
142 |
|
143 |
|
144 |
|
145 |
\subsection{A sequent calculus presentation} |
146 |
|
147 |
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 |
|
149 |
%We consider \emph{systems} of `nonlogical' rules extending this sequent calculus, which we write as follows, |
150 |
% \[ |
151 |
% \begin{array}{cc} |
152 |
% \vlinf{(R)}{}{ \Gamma , \Sigma' \seqar \Delta' , \Pi }{ \{\Gamma , \Sigma_i \seqar \Delta_i , \Pi \}_{i \in I} } |
153 |
%\end{array} |
154 |
%\] |
155 |
% 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 |
% \begin{enumerate} |
157 |
% \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 |
%$ \Gamma, \Pi$ are called \textit{context formulas}. |
159 |
%\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 |
% \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 |
% \end{enumerate} |
162 |
% |
163 |
%%The distinction between modal and nonmodal formulae in $(R)$ induces condition 1 |
164 |
% 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 |
% |
166 |
%%\begin{definition} |
167 |
%%[Polynomial induction] |
168 |
%%The \emph{polynomial induction} axiom schema, $\pind$, consists of the following axioms, |
169 |
%%\[ |
170 |
%%A(0) |
171 |
%%\cimp (\forall x^{\normal} . ( A(x) \cimp A(\succ{0} x) ) ) |
172 |
%%\cimp (\forall x^{\normal} . ( A(x) \cimp A(\succ{1} x) ) ) |
173 |
%%\cimp \forall x^{\normal} . A(x) |
174 |
%%\] |
175 |
%%for each formula $A(x)$. |
176 |
%% |
177 |
%%For a class $\Xi$ of formulae, $\cax{\Xi}{\pind}$ denotes the set of induction axioms when $A(x) \in \Xi$. |
178 |
%% |
179 |
%%We write $I\Xi$ to denote the theory consisting of $\basic$ and $\cax{\Xi}{\ind}$. |
180 |
%%\end{definition} |
181 |
% |
182 |
%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 |
|
184 |
We extend the purely logical calculus with certain non-logical rules and initial sequents corresponding to our theories $\arith^i$. |
185 |
For instance the axiom $\pind$ of Def. \ref{def:polynomialinduction} is represented by the following rule: |
186 |
\begin{equation} |
187 |
\label{eqn:ind-rule} |
188 |
\small |
189 |
\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 |
\end{equation} |
191 |
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 |
|
193 |
Similarly the $\rais$ inference rule of Def. \ref{def:ariththeory} is represented by the nonlogical rule: |
194 |
\[ |
195 |
\begin{array}{cc} |
196 |
\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 |
\end{array} |
198 |
\] |
199 |
|
200 |
%\patrick{In fact, I think we rather need the following nonlogical rule, which implies the previous one but is I guess more general: |
201 |
%\[ |
202 |
% \begin{array}{cc} |
203 |
% \vlinf{\rais}{}{ \normal(t_1), \dots, \normal(t_k) \seqar \normal(t) }{ \normal(t_1), \dots, \normal(t_k) \seqar \safe(t)} |
204 |
%\end{array} |
205 |
%\] |
206 |
%} |
207 |
|
208 |
The $\basic$ axioms are equivalent to the following nonlogical rules, that we will also designate by $\basic$: |
209 |
\[ |
210 |
\small |
211 |
\begin{array}{l} |
212 |
\begin{array}{cccc} |
213 |
\vlinf{}{}{\seqar \safe (0)}{}& |
214 |
\vlinf{}{}{\safe(t) \seqar \safe(\succ{} t)}{}& |
215 |
\vlinf{}{}{ \safe (t) \seqar 0 \neq \succ{} t}{} & |
216 |
\vlinf{}{}{\safe (s) , \safe (t) , \succ{} s = \succ{} t\seqar s = t }{}\\ |
217 |
\end{array} |
218 |
\\ |
219 |
\vlinf{}{}{\safe (t) \seqar t = 0 \cor \exists y^\safe . t = \succ{} y }{} |
220 |
\qquad |
221 |
\vlinf{}{}{\safe(s), \safe(t) \seqar \safe(s+t) }{}\\ |
222 |
\vlinf{}{}{\normal (s), \safe(t) \seqar \safe(s \times t) }{} |
223 |
\qquad |
224 |
\vlinf{}{}{\normal (s), \normal(t) \seqar \safe(s \smsh t) }{}\\ |
225 |
\vlinf{}{}{\normal(t) \seqar \safe(t) }{} |
226 |
\end{array} |
227 |
\] |
228 |
|
229 |
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 |
|
231 |
\todo{Present typed variable free-cut free form.} |
232 |
\anupam{I cut-and-pasted the rest of this section into appendices to save space. Move things back gradually.} |
233 |
|
234 |
\begin{theorem} |
235 |
[Typed variable normal form] |
236 |
\label{thm:normal-form} |
237 |
\end{theorem} |