8 research outputs found
Relative Expressive Power of Navigational Querying on Graphs
Motivated by both established and new applications, we study navigational
query languages for graphs (binary relations). The simplest language has only
the two operators union and composition, together with the identity relation.
We make more powerful languages by adding any of the following operators:
intersection; set difference; projection; coprojection; converse; and the
diversity relation. All these operators map binary relations to binary
relations. We compare the expressive power of all resulting languages. We do
this not only for general path queries (queries where the result may be any
binary relation) but also for boolean or yes/no queries (expressed by the
nonemptiness of an expression). For both cases, we present the complete Hasse
diagram of relative expressiveness. In particular the Hasse diagram for boolean
queries contains some nontrivial separations and a few surprising collapses.Comment: An extended abstract announcing the results of this paper was
presented at the 14th International Conference on Database Theory, Uppsala,
Sweden, March 201
An introduction to Graph Data Management
A graph database is a database where the data structures for the schema
and/or instances are modeled as a (labeled)(directed) graph or generalizations
of it, and where querying is expressed by graph-oriented operations and type
constructors. In this article we present the basic notions of graph databases,
give an historical overview of its main development, and study the main current
systems that implement them
Input-Output Disjointness for Forward Expressions in the Logic of Information Flows
Last year we introduced the logic FLIF (forward logic of information flows) as a declarative language for specifying complex compositions of information sources with limited access patterns. The key insight of this approach is to view a system of information sources as a graph, where the nodes are valuations of variables, so that accesses to information sources can be modeled as edges in the graph. This allows the use of XPath-like navigational graph query languages. Indeed, a well-behaved fragment of FLIF, called io-disjoint FLIF, was shown to be equivalent to the executable fragment of first-order logic. It remained open, however, how io-disjoint FLIF compares to general FLIF . In this paper we close this gap by showing that general FLIF expressions can always be put into io-disjoint form
Executable First-Order Queries in the Logic of Information Flows
The logic of information flows (LIF) has recently been proposed as a general
framework in the field of knowledge representation. In this framework, tasks of
a procedural nature can still be modeled in a declarative, logic-based fashion.
In this paper, we focus on the task of query processing under limited access
patterns, a well-studied problem in the database literature. We show that LIF
is well-suited for modeling this task. Toward this goal, we introduce a variant
of LIF called "forward" LIF, in a first-order setting. We define FLIFio, a
syntactical fragment of forward LIF, and show that it corresponds exactly to
the "executable" fragment of first-order logic defined by Nash and Lud\"ascher.
Moreover, we show that general FLIF expressions can also be put into
io-disjoint form. The definition of FLIFio involves a classification of the
free variables of an expression into "input" and "output" variables. Our result
hinges on inertia and determinacy laws for forward LIF expressions, which are
interesting in their own right. These laws are formulated in terms of the input
and output variables.Comment: This paper is the extended version of the two papers presented at
ICDT 2020 and ICDT 202