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.} |