Results 11  20
of
121
Query Automata for Nested Words
"... We study visibly pushdown automata (VPA) models for expressing and evaluating queries, expressed using MSO formulas, on words with a nesting structure (like XML documents). We define a query VPA model, which is a 2way deterministic VPA that can mark positions in a document, and show that it is equi ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
We study visibly pushdown automata (VPA) models for expressing and evaluating queries, expressed using MSO formulas, on words with a nesting structure (like XML documents). We define a query VPA model, which is a 2way deterministic VPA that can mark positions in a document, and show that it is equiexpressive as unary monadic queries. This surprising result parallels a classic result for queries on regular word languages. We also compare our model to query models on unranked trees. We then consider the algorithmic problem of evaluating, in one pass, the set of all positions satisfying a query in a streaming nested word. We present an algorithm that answers any fixed unary monadic query on a streaming document which uses, at any point, at most space O(d+I log n), where d is the depth of the document at that point and I is the number of potential answers to the query in the word processed thus far. This algorithm uses space close to the minimal space any streaming algorithm would need, and generalizes to answering nary queries. 1
Languages of Nested Trees
, 2006
"... We study languages of nested trees—structures obtained by augmenting trees with sets of nested jumpedges. These graphs can naturally model branching behaviors of pushdown programs, so that the problem of branchingtime software model checking may be phrased as a membership question for such langua ..."
Abstract

Cited by 11 (2 self)
 Add to MetaCart
