Adding nesting structure to words
Rajeev Alur,P. Madhusudan +1 more
TL;DR: In this paper, the authors define nested word automata, which generalize both words and ordered trees, and allow both word and tree operations, and show that the resulting class of regular languages of nested words has all the appealing theoretical properties that the classical regular word languages enjoys: deterministic nestedword automata are as expressive as their non-deterministic counterparts; the class is closed under union, intersection, complementation, concatenation, Kleene-a, prefixes, and language homomorphisms; membership, emptiness, language equivalence are all decidable;
read more
Abstract: We propose the model of nested words for representation of data with both a linear ordering and a hierarchically nested matching of items. Examples of data with such dual linear-hierarchical structure include executions of structured programs, annotated linguistic data, and HTML/XML documents. Nested words generalize both words and ordered trees, and allow both word and tree operations. We define nested word automata—finite-state acceptors for nested words, and show that the resulting class of regular languages of nested words has all the appealing theoretical properties that the classical regular word languages enjoys: deterministic nested word automata are as expressive as their nondeterministic counterparts; the class is closed under union, intersection, complementation, concatenation, Kleene-a, prefixes, and language homomorphisms; membership, emptiness, language inclusion, and language equivalence are all decidable; and definability in monadic second order logic corresponds exactly to finite-state recognizability. We also consider regular languages of infinite nested words and show that the closure properties, MSO-characterization, and decidability of decision problems carry over.The linear encodings of nested words give the class of visibly pushdown languages of words, and this class lies between balanced languages and deterministic context-free languages. We argue that for algorithmic verification of structured programs, instead of viewing the program as a context-free language over words, one should view it as a regular language of nested words (or equivalently, a visibly pushdown language), and this would allow model checking of many properties (such as stack inspection, pre-post conditions) that are not expressible in existing specification logics.We also study the relationship between ordered trees and nested words, and the corresponding automata: while the analysis complexity of nested word automata is the same as that of classical tree automata, they combine both bottom-up and top-down traversals, and enjoy expressiveness and succinctness benefits over tree automata.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Figures
Citations
Journal of the ACM
Dan Suciu,Victor Vianu +1 more
TL;DR: The following three articles are full versions of extended abstracts that were presented at the Twenty-Third ACM SIGMOD-SigACT-SIGART Symposium on Principles of Database Systems (PODS) and have been reviewed according to the standard JACM refereeing process.
862
The tree width of auxiliary storage
P. Madhusudan,Gennaro Parlato +1 more
- 26 Jan 2011
TL;DR: This work outlines a uniform mechanism to derive emptiness algorithms for automata, explaining and simplifying several existing results, as well as proving new decidability results.
Jumping finite automata
Alexander Meduna,Petr Zemek +1 more
TL;DR: The paper establishes several results concerning jumping finite automata in terms of commonly investigated areas of automata theory, such as decidability and closure properties, and achieves several results that demonstrate differences between jumping finiteAutomata and classical finite Automata.
101
High-performance complex event processing over XML streams
Barzan Mozafari,Kai Zeng,Carlo Zaniolo +2 more
- 20 May 2012
TL;DR: This paper presents the XSeq language and system that support CEP on XML streams, via an extension of XPath that is both powerful and amenable to an efficient implementation, and provides formal results on its expressiveness and complexity.
•Posted Content
Termination Analysis by Learning Terminating Programs
TL;DR: In this paper, a black-box termination analysis using a finite set of sample traces is presented, where each trace is represented by a finite lasso and the analysis can learn a program from a termination proof for the lasso.
57
References
•Book
Introduction to Automata Theory, Languages, and Computation
John E. Hopcroft,Rajeev Motwani,Rotwani,Jeffrey D. Ullman +3 more
- 01 Jan 1979
TL;DR: This book is a rigorous exposition of formal languages and models of computation, with an introduction to computational complexity, appropriate for upper-level computer science undergraduates who are comfortable with mathematical arguments.
14.5K
The temporal logic of programs
Amir Pnueli
- 30 Sep 1977
TL;DR: A unified approach to program verification is suggested, which applies to both sequential and parallel programs, and the main proof method is that of temporal reasoning in which the time dependence of events is the basic concept.
5.8K
•Book
An axiomatic basis for computer programming
C. A. R. Hoare
- 01 Jan 2002
TL;DR: In this article, the logical foundations of computer programming are explored by using techniques first applied in the study of geometry and later extended to other branches of mathematics, and a formal proof of a simple theorem is displayed.
3.3K
An axiomatic basis for computer programming
TL;DR: An attempt is made to explore the logical foundations of computer programming by use of techniques which were first applied in the study of geometry and have later been extended to other branches of mathematics.





