root / CSL17 / intro.tex @ 209
Historique | Voir | Annoter | Télécharger (16,72 ko)
1 | 156 | adas | \section{Introduction and motivation} |
---|---|---|---|
2 | 154 | adas | \label{sect:intro} |
3 | 154 | adas | |
4 | 156 | adas | Today, there are countless approaches towards characterising complexity classes via logic. |
5 | 156 | adas | Foremost amongst these lies the proof-theoretic approach, characterising classes as the `representable' functions of some logic or theory. |
6 | 156 | adas | Examples include bounded arithmetic \cite{Buss86book} \cite{Krajicek:1996:BAP:225488} \cite{Cook:2010:LFP:1734064}, applicative theories \cite{Cantini02} \cite{KahOit:13:ph-levels}, intrinsic and ramified theories \cite{Leivant94:intrinsic-theories} \cite{BelHof:02}, fragments of linear logic \cite{GirardSS92:bounded-ll} \cite{Girard94:lll} \cite{Lafont04} \cite{Baillot15} and fragments of intuitionistic logic \cite{Leivant94:found-delin-ptime}. |
7 | 156 | adas | |
8 | 156 | adas | To some extent there is a distinction between various notions of `representability', namely between logics that \emph{type} terms computing functions of a given complexity class, and theories that prove the \emph{totality} or \emph{convergence} of programs computing functions in a given complexity class. |
9 | 203 | pbaillot | But a more important (and somewhat orthogonal) distinction is whether the constraints on the logic or theory are |
10 | 209 | pbaillot | \textit{explicit} or \textit{implicit}, that is to say whether they stipulate some bounds or resources, or whether the bounds are only \textit{consequence} of some logical properties. One important representant of the first category is \textit{bounded arithmetic}, which has been investigated by Buss \cite{Buss86book}, as a first-order arithmetic with bounded quantifiers. Cobham's function algebra \cite{Cobham} for polynomial time is of a similar nature, and indeed is used as a tool for the study of bounded arithmetic. In the second category one can range the systems of \textit{implicit computational complexity}, like for instance function algebras based on restrictions of recursion, such as ramified or safe recursion \cite{BellantoniCook92}, arithmetics or logics based on analogous restrictions of induction \cite{Cantini02}, \cite{Leivant94:intrinsic-theories} \cite{BelHof:02}, \cite{Leivant94:found-delin-ptime} and subsystems of linear logic \cite{Girard94:lll} \cite{Lafont04} . |
11 | 156 | adas | |
12 | 203 | pbaillot | Bounded arithmetic is a deep and well-established theory, and one of its interests is its great versatility, as it has enabled to characterize a wide range of complexity classes, such as FP, the polynomial hierarchy FPH, PSPACE, NC \dots It is also tightly related to \textit{proof complexity} |
13 | 203 | pbaillot | \cite{Cook:2010:LFP:1734064}, the research field investigating the size of propositional proofs in various proof systems. Finally it is also employed for the research direction of \textit{bounded reverse mathematics}. |
14 | 203 | pbaillot | |
15 | 209 | pbaillot | Implicit computational complexity on the other hand is a slightly more recent and less unified line of research. It has the interest of delineating some specific computing disciplines which correspond to classical complexity classes and can help shed some light for instance on the foundational nature of feasibility (see e.g. \cite{Leivant94:found-delin-ptime}). Another benefit is that implicit complexity systems can sometimes be extended into techniques for statically controlling the complexity of programs, e.g. in functional or imperative languages (\cite{Hofmann00,Hofmann03}, \cite{Marion11} \dots). However the variety of complexity classes that have been characterized in this implicit way is not as large as for bounded arithmetic. In particular implicit complexity has not managed to characterize non-deterministic classes, such as NP or PH, in a purely logical way. Actually some characterizations of such classes do exist, but they either take the form of a function algebra or of a type system extended with a non-logical feature. |
16 | 203 | pbaillot | |
17 | 206 | pbaillot | In fact implicit complexity has obtained many of its techniques from a detailed study of the comprehension scheme, of the primitive recursion scheme and of the structural rules of proof systems (contraction rule). But it seems to us that first-order quantification has not yet been investigated as much as it deserves. We believe that this is one reason of the modest achievements of implicit complexity concerning non-deterministic classes. |
18 | 203 | pbaillot | |
19 | 204 | pbaillot | So in the present work we aim at exploring the power of first-order quantification in an implicit complexity arithmetic, and in particular we wish to characterize the polynomial hierarchy FPH and its levels. By implicit complexity arithmetic we mean that the quantifiers employed should not be bounded quantifiers. Our motivation is to bridge the fields of bounded arithmetic and implicit complexity, and to try pave the way for the design of systems bringing together simplicity (no explicit bounds) and versatility, in which one could transfer some of the main results of bounded arithmetic. |
20 | 203 | pbaillot | |
21 | 209 | pbaillot | Our methodology will be the following one: we will use the concept of \textit{ramification} coming from implicit complexity \cite{Leivant95,BellantoniCook92}, adapt it in the setting of first-order arithmetic, and then explore some properties relative to quantification. First recall that ramification, or safe recursion, is a discipline which aims at limiting the power of recursion by distinguishing two (or more) levels of integers: the \textit{safe} or level-0 integers, and the \textit{normal} or level-1 ones. In a nutshell, recursion, which is here recursion on notation (or binary words), is permitted on normal arguments, but recursive calls can only appear in safe positions. Basic operations, such as conditional, can be performed on safe arguments. Functions defined in this way correspond to polynomial time functions \cite{BellantoniCook92}. |
22 | 206 | pbaillot | |
23 | 206 | pbaillot | This discipline can be transposed in first-order arithmetic by adding predicates for normal and safe integers and by limiting the induction scheme by allowing induction only on normal integers. The key step we make is to focus our attention on \textit{safe quantifiers} that is to say quantifiers on safe variables. These safe quantifiers will play a r\^ole analogous to bounded quantifiers in bounded arithmetic. In particular we will consider a hierarchy $\Sigma_i^{\safe}$ of formulas according to the number of alternances of safe quantifiers, and we will calibrate the use of induction by restricting the class to which the induction formula can belong. We will finally characterize in this way the levels of the polynomial hierarchy. |
24 | 206 | pbaillot | |
25 | 208 | pbaillot | \textbf{Related work}. To the best of our knowledge, our work is the first characterization of the polynomial hierarchy and its levels in an implicit arithmetic. Our approach is however related to several previous works, and differs either by some of the definitions and/or by the complexity class characterized. |
26 | 208 | pbaillot | |
27 | 208 | pbaillot | A first axis of classification between the logics and arithmetics for complexity classes is the way by which they specify functions. The options at stake can be enumerated as follows: (i) \textit{formula specification}, as in first-order bounded arithmetic \cite{Buss86book}, (ii) \textit{equational specification}, as in Leivant's intrinsic theories \cite{Leivant94:intrinsic-theories}, (iii) \textit{combinatory terms} as in applicative theories (e.g. \cite{Strahm03}) or $\lambda$-calculus terms. A second axis, as explained in the introduction, is whether the system is explicit or implicit. |
28 | 208 | pbaillot | |
29 | 208 | pbaillot | Our approach in this paper is to use the formula-specification point of view, because it is convenient for the polynomial hierarchy. The arithmetic of \cite{KahOit:13:ph-levels} characterizes PH, but it fits in the explicit approach as it uses axioms defining bounded schemes. |
30 | 209 | pbaillot | Some other works are closer to our methodology in the sense that they are implicit arithmetics and rely on a notion of ramification, but they characterize other complexity classes. Leivant's intrinsic theories \cite{Leivant94:intrinsic-theories} allows to characterize FP, in the equational specification approach, and \cite{Cantini02} obtains an analogous result in the combinatory terms approach. The paper \cite{BelHof:02} also provides a characterization of FP, with two differences: on the one hand induction is on arbitrarily quantified formulas, and on the other hand the underlying logic is not classical logic but a variant of linear logic, with a modality for normal arguments. Our paper \cite{BaillotDas16} proves a similar result, but with a different method. Finally the paper \cite{OstrinWainer05} also presents an implicit ramified arithmetic, with quantification on safe variables. The difference with our setting is that equational specifications are used instead of formulas, unary integers instead of binary integers, and the class of functions characterized is that of elementary functions. |
31 | 208 | pbaillot | |
32 | 208 | pbaillot | |
33 | 208 | pbaillot | \textbf{Outline.} The rest of the paper will proceed as follows. We first give some background on function algebras for FP and FPH respectively. Then we describe an encoding of sequences which will be instrumental in the proof of our result. We present our arithmetical system in Sect. \ref{sect:arithmetic}, prove our soundness result, that is to say the provably total functions are in FPH, in Sect. \ref{sect:soundness}, and our completeness result, all FPH functions are provably total in the arithmetic, in Sect. \ref{sect:completeness}. |
34 | 208 | pbaillot | |
35 | 208 | pbaillot | |
36 | 206 | pbaillot | % \patrick{ |
37 | 206 | pbaillot | % \begin{itemize} |
38 | 206 | pbaillot | % \item our goal: design an unbounded arithmetic for FPH. |
39 | 206 | pbaillot | % |
40 | 206 | pbaillot | % motivations: bridge bounded arithmetic and ICC ; enlarge the toolbox of ICC |
41 | 206 | pbaillot | % \item methodology: use ramification, and calibrate the logic by alternance of quantifiers in induction formulas |
42 | 206 | pbaillot | % \item key idea: replace the role of bounded quantifiers by safe quantifiers |
43 | 206 | pbaillot | % \item related works |
44 | 206 | pbaillot | % \end{itemize} |
45 | 206 | pbaillot | % } |
46 | 156 | adas | % |
47 | 203 | pbaillot | %\anupam{Copied below from DICE submission} |
48 | 156 | adas | % |
49 | 203 | pbaillot | %Today, there are countless approaches towards characterising complexity classes via logic. |
50 | 203 | pbaillot | %Foremost amongst these lies the proof-theoretic approach, characterising classes as the `representable' functions of some logic or theory. |
51 | 203 | pbaillot | %Examples include bounded arithmetic \cite{Buss86book} \cite{Krajicek:1996:BAP:225488} \cite{Cook:2010:LFP:1734064}, applicative theories \cite{Cantini02} \cite{KahOit:13:ph-levels}, intrinsic and ramified theories \cite{Leivant94:intrinsic-theories} \cite{BelHof:02}, fragments of linear logic \cite{GirardSS92:bounded-ll} \cite{Girard94:lll} \cite{Lafont04} \cite{Baillot15} and fragments of intuitionistic logic \cite{Leivant94:found-delin-ptime}. |
52 | 203 | pbaillot | % |
53 | 203 | pbaillot | %To some extent there is a distinction between various notions of `representability', namely between logics that \emph{type} terms computing functions of a given complexity class, and theories that prove the \emph{totality} or \emph{convergence} of programs computing functions in a given complexity class. |
54 | 203 | pbaillot | %Perhaps a more important (and somewhat orthogonal) distinction for the \textsc{Dice-Fopara} community is whether the constraints on the logic or theory are \emph{implicit} or \emph{explicit}. The former includes constraints such as ramification, type level and substructural considerations, while the latter includes bounded quantification, bounded modalities etc. This distinction is also naturally exhibited in associated function algebras, e.g. Cobham's \emph{limited} recursion on notation \cite{Cobham} vs.\ Bellantoni and Cook's \emph{predicative} recursion on notation \cite{BellantoniCook92}. |
55 | 203 | pbaillot | % |
56 | 203 | pbaillot | %Some correlations abound: explicit bounds are typically far more useful for more fine-grained characterisations of complexity classes, e.g.\ levels of the polynomial or arithmetical hierarchies, and often admit witness extraction methods that remain in a ground type programming language, e.g.\ via recursion theoretic characterisations. Implicit bounds, however, are more often associated with higher-typed programming languages, which are arguably more useful for achieving witness extraction at all for powerful theories such as arithmetic and set theory, cf.~\cite{avigad1998godel}, \cite{troelstra1998realizability}. Complexity bounds are harder to obtain, but the framework is nonetheless somewhat more desirable since no bounds occur in the characterisation itself \emph{per se}. |
57 | 203 | pbaillot | % |
58 | 203 | pbaillot | %In this line of work we attempt to ameliorate the situation by using implicit methods to delineate fine-grained hierarchies of feasible complexity classes, namely the \emph{polynomial hierarchy}, $\ph$. |
59 | 203 | pbaillot | %One particular feature of this work that helps make this possible is to break one of the aforementioned correlations: while we use implicit constraints, our witness extraction methods will use only functions of bounded type level. In this way we can naturally appeal to function algebras, which are of ground type in nature, which implicitly characterise $\ph$, namely via \emph{predicative minimisation} \cite{BellantoniThesis}. |
60 | 203 | pbaillot | %In order to remain in this class of programs and not get lost with higher types, we appeal to the \emph{witness function method} of extracting programs from proofs, a technique developed by Buss \cite{Buss86book} \cite{Buss:95:wfm-arith}, which is ideal for extracting ground programs directly from classical proofs in weak theories. |
61 | 203 | pbaillot | %This extends work presented in \cite{BaillotDas16}. %at \emph{CSL '16}. |
62 | 203 | pbaillot | % |
63 | 203 | pbaillot | %\subsection{State of the art} |
64 | 203 | pbaillot | %As we have already argued, it is natural to expect that characterisations of hierarchies such as $\ph$ are more readily established by using ground or bounded type witness extraction procedures, due to the correspondence between logical searches in a program and the quantification over objects of ground type in a theory. |
65 | 203 | pbaillot | %As justification for this position, consider the following table of examples of known characterisations:\footnote{All classes can be taken in their functional variations.} |
66 | 203 | pbaillot | %%, distinguished by the type level of programs extracted: |
67 | 203 | pbaillot | % |
68 | 203 | pbaillot | %\bigskip |
69 | 203 | pbaillot | % |
70 | 203 | pbaillot | %\begin{tabular}{c|c|c} |
71 | 203 | pbaillot | % Class & Ground & Higher order\\ |
72 | 203 | pbaillot | % \hline |
73 | 203 | pbaillot | % % quantifiers & type-level\\ |
74 | 203 | pbaillot | % $\nc^i$ & $\mathit{TNC}^i$ \cite{CloTak:1995:nc-ac}, $\mathit{VNC}^i$ \cite{Cook:2010:LFP:1734064} & - \\ |
75 | 203 | pbaillot | % $\ptime$ & $S^1_2$ \cite{Buss86book}, \cite{Strahm03}, $V^1$ \cite{Zambella96} \cite{Cook:2010:LFP:1734064} & $\mathit{LLL}$ \cite{Girard94:lll}, $\mathit{SLL}$ \cite{Lafont04} \\ |
76 | 203 | pbaillot | % $\Box_i$ & $S^i_2$ \cite{Buss86book}, \cite{KahOit:13:ph-levels} & - \\ |
77 | 203 | pbaillot | % $\ph$& $S_2$ & - \\ |
78 | 203 | pbaillot | % $\pspace$& $U^1_2$ \cite{Buss86book} & $\mathit{STA}_B$ \cite{GaboardiMarionRonchi12} \\ |
79 | 203 | pbaillot | % % $k$-$\exptime$ & - & $\mathit{ELL}(k)$ \\ |
80 | 203 | pbaillot | % Elementary & $I\Delta_0 + \exp$ & $\mathit{ELL}\; \cite{Girard94:lll}$ |
81 | 203 | pbaillot | %\end{tabular} |
82 | 203 | pbaillot | % |
83 | 203 | pbaillot | %\bigskip |
84 | 203 | pbaillot | % |
85 | 203 | pbaillot | %\noindent |
86 | 203 | pbaillot | %Thus, if we want an implicit characterisation of $\ph$ in a logical theory, we should break the apparent (although not universal) link between `implicit' and `higher type'. |
87 | 203 | pbaillot | %%If we restrict to the ground setting, where extracted programs do not make use of higher types, we have the following picture. |
88 | 203 | pbaillot | %% |
89 | 203 | pbaillot | %% Now, if we restrict to the ground setting, where extracted programs do not make use of higher types, there are still several |
90 | 203 | pbaillot | %Now, if we zoom in on the ground setting, where extracted programs do not make use of higher types, there are still several parameters by which the characterisations can vary, in particular: |
91 | 203 | pbaillot | %\begin{itemize} |
92 | 203 | pbaillot | % \item How are programs specified in the language of the theory? By a formula, as in Peano arithmetic, by a first-order equational program, or by an applicative term in the style of combinatory algebra; |
93 | 203 | pbaillot | % \item What type of programs are extracted from proofs of the theory? A program of a bounded recursion class, e.g.\ of Cobham's algebra, or of a tiered recursion class, e.g.\ of Bellantoni and Cook's algebra. |
94 | 203 | pbaillot | %\end{itemize} |
95 | 203 | pbaillot | %We classify some known characterisations from the literature according to these two parameters in the following table: |
96 | 203 | pbaillot | %\bigskip |
97 | 203 | pbaillot | % |
98 | 203 | pbaillot | %\begin{tabular}{c|c|c} |
99 | 156 | adas | % { |
100 | 156 | adas | % %\small model of comp. $\backslash$ extracted program |
101 | 203 | pbaillot | % } & bounded rec. programs & tiered rec. programs \\ |
102 | 156 | adas | % \hline &&\\ |
103 | 203 | pbaillot | % formula & $\ph$, $\square_i$ (Buss \cite{Buss86book})&\\ |
104 | 203 | pbaillot | % % & bounded induction (Buss \cite{Buss86book}) &\\ |
105 | 156 | adas | % \hline &&\\ |
106 | 203 | pbaillot | % equational && $\ptime$\\ |
107 | 203 | pbaillot | % && (Leivant \cite{Leivant94:intrinsic-theories}) \\ |
108 | 156 | adas | % \hline &&\\ |
109 | 203 | pbaillot | % applicative & $\ptime$ (Strahm \cite{Strahm03}) & $\ptime$ \\ |
110 | 203 | pbaillot | % &$\ph$ (Kahle-Oitavem \cite{KahOit:13:ph-levels})& (Cantini \cite{Cantini02}) |
111 | 156 | adas | %\end{tabular} |
112 | 203 | pbaillot | % |
113 | 203 | pbaillot | %%TODO: improve table to make clear columns and rows, explicit and implicit columns. |
114 | 203 | pbaillot | %% |
115 | 203 | pbaillot | %%\begin{tabular}{c|c|c|c} |
116 | 203 | pbaillot | %% { |
117 | 203 | pbaillot | %% %\small model of comp. $\backslash$ extracted program |
118 | 203 | pbaillot | %% } & Cobham & mon. constraints & BC-like \\ |
119 | 203 | pbaillot | %% \hline &&\\ |
120 | 203 | pbaillot | %% formula & PH, $\square_i$&&\\ |
121 | 203 | pbaillot | %% & bounded induction (Buss) &&\\ |
122 | 203 | pbaillot | %% \hline &&\\ |
123 | 203 | pbaillot | %% equational &&& P\\ |
124 | 203 | pbaillot | %% &&& (Leivant) \\ |
125 | 203 | pbaillot | %% \hline &&\\ |
126 | 203 | pbaillot | %% applicative &&PH & P \\ |
127 | 203 | pbaillot | %% &&(Kahle-Oitavem)& (Cantini) |
128 | 203 | pbaillot | %%\end{tabular} |
129 | 203 | pbaillot | % |
130 | 203 | pbaillot | %\bigskip |
131 | 203 | pbaillot | % |
132 | 203 | pbaillot | %\noindent |
133 | 203 | pbaillot | %Our goal is to extend the approach using extraction of programs of a tiered recursion class (second column), using the equational style of specification (second row), to the whole of the polynomial hierarchy, i.e.\ $\ph$ and its levels $\square_i$. |
134 | 203 | pbaillot | %%Our goal is to extend the implicit approach, via variations of Bellantoni-Cook (BC) programs, to the whole of the polynomial hierarchy. |