(Show Context)
We study languages of nested trees—structures obtained by augmenting trees with sets of nested jumpedges. These graphs can naturally model branching behaviors of pushdown programs, so that the problem of branchingtime software model checking may be phrased as a membership question for such languages. We define finitestate automata accepting such languages—these automata can pass states along jumpedges as well as tree edges. We find that the modelchecking problem for these automata on pushdown systems is EXPTIMEcomplete, and that their alternating versions are expressively equivalent to NTµ, a recently proposed temporal logic for nested trees that can express a variety of branchingtime, “contextfree ” requirements. We also show that monadic second order logic (MSO) cannot exploit the structure: MSO on nested trees is too strong in the sense that it has an undecidable model checking problem, and seems too weak to capture NTµ.
Streamable fragments of forward xpath
 In Proceedings of the 16th International Conference on Implementation and Application of Automata (CIAA’11
"... Abstract. We present a query answering algorithm for a fragment of Forward XPath on Xml streams that we obtain by compilation to deterministic nested word automata. Our algorithm is earliest and in polynomial time. This proves the finite streamability of the fragment of Forward XPath with child st ..."
Abstract

Cited by 10 (2 self)
 Add to MetaCart
(Show Context)
Abstract. We present a query answering algorithm for a fragment of Forward XPath on Xml streams that we obtain by compilation to deterministic nested word automata. Our algorithm is earliest and in polynomial time. This proves the finite streamability of the fragment of Forward XPath with child steps, outermostdescendant steps, label tests, negation, and conjunction (aka filters), under the reasonable assumption that the number of conjunctions is bounded. We also prove that finite streamability fails without this assumption except if P=NP.
Minimization, learning, and conformance testing of boolean programs
 In CONCUR
, 2006
"... Abstract. Boolean programs with recursion are convenient abstractions of sequential imperative programs, and can be represented as recursive state machines (RSMs) or pushdown automata. Motivated by the special structure of RSMs, we define a notion of modular visibly pushdown automata (modular VPA) a ..."
Abstract

Cited by 10 (5 self)
 Add to MetaCart
(Show Context)
Abstract. Boolean programs with recursion are convenient abstractions of sequential imperative programs, and can be represented as recursive state machines (RSMs) or pushdown automata. Motivated by the special structure of RSMs, we define a notion of modular visibly pushdown automata (modular VPA) and show that for the class of languages accepted by such automata, unique minimal modular VPA exist. This yields an efficient approximate minimization theorem that minimizes RSMs to within a factor of k of the minimal RSM, where k is the maximum number of parameters in any module. Using the congruence defined for minimization, we show an active learning algorithm (with a minimally adequate teacher) for context free languages in terms of modular VPAs. We also present an algorithm that constructs complete test suites for Boolean program specifications. Finally, we apply our results on learning and test generation to perform model checking of blackbox Boolean programs. 1
R.: Instrumenting C programs with nested word monitors
 In: SPIN. (2007
"... In classical automatatheoretic model checking [6], a system model generates a language L of words modeling system executions, and verification involves ..."
Abstract

Cited by 10 (3 self)
 Add to MetaCart
(Show Context)
In classical automatatheoretic model checking [6], a system model generates a language L of words modeling system executions, and verification involves
Temporal logics for concurrent recursive programs: Satisfiability and model checking
 In MFCS’11, volume 6907 of LNCS
, 2011
"... Abstract. We develop a general framework for the design of temporal logics for concurrent recursive programs. A program execution is modeled as a partial order with multiple nesting relations. To specify properties of executions, we consider any temporal logic whose modalities aredefinable in monadi ..."
Abstract

Cited by 9 (3 self)
 Add to MetaCart
(Show Context)
Abstract. We develop a general framework for the design of temporal logics for concurrent recursive programs. A program execution is modeled as a partial order with multiple nesting relations. To specify properties of executions, we consider any temporal logic whose modalities aredefinable in monadic secondorder logic and that, in addition, allows PDLlike path expressions. This captures, in a unifying framework, a wide range of logics defined for ranked and unranked trees, nested words, and Mazurkiewicz traces that have been studied separately. We show that satisfiability and model checking are decidable in EXPTIME and 2EXPTIME, depending on the precise path modalities. 1
Language strength reduction
, 2008
"... This paper concerns methods to check for atomicset serializability violations in concurrent Java programs. The straightforward way to encode a reentrant lock is to model it with a contextfree language to track the number of successive lock acquisitions. We present a construction that replaces th ..."
Abstract

Cited by 8 (6 self)
 Add to MetaCart
(Show Context)
This paper concerns methods to check for atomicset serializability violations in concurrent Java programs. The straightforward way to encode a reentrant lock is to model it with a contextfree language to track the number of successive lock acquisitions. We present a construction that replaces the contextfree language that describes a reentrant lock by a regular language that describes a nonreentrant lock. We call this replacement language strength reduction. Language strength reduction produces an average speedup (geometric mean) of 3.4. Moreover, for 2 programs that previously exhausted available space, the tool is now able to run to completion.
Dependency Tree Automata
"... Abstract. We introduce a new kind of tree automaton, a dependency tree automaton, that is suitable for deciding properties of classes of terms with binding. Two kinds of such automaton are defined, nondeterministic and alternating. We show that the nondeterministic automata have a decidable nonempti ..."
Abstract

Cited by 7 (3 self)
 Add to MetaCart
(Show Context)
Abstract. We introduce a new kind of tree automaton, a dependency tree automaton, that is suitable for deciding properties of classes of terms with binding. Two kinds of such automaton are defined, nondeterministic and alternating. We show that the nondeterministic automata have a decidable nonemptiness problem and leave as an open question whether this is true for the alternating version. The families of trees that both kinds recognise are closed under intersection and union. To illustrate the utility of the automata, we apply them to terms of simply typed lambda calculus and provide an automatatheoretic characterisation of solutions to the higherorder matching problem.
Queries on Xml Streams with Bounded Delay and Concurrency
"... Streaming algorithms for Xml query answering call for efficient memory management. Tractable queries are distinguished by a bounded number of concurrently alive answer candidates at every time point, and a bounded delay for node selection, for every candidate. We show that both properties are decida ..."
Abstract

Cited by 7 (2 self)
 Add to MetaCart
(Show Context)
Streaming algorithms for Xml query answering call for efficient memory management. Tractable queries are distinguished by a bounded number of concurrently alive answer candidates at every time point, and a bounded delay for node selection, for every candidate. We show that both properties are decidable in polynomial time for queries defined by deterministic tree automata. Our results are obtained by reduction to the bounded valuedness problem for recognizable relations between unranked trees, a problem that we show to be decidable in polynomial time. Key words: streaming, tree automata, Xml, databases. 1.
From Regular Expressions to Nested Words: Unifying Languages and Query Execution for Relational and XML Sequences
, 2010
"... There is growing interest in query language extensions for pattern matching over event streams and stored database sequences, due to the many important applications that such extensions make possible. The push for such extensions has led DBMS vendors and DSMS venture companies to propose Kleeneclos ..."
Abstract

Cited by 6 (2 self)
 Add to MetaCart
(Show Context)
There is growing interest in query language extensions for pattern matching over event streams and stored database sequences, due to the many important applications that such extensions make possible. The push for such extensions has led DBMS vendors and DSMS venture companies to propose Kleeneclosure extensions of SQL standards, building on seminal research that demonstrated the effectiveness and amenability to efficient implementation of such constructs. These extensions, however powerful, suffer from limitations that severely impair their effectiveness in many realworld applications. To overcome these problems, we have designed the K*SQL language and system, based on our investigation of the nested words, which are recent models that generalize both words and trees. K*SQL extends the existing relational sequence languages, and also enables applications from other domains such as genomics, software analysis, and XML processing. At the same time, K*SQL remains extremely efficient, using our powerful optimizations for pattern search over nested words. Furthermore, we show that other sequence languages and XPath can be automatically translated into K*SQL, allowing for K*SQL to be also used as a highperformance query execution backend for those languages. Therefore, K*SQL is a unifying SQLbased engine for sequence and XML queries, which provides novel optimization techniques for both.