Results 1  10
of
12
Macro Tree Transducers, Attribute Grammars, and MSO Definable Tree Translations
 Inform. and Comput
, 1998
"... A characterization is given of the class of tree translations definable in monadic second order logic (MSO), in terms of macro tree transducers. The first main result is that the MSO definable tree translations are exactly those tree translations realized by macro tree transducers (MTTs) with reg ..."
Abstract

Cited by 46 (20 self)
 Add to MetaCart
A characterization is given of the class of tree translations definable in monadic second order logic (MSO), in terms of macro tree transducers. The first main result is that the MSO definable tree translations are exactly those tree translations realized by macro tree transducers (MTTs) with regular lookahead that are single use restricted. For this the single use restriction known from attribute grammars is generalized to MTTs. Since MTTs are closed under regular lookahead, this implies that every MSO definable tree translation can be realized by an MTT. The second main result is that the class of MSO definable tree translations can also be obtained by restricting MTTs with regular lookahead to be finite copying, i.e., to require that each input subtree is processed only a bounded number of times. The single use restriction is a rather strong, static restriction on the rules of an MTT, whereas the finite copying restriction is a more liberal, dynamic restriction on the ...
A comparison of pebble tree transducers with macro tree transducers
 Acta Informatica
, 2003
"... Abstract. The npebble tree transducer was recently proposed as a model for XML query languages. The four main results on deterministic transducers are: First, (1) the translation τ of an npebble tree transducer can be realized by a composition of n + 1 0pebble tree transducers. Next, the pebble t ..."
Abstract

Cited by 37 (10 self)
 Add to MetaCart
Abstract. The npebble tree transducer was recently proposed as a model for XML query languages. The four main results on deterministic transducers are: First, (1) the translation τ of an npebble tree transducer can be realized by a composition of n + 1 0pebble tree transducers. Next, the pebble tree transducer is compared with the macro tree transducer, a wellknown model for syntaxdirected semantics, with decidable type checking. The 0pebble tree transducer can be simulated by the macro tree transducer, which, by the first result, implies that (2) τ can be realized by an (n+1)fold composition of macro tree transducers. Conversely, every macro tree transducer can be simulated by a composition of 0pebble tree transducers. Together these simulations prove that (3) the composition closure of npebble tree transducers equals that of macro tree transducers (and that of 0pebble tree transducers). Similar results hold in the nondeterministic case. Finally, (4) the output languages of deterministic npebble tree transducers form a hierarchy with respect to the number n of pebbles. 1
Benefits of Tree Transducers for Optimizing Functional Programs
 In FST & TCS'98, Chennai, India, Proceedings, volume 1530 of LNCS
, 1998
"... We present a technique to prevent the construction of intermediate data structures in functional programs, which is based on results from the theory of tree transducers. We first decompose function definitions, which correspond to macro tree transducers, into smaller pieces. Under certain restrictio ..."
Abstract

Cited by 31 (6 self)
 Add to MetaCart
We present a technique to prevent the construction of intermediate data structures in functional programs, which is based on results from the theory of tree transducers. We first decompose function definitions, which correspond to macro tree transducers, into smaller pieces. Under certain restrictions...
A Comparison of Tree Transductions defined by Monadic Second Order Logic and by Attribute Grammars
, 1998
"... . Two wellknown formalisms for the specication and computation of tree transductions are compared: the mso graph transducer and the attributed tree transducer with lookahead, respectively. The mso graph transducer, restricted to trees, uses monadic second order logic to dene the output tree in ..."
Abstract

Cited by 25 (8 self)
 Add to MetaCart
. Two wellknown formalisms for the specication and computation of tree transductions are compared: the mso graph transducer and the attributed tree transducer with lookahead, respectively. The mso graph transducer, restricted to trees, uses monadic second order logic to dene the output tree in terms of the input tree. The attributed tree transducer is an attribute grammar in which all attributes are trees; it is preceded by a lookahead phase in which all attributes have nitely many values. The main result is that these formalisms are equivalent, i.e., that the attributed tree transducer with lookahead is an appropriate implementation model for the tree transductions that are speciable in mso logic. This result holds for mso graph transducers that produce trees with shared subtrees. If no sharing is allowed, the attributed tree transducer satises the single use restriction. 1 Introduction Formulas of monadic second order (mso) logic can be used to express properti...
Composition of functions with accumulating parameters
 Journal of Functional Programming
, 2004
"... Many functional programs with accumulating parameters are contained in the class of macro tree transducers. We present a program transformation technique that can be used to solve the efficiency problems due to creation and consumption of intermediate data structures in compositions of such function ..."
Abstract

Cited by 20 (9 self)
 Add to MetaCart
