Results 1 - 10
of
30
Streaming transducers for algorithmic verification of singlepass list-processing programs
- In 38th ACM SIGACT-SIGPLAN Symposium on Princples of Programming Languages (POPL’11
, 2011
"... We introduce streaming data string transducers that map input data strings to output data strings in a single left-to-right pass in linear time. Data strings are (unbounded) sequences of data values, tagged with symbols from a finite set, over a potentially infinite data domain that supports only th ..."
Abstract
-
Cited by 33 (8 self)
- Add to MetaCart
(Show Context)
We introduce streaming data string transducers that map input data strings to output data strings in a single left-to-right pass in linear time. Data strings are (unbounded) sequences of data values, tagged with symbols from a finite set, over a potentially infinite data domain that supports only the operations of equality and ordering. The transducer uses a finite set of states, a finite set of variables ranging over the data domain, and a finite set of variables ranging over data strings. At every step, it can make decisions based on the next input symbol, updating its state, remembering the input data value in its data variables, and updating data-string variables by concatenating data-string variables and new symbols formed from data variables, while avoiding duplication. We establish that the problems of checking functional equivalence of two streaming transducers, and of checking whether a streaming transducer satisfies pre/post
Macro Tree Translations of Linear Size Increase are MSO Definable
- SIAM J. Comput
, 2001
"... Abstract. The first main result is that if a macro tree translation is of linear size increase, i.e., if the size of every output tree is linearly bounded by the size of the corresponding input tree, then the translation is MSO definable (i.e., definable in monadic second-order logic). This gives a ..."
Abstract
-
Cited by 25 (9 self)
- Add to MetaCart
(Show Context)
Abstract. The first main result is that if a macro tree translation is of linear size increase, i.e., if the size of every output tree is linearly bounded by the size of the corresponding input tree, then the translation is MSO definable (i.e., definable in monadic second-order logic). This gives a new characterization of the MSO definable tree translations in terms of macro tree transducers: they are exactly the macro tree translations of linear size increase. The second main result is that given a macro tree transducer, it can be decided whether or not its translation is MSO definable, and if it is then an equivalent MSO transducer can be constructed. Similar results hold for attribute grammars, which define a subclass of the macro tree translations.
Streaming tree transducers
- CoRR
"... Theory of tree transducers provides a foundation for understanding expressiveness and complexity of analysis problems for specification languages for transforming hierarchically structured data such as XML documents. We introduce streaming tree transducers as an analyzable, executable, and expressiv ..."
Abstract
-
Cited by 11 (4 self)
- Add to MetaCart
Theory of tree transducers provides a foundation for understanding expressiveness and complexity of analysis problems for specification languages for transforming hierarchically structured data such as XML documents. We introduce streaming tree transducers as an analyzable, executable, and expressive model for transforming unranked ordered trees (and hedges) in a single pass. Given a linear encoding of the input tree, the transducer makes a single left-to-right pass through the input, and computes the output in linear time using a finite-state control, a visibly pushdown stack, and a finite number of variables that store output chunks that can be combined using the operations of string-concatenation and tree-insertion. We prove that the expressiveness of the model coincides with transductions definable using monadic second-order logic (MSO). Existing models of tree transducers either cannot implement all MSO-definable transformations, or require regular look ahead that prohibits single-pass implementation. We show a variety of analysis problems such as type-checking and checking functional equivalence are decidable for our model. 1
Expressiveness of streaming string transducers
"... Streaming string transducers [1] define (partial) functions from input strings to output strings. A streaming string transducer makes a single pass through the input string and uses a finite set of variables that range over strings from the output alphabet. At every step, the transducer processes an ..."
Abstract
-
Cited by 11 (5 self)
- Add to MetaCart
Streaming string transducers [1] define (partial) functions from input strings to output strings. A streaming string transducer makes a single pass through the input string and uses a finite set of variables that range over strings from the output alphabet. At every step, the transducer processes an input symbol, and updates all the variables in parallel using assignments whose right-hand-sides are concatenations of output symbols and variables with the restriction that a variable can be used at most once in a right-hand-side expression. It has been shown that streaming string transducers operating on strings over infinite data domains are of interest in algorithmic verification of list-processing programs, as they lead to Pspace decision procedures for checking pre/post conditions and for checking semantic equivalence, for a well-defined class of heap-manipulating programs. In order to understand the theoretical expressiveness of streaming transducers, we focus on streaming transducers processing strings over finite alphabets, given the existence of a robust and well-studied class of “regular ” transductions for this case. Such regular transductions can be defined either by two-way deterministic finite-state transducers, or using a logical MSO-based characterization. Our main result is that the expressiveness of streaming string transducers coincides exactly with this class of regular transductions. 1
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 2-way deterministic VPA that can mark positions in a document, and show that it is equi ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
(Show Context)
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 2-way 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 n-ary queries. 1
Regular Functions, Cost Register Automata, and Generalized Min-Cost Problems
, 2012
"... Motivated by the successful application of the theory of regular languages to formal verification of finite-state systems, there is a renewed interest in developing a theory of analyzable functions from strings to numerical values that can provide a foundation for analyzing quantitative properties o ..."
Abstract
-
Cited by 9 (6 self)
- Add to MetaCart
Motivated by the successful application of the theory of regular languages to formal verification of finite-state systems, there is a renewed interest in developing a theory of analyzable functions from strings to numerical values that can provide a foundation for analyzing quantitative properties of finite-state systems. In this paper, we propose a deterministic model for associating costs with strings that is parameterized by operations of interest (such as addition, scaling, and min), a notion of regularity that provides a yardstick to measure expressiveness, and study decision problems and theoretical properties of resulting classes of cost functions. Our definition of regularity relies on the theory of string-to-tree transducers, and allows associating costs with events that are conditional upon regular properties of future events. Our model of cost register automata allows computation of regular functions using multiple “write-only ” registers whose values can be combined using the allowed set of operations. We show that classical shortest-path algorithms as well as algorithms designed for computing discounted costs, can be adopted for solving the min-cost problems for the more general classes of functions specified in our model. Cost register automata with min and increment give a deterministic model that is equivalent to weighted automata, an extensively studied nondeterministic model, and this 1.1
Transducers with origin information
- In ICALP
, 2014
"... Call a string-to-string transducer regular if it can be realised by one of the following equivalent models: mso transductions, two-way deter-ministic automata with output, and streaming transducers with registers. This paper proposes to treat origin information as part of the semantics of a regular ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
(Show Context)
Call a string-to-string transducer regular if it can be realised by one of the following equivalent models: mso transductions, two-way deter-ministic automata with output, and streaming transducers with registers. This paper proposes to treat origin information as part of the semantics of a regular string-to-string transducer. With such semantics, the model admits a machine-independent characterisation, Angluin-style learning in polynomial time, as well as effective characterisations of natural subclasses such as one-way transducers or first-order definable transducers. This paper is about string-to-string transducers which, in one of several equivalent definitions, can be described by deterministic two-way automata with output [AU70]. As shown in [EH01], this model is equivalent to mso definable string transducers. Another equivalent model, used in [AC10], is a deterministic one-way automaton with registers that store parts of the output1. Examples of such transducers include: duplication w 7 → ww; reversing w 7 → wR; a function
Maneth; Two-way finite state transducers with nested pebbles
- Proc. MFCS 2002, Lecture Notes in Computer Science 2420
, 2002
"... ..."
(Show Context)
Models of Tree Translation
"... This first chapter gives an introduction into the area of tree transducer theory, and describes the results presented in Chapters 2–6. The first section addresses general issues like translations, trees, and tree grammars. Section 2 is concerned with the different models of tree transducers that ar ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
This first chapter gives an introduction into the area of tree transducer theory, and describes the results presented in Chapters 2–6. The first section addresses general issues like translations, trees, and tree grammars. Section 2 is concerned with the different models of tree transducers that are considered in the thesis. It describes the typical problems that appear in tree transducer theory, and mentions important properties of the different tree transducer models. Section 3 describes the results of