Searcharxiv⌕ Search

arXiv subjects

Flavio Ferrarotti

Publications and source records attributed to Flavio Ferrarotti.

20 records · Page 2Linked to original sources

On Higher Order Query Languages which on Relational Databases Collapse to Second Order Logic

In the framework of computable queries in Database Theory, there are many examples of queries to (properties of) relational database instances that can be expressed by simple and elegant third order logic ($\mathrm{TO}$) formulae. In many of those properties the expressive power of $\mathrm{TO}$ is not required, but the equivalent second order logic ($\mathrm{SO}$) formulae can be very complicated or unintuitive. From the point of view of the study of highly expressive query languages, it is then relevant to identify fragments of $\mathrm{TO}$ (and, in general, of higher-order logics of order $\geq 3$) which do have an $\mathrm{SO}$ equivalent formula. In this article we investigate this precise problem as follows. Firstly, we define a general schema of $\exists$TO formulas which consists of existentially quantifying a third-order linear digraph of polynomial length, that is, a sequence of structures that represents a computation, by explicitly stating which operations are the ones which can be involved in the construction of a given structure in the sequence, when applied to the previous one. Then we give a constructive proof of the fact that all $\exists$TO sub formulas of that schema can be translated into an equivalent SO formula. Secondly, aiming to formally characterize the fragment of TO which can be translated to SO, we define a restriction of TO, which we denote TO$^{P}$, for polynomial TO, and we give a constructive proof on the fact that it collapses to SO. We define TO$^{P}$ as the fragment of TO where valuations can assign to TO relation variables only TO relations whose cardinalities are bounded by a polynomial that depends on the quantifier. Moreover, we define a similar restriction for every higher order logic of order $i \geq 4$, which we denote $\mathrm{HO}^{i,P}$, and give a constructive proof of the fact that for all $i \geq 4$, $\mathrm{HO}^{i,P}$ collapses to SO.

cs.LO↗

A New Thesis concerning Synchronised Parallel Computing - Simplified Parallel ASM Thesis

A behavioural theory consists of machine-independent postulates characterizing a particular class of algorithms or systems, an abstract machine model that provably satisfies these postulates, and a rigorous proof that any algorithm or system stipulated by the postulates is captured by the abstract machine model. The class of interest in this article is that of synchronous parallel algorithms. For this class a behavioural theory has already been developed by Blass and Gurevich, which unfortunately, though mathematically correct, fails to be convincing, as it is not intuitively clear that the postulates really capture the essence of (synchronous) parallel algorithms. In this article we present a much simpler (and presumably more convincing) set of four postulates for (synchronous) parallel algorithms, which are rather close to those used in Gurevich's celebrated sequential ASM thesis, i.e. the behavioural theory of sequential algorithms. The key difference is made by an extension of the bounded exploration postulate using multiset comprehension terms instead of ground terms formulated over the signature of the states. In addition, all implicit assumptions are made explicit, which amounts to considering states of a parallel algorithm to be represented by meta-finite first-order structures. The article first provides the necessary evidence that the axiomatization presented in this article characterizes indeed the whole class of deterministic, synchronous, parallel algorithms, then formally proves that parallel algorithms are captured by Abstract State Machines (ASMs). The proof requires some recourse to methods from finite model theory, by means of which it can be shown that if a critical tuple defines an update in some update set, then also every other tuple that is logically indistinguishable defines an update in that update set.

cs.LO↗