Many functional programs with accumulating parameters are contained in the class of macro tree transducers. We present a program transformation technique that can be used to solve the efficiency problems due to creation and consumption of intermediate data structures in compositions of such functions, where classical deforestation techniques fail. In order to do so, given two macro tree transducers under appropriate restrictions, we construct a single macro tree transducer that implements the composition of the two original ones. The imposed restrictions are more liberal than those in the literature on macro tree transducer composition, thus generalising previous results.
Extended Multi BottomUp Tree Transducers
"... Abstract. Extended multi bottomup tree transducers are de ned and investigated. They are an extension of multi bottomup tree transducers by arbitrary, not just shallow, lefthand sides of rules; this includes rules that do not consume input. It is shown that such transducers can compute any transf ..."
Abstract

Cited by 9 (5 self)
 Add to MetaCart
Abstract. Extended multi bottomup tree transducers are de ned and investigated. They are an extension of multi bottomup tree transducers by arbitrary, not just shallow, lefthand sides of rules; this includes rules that do not consume input. It is shown that such transducers can compute any transformation that is computed by a linear extended topdown tree transducer. Moreover, the classical composition results for bottomup tree transducers are generalized to extended multi bottomup tree transducers. Finally, a characterization in terms of extended topdown tree transducers is presented. 1
A Pumping Lemma for Output Languages of Macro Tree Transducers
"... The concept of macro tree transducer is a formal model for studying properties of syntax directed translations and of functional languages which are based on primitive recursion. In this paper, for output languages of producing and nondeleting macro tree transducers, we introduce and prove a pumpi ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
The concept of macro tree transducer is a formal model for studying properties of syntax directed translations and of functional languages which are based on primitive recursion. In this paper, for output languages of producing and nondeleting macro tree transducers, we introduce and prove a pumping lemma. We apply this pumping lemma to gain two results: (1) there is no producing and nondeleting macro tree transducer which computes the set of all monadic trees with double exponential height as output and (2) there are hierarchies of producing and nondeleting macro tree transducers with respect to their number of functions. 1 Introduction Pumping lemmata are useful tools to prove that a given language L is not an element of a class L of formal languages, where L usually is defined by a class of grammars or translation schemes. Pumping lemmata have been investigated for different kinds of languages, for example string languages, tree languages, and graph languages. In this introduct...
Attribute Grammars and Monadic Second Order Logic
, 1996
"... It is shown that formulas in monadic second order logic (mso) with one free variable can be mimicked by attribute grammars with a designated boolean attribute and vice versa. We prove that mso formulas with two free variables have the same power in defining binary relations on nodes of a tree as reg ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
It is shown that formulas in monadic second order logic (mso) with one free variable can be mimicked by attribute grammars with a designated boolean attribute and vice versa. We prove that mso formulas with two free variables have the same power in defining binary relations on nodes of a tree as regular path languages have. For graphs in general, mso formulas turn out to be stronger. We also compare path languages against the routing languages of Klarlund and Schwartzbach. We compute the complexity of evaluating mso formulas with free variables, especially in the case where there is a dependency between free variables of the formula. Last, it is proven that mso tree transducers have the same strength as attributed tree transducers with the single use requirement and flags.
The Universality of HigherOrder Attributed Tree Transducers
 Theory of Computing Systems
, 1999
"... In this paper we present higherorder attributed tree transducers as a formal computational model for higherorder attribute grammars. The latter is a generalization of the classical concept of attribute grammars in the sense that during attribute evaluation, the input tree can be enlarged by inse ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
In this paper we present higherorder attributed tree transducers as a formal computational model for higherorder attribute grammars. The latter is a generalization of the classical concept of attribute grammars in the sense that during attribute evaluation, the input tree can be enlarged by inserting subtrees which were computed during attribute evaluation. We prove the universality of this formalism by showing that the class of functions described by higherorder attributed tree transducers coincides with the class of (partial) recursive tree functions. 1 Introduction Attribute grammars were devised by Knuth [Knu68, Knu71] to describe semantical aspects of contextfree languages. They give a meaning to every derivation tree of the underlying context free grammar by assigning values to various attributes associated with the nodes of the tree. Here, the derivation tree is static; it is not possible to modify its structure. Higherorder attribute grammars (HOAGs for short) we...
Compilerbased Implementation of SyntaxDirected Functional Programming
 Aachen University of Technology
, 1991
"... We consider particular functional programs in which on the one hand the recursion is restricted to syntaxdirected recursion and on the other hand simultaneous recursion and nesting of function calls in parameter positions of other functions is allowed. For such programs called syntaxdirected funct ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
We consider particular functional programs in which on the one hand the recursion is restricted to syntaxdirected recursion and on the other hand simultaneous recursion and nesting of function calls in parameter positions of other functions is allowed. For such programs called syntaxdirected functional programs, we formalize a compilerbased implementation of the callby name computation strategy. The machine involved in this implementation, called syntaxdirected runtimestack machine, is minimal in the sense that it computes exactly the class sdFun of functions which are expressible by syntaxdirected functional programs. We verify this minimality property by showing a onetoone correspondence between the implementation presented in this paper, and an interpreterbased implementation of syntaxdirected functional programs on checkingtree nestedstack transducers. It is known from the literature that such transducers characterize in a formal sense the class sdFun. The work of thi...