94,647 research outputs found
Nesting Depth of Operators in Graph Database Queries: Expressiveness Vs. Evaluation Complexity
Designing query languages for graph structured data is an active field of
research, where expressiveness and efficient algorithms for query evaluation
are conflicting goals. To better handle dynamically changing data, recent work
has been done on designing query languages that can compare values stored in
the graph database, without hard coding the values in the query. The main idea
is to allow variables in the query and bind the variables to values when
evaluating the query. For query languages that bind variables only once, query
evaluation is usually NP-complete. There are query languages that allow binding
inside the scope of Kleene star operators, which can themselves be in the scope
of bindings and so on. Uncontrolled nesting of binding and iteration within one
another results in query evaluation being PSPACE-complete.
We define a way to syntactically control the nesting depth of iterated
bindings, and study how this affects expressiveness and efficiency of query
evaluation. The result is an infinite, syntactically defined hierarchy of
expressions. We prove that the corresponding language hierarchy is strict.
Given an expression in the hierarchy, we prove that it is undecidable to check
if there is a language equivalent expression at lower levels. We prove that
evaluating a query based on an expression at level i can be done in
in the polynomial time hierarchy. Satisfiability of quantified Boolean formulas
can be reduced to query evaluation; we study the relationship between
alternations in Boolean quantifiers and the depth of nesting of iterated
bindings.Comment: Improvements from ICALP 2016 review comment
Regular Languages meet Prefix Sorting
Indexing strings via prefix (or suffix) sorting is, arguably, one of the most
successful algorithmic techniques developed in the last decades. Can indexing
be extended to languages? The main contribution of this paper is to initiate
the study of the sub-class of regular languages accepted by an automaton whose
states can be prefix-sorted. Starting from the recent notion of Wheeler graph
[Gagie et al., TCS 2017]-which extends naturally the concept of prefix sorting
to labeled graphs-we investigate the properties of Wheeler languages, that is,
regular languages admitting an accepting Wheeler finite automaton.
Interestingly, we characterize this family as the natural extension of regular
languages endowed with the co-lexicographic ordering: when sorted, the strings
belonging to a Wheeler language are partitioned into a finite number of
co-lexicographic intervals, each formed by elements from a single Myhill-Nerode
equivalence class. Moreover: (i) We show that every Wheeler NFA (WNFA) with
states admits an equivalent Wheeler DFA (WDFA) with at most
states that can be computed in time. This is in sharp contrast with
general NFAs. (ii) We describe a quadratic algorithm to prefix-sort a proper
superset of the WDFAs, a -time online algorithm to sort acyclic
WDFAs, and an optimal linear-time offline algorithm to sort general WDFAs. By
contribution (i), our algorithms can also be used to index any WNFA at the
moderate price of doubling the automaton's size. (iii) We provide a
minimization theorem that characterizes the smallest WDFA recognizing the same
language of any input WDFA. The corresponding constructive algorithm runs in
optimal linear time in the acyclic case, and in time in the
general case. (iv) We show how to compute the smallest WDFA equivalent to any
acyclic DFA in nearly-optimal time.Comment: added minimization theorems; uploaded submitted version; New version
with new results (W-MH theorem, linear determinization), added author:
Giovanna D'Agostin
Towards Nominal Formal Languages
We introduce formal languages over infinite alphabets where words may contain
binders. We define the notions of nominal language, nominal monoid, and nominal
regular expressions. Moreover, we extend history-dependent automata
(HD-automata) by adding stack, and study the recognisability of nominal
languages
Colored operads, series on colored operads, and combinatorial generating systems
We introduce bud generating systems, which are used for combinatorial
generation. They specify sets of various kinds of combinatorial objects, called
languages. They can emulate context-free grammars, regular tree grammars, and
synchronous grammars, allowing us to work with all these generating systems in
a unified way. The theory of bud generating systems uses colored operads.
Indeed, an object is generated by a bud generating system if it satisfies a
certain equation in a colored operad. To compute the generating series of the
languages of bud generating systems, we introduce formal power series on
colored operads and several operations on these. Series on colored operads are
crucial to express the languages specified by bud generating systems and allow
us to enumerate combinatorial objects with respect to some statistics. Some
examples of bud generating systems are constructed; in particular to specify
some sorts of balanced trees and to obtain recursive formulas enumerating
these.Comment: 48 page
Synchronous Context-Free Grammars and Optimal Linear Parsing Strategies
Synchronous Context-Free Grammars (SCFGs), also known as syntax-directed
translation schemata, are unlike context-free grammars in that they do not have
a binary normal form. In general, parsing with SCFGs takes space and time
polynomial in the length of the input strings, but with the degree of the
polynomial depending on the permutations of the SCFG rules. We consider linear
parsing strategies, which add one nonterminal at a time. We show that for a
given input permutation, the problems of finding the linear parsing strategy
with the minimum space and time complexity are both NP-hard
- …