Programming Using Automata and Transducers
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Tree Automata Techniques and Applications
Tree Automata Techniques and Applications Hubert Comon Max Dauchet Remi´ Gilleron Florent Jacquemard Denis Lugiez Sophie Tison Marc Tommasi Contents Introduction 7 Preliminaries 11 1 Recognizable Tree Languages and Finite Tree Automata 13 1.1 Finite Tree Automata . 14 1.2 The pumping Lemma for Recognizable Tree Languages . 22 1.3 Closure Properties of Recognizable Tree Languages . 23 1.4 Tree homomorphisms . 24 1.5 Minimizing Tree Automata . 29 1.6 Top Down Tree Automata . 31 1.7 Decision problems and their complexity . 32 1.8 Exercises . 35 1.9 Bibliographic Notes . 38 2 Regular grammars and regular expressions 41 2.1 Tree Grammar . 41 2.1.1 Definitions . 41 2.1.2 Regular tree grammar and recognizable tree languages . 44 2.2 Regular expressions. Kleene’s theorem for tree languages. 44 2.2.1 Substitution and iteration . 45 2.2.2 Regular expressions and regular tree languages. 48 2.3 Regular equations. 51 2.4 Context-free word languages and regular tree languages . 53 2.5 Beyond regular tree languages: context-free tree languages . 56 2.5.1 Context-free tree languages . 56 2.5.2 IO and OI tree grammars . 57 2.6 Exercises . 58 2.7 Bibliographic notes . 61 3 Automata and n-ary relations 63 3.1 Introduction . 63 3.2 Automata on tuples of finite trees . 65 3.2.1 Three notions of recognizability . 65 3.2.2 Examples of the three notions of recognizability . 67 3.2.3 Comparisons between the three classes . 69 3.2.4 Closure properties for Rec£ and Rec; cylindrification and projection . -
Capturing Cfls with Tree Adjoining Grammars
Capturing CFLs with Tree Adjoining Grammars James Rogers* Dept. of Computer and Information Sciences University of Delaware Newark, DE 19716, USA j rogers©cis, udel. edu Abstract items that occur in that string. There are a number We define a decidable class of TAGs that is strongly of reasons for exploring lexicalized grammars. Chief equivalent to CFGs and is cubic-time parsable. This among these are linguistic considerations--lexicalized class serves to lexicalize CFGs in the same manner as grammars reflect the tendency in many current syntac- the LC, FGs of Schabes and Waters but with consider- tic theories to have the details of the syntactic structure ably less restriction on the form of the grammars. The be projected from the lexicon. There are also practical class provides a nornlal form for TAGs that generate advantages. All lexicalized grammars are finitely am- local sets m rnuch the same way that regular grammars biguous and, consequently, recognition for them is de- provide a normal form for CFGs that generate regular cidable. Further, lexicalization supports strategies that sets. can, in practice, improve the speed of recognition algo- rithms (Schabes et M., 1988). Introduction One grammar formalism is said to lezicalize an- We introduce the notion of Regular Form for Tree Ad- other (Joshi and Schabes, 1992) if for every grammar joining (;rammars (TA(;s). The class of TAGs that in the second formalism there is a lexicalized grammar are in regular from is equivalent in strong generative in the first that generates exactly the same set of struc- capacity 1 to the Context-Free Grammars, that is, the tures. -
Deterministic Top-Down Tree Automata: Past, Present, and Future
Deterministic Top-Down Tree Automata: Past, Present, and Future Wim Martens1 Frank Neven2 Thomas Schwentick1 1 University of Dortmund Germany 2 Hasselt University and Transnational University of Limburg School for Information Technology Belgium Abstract In strong contrast to their non-deterministic counterparts, deter- ministic top-down tree automata received little attention in the sci- entific literature. The aim of this article is to survey recent and less recent results and stipulate new research directions for top-down de- terministic tree automata motivated by the advent of the XML data exchange format. In particular, we survey different ranked and un- ranked top-down tree automata models and discuss expressiveness, closure properties and the complexity of static analysis problems. 1 Introduction The goal of this article is to survey some results concerning deterministic top-down tree automata motivated by purely formal language theoretic rea- sons (past) and by the advent of the data exchange format XML (present). Finally, we outline some new research directions (future). The Past. Regular tree languages have been studied in depth ever since their introduction in the late sixties [10]. Just as for regular string languages, regular tree languages form a robust class admitting many closure properties and many equivalent formulations, the most prominent one in the form of tree automata. A striking difference with the string case where left-to-right equals right-to-left processing, is that top-down is no longer equivalent to bottom-up. In particular, top-down deterministic tree automata are strictly less expressive than their bottom-up counterparts and consequently form a strict subclass of the regular tree languages. -
Equivalence of Deterministic Top-Down Tree-To-String Transducers (Ydt Trans- Ducers)
Equivalence of Deterministic Top-Down Tree-to-String Transducers is Decidable Helmut Seidl Sebastian Maneth Gregor Kemper Fakultat¨ fur¨ Informatik School of Informatics Fakultat¨ fur¨ Mathematik TU Munchen¨ University of Edinburgh TU Munchen¨ Garching, Germany Edinburgh, UK Garching, Germany Email: [email protected] Email: [email protected] Email: [email protected] Abstract We show that equivalence of deterministic top-down tree-to-string transducers is decidable, thus solving a long standing open problem in formal language theory. We also present efficient algorithms for subclasses: polynomial time for total transducers with unary output alphabet (over a given top-down regular domain language), and co- randomized polynomial time for linear transducers; these results are obtained using techniques from multi-linear algebra. For our main result, we prove that equivalence can be certified by means of inductive invariants using polynomial ideals. This allows us to construct two semi-algorithms, one searching for a proof of equivalence, one for a witness of non-equivalence. Furthermore, we extend our result to deterministic top-down tree-to-string transducers which produce output not in a free monoid but in a free group. I. INTRODUCTION Transformations of structured data are at the heart of functional programming [1], [2], [3], [4], [5] and also application areas such as compiling [6], document processing [7], [8], [9], [10], [11], [12], [13], automatic translation of natural languages [14], [15], [16], [17] or even cryptographic protocols [18]. The most fundamental model of such transformations is given by (finite-state tree) transducers [19], [6]. Transducers traverse the input by means of finitely many mutually recursive functions — corresponding to finitely many states. -
Translations on a Context Free Grammar A. V. AHO and J. D
INFORMATION AND CONTROL 19, 439-475 (1971) Translations on a Context Free Grammar A. V. AHO AND J. D. ULLMAN* Bell Telephone Laboratories, Incorporated, Murray Hill, New Jersey 07974 Two schemes for the specification of translations on a context-free grammar are proposed. The first scheme, called a generalized syntax directed translation (GSDT), consists of a context free grammar with a set of semantic rules associated with each production of the grammar. In a GSDT an input word is parsed according to the underlying context free grammar, and at each node of the tree, a finite number of translation strings are computed in terms of the translation strings defined at the descendants of that node. The functional relationship between the length of input and length of output for translations defined by GSDT's is investigated. The second method for the specification of translations is in terms of tree automata--finite automata with output, walking on derivation trees of a context free grammar. It is shown that tree automata provide an exact characterization for those GSDT's with a linear relationship between input and output length. I. SYNTAX DIRECTED TRANSLATION A translation is a set of pairs of strings. One common technique for the specification of translations is to use a context free grammar (CFG) to specify the domain of the translation. An input string is parsed according to this grammar, and the output string associated with this input is specified as a function of the parse tree. A large class of translations can be specified in this manner. Compilers utilizing this principle are termed syntax directed, and several compilers and compiler writing systems have been built around this concept. -
Efficient Techniques for Parsing with Tree Automata
Efficient techniques for parsing with tree automata Jonas Groschwitz and Alexander Koller Mark Johnson Department of Linguistics Department of Computing University of Potsdam Macquarie University Germany Australia groschwi|[email protected] [email protected] Abstract ing algorithm which recursively explores substruc- tures of the input object and assigns them non- Parsing for a wide variety of grammar for- terminal symbols, but their exact relationship is malisms can be performed by intersecting rarely made explicit. On the practical side, this finite tree automata. However, naive im- parsing algorithm and its extensions (e.g. to EM plementations of parsing by intersection training) have to be implemented and optimized are very inefficient. We present techniques from scratch for each new grammar formalism. that speed up tree-automata-based pars- Thus, development time is spent on reinventing ing, to the point that it becomes practically wheels that are slightly different from previous feasible on realistic data when applied to ones, and the resulting implementations still tend context-free, TAG, and graph parsing. For to underperform. graph parsing, we obtain the best runtimes Koller and Kuhlmann (2011) introduced Inter- in the literature. preted Regular Tree Grammars (IRTGs) in order to address this situation. An IRTG represents 1 Introduction a language by describing a regular language of Grammar formalisms that go beyond context-free derivation trees, each of which is mapped to a term grammars have recently enjoyed renewed atten- -
Categorical Semantics and Composition of Tree Transducers
Categorical semantics and composition of tree transducers Dissertation zur Erlangung des akademischen Grades Doktor rerum naturalium (Dr. rer. nat.) vorgelegt an der Technischen Universit¨at Dresden Fakult¨at Informatik eingereicht von Diplom-Mathematiker Claus Jurgensen¨ geboren am 05. Mai 1966 in Kappeln an der Schlei Gutachter: Prof. Dr.-Ing. habil. Heiko Vogler, Technische Universit¨at Dresden Prof. Dr. rer. nat. habil. Horst Reichel, Technische Universit¨at Dresden Prof. Dr. Zolt´an Ful¨¨ op, Universit¨at Szeged, Ungarn Tag der Verteidigung: 30.01.2004 Dresden im Oktober 2003 ii Acknowledgments This dissertation would not have been written without the support from many people. I am grateful to Heiko Vogler for accepting the supervision of this thesis and for providing ideal conditions for doing research. I am obliged to Zolt´an Ful¨¨ op and Horst Reichel for accepting to be referees. Life in Dresden would not be fun without a number of people. My office- mates Lutz Straßburger, Bj¨orn Borchardt and Igor Tarasyuk somehow put up with me for some years. I am particularly thankful to Janis Voigtl¨ander, the most critical reader of my papers: His discerning remarks have always been very helpful to me. I have also been fortunate to share Dresden with Armin Kuhnemann,¨ Enrico Bormann, Alexandre Scalzitti, Andreas Maletti, and Kai Brunnler.¨ This thesis would not exist without the support of Gwendoline Blandin. During all the time she has been a continuous source of love and inspiration. This PhD thesis has been written with the financial support of the post- graduate program Specification of discrete processes and systems of processes by operational models and logics (GRK 334) of the German Research Com- munity (DFG). -
An Automata-Based Approach to Pattern Matching
Intelligent Control and Automation, 2013, 4, 309-312 http://dx.doi.org/10.4236/ica.2013.43036 Published Online August 2013 (http://www.scirp.org/journal/ica) An Automata-Based Approach to Pattern Matching Ali Sever Pfeiffer University, Misenheimer, USA Email: [email protected] Received January 21, 2013; revised March 4, 2013; accepted March 11, 2013 Copyright © 2013 Ali Sever. This is an open access article distributed under the Creative Commons Attribution License, which per- mits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. ABSTRACT Due to its importance in security, syntax analysis has found usage in many high-level programming languages. The Lisp language has its share of operations for evaluating regular expressions, but native parsing of Lisp code in this way is unsupported. Matching on lists requires a significantly more complicated model, with a different programmatic ap- proach than that of string matching. This work presents a new automata-based approach centered on a set of functions and macros for identifying sequences of Lisp S-expressions using finite tree automata. The objective is to test that a given list is an element of a given tree language. We use a macro that takes a grammar and generates a function that reads off the leaves of a tree and tries to parse them as a string in a context-free language. The experimental results in- dicate that this approach is a viable tool for parsing Lisp lists and expressions in the abstract interpretation framework. Keywords: Computation and Automata Theory; Pattern Matching; Regular Languages 1. -
Theory and Applications of Tree Languages
Contributions to the Theory and Applications of Tree Languages Johanna H¨ogberg Ph.D. Thesis, May 2007 Department of Computing Science Ume˚a University Department of Computing Science Ume˚aUniversity SE-901 87 Ume˚a,Sweden Copyright c J. H¨ogberg, 2007 Except Paper I, c Springer-Verlag, 2003 Paper II, c Elsevier, 2007 Paper III, c F. Drewes, J. H¨ogberg, 2007 Paper IV, c World Scientific, 2007 Paper V, c Springer-Verlag, 2007 Paper VI, c Springer-Verlag, 2007 Paper VII, c Springer-Verlag, 2005 Paper VIII, c Springer-Verlag, 2007 ISBN 978-91-7264-336-9 ISSN 0348-0542 UMINF 07.07 Printed by Solfj¨adernOffset, Ume˚a,2007 Preface The study of tree languages was initiated in the late s and was originally motivated by various problems in computational linguistics. It is presently a well-developed branch of formal language theory and has found many uses, including natural language processing, compiler theory, model checking, and tree-based generation. This thesis is, as its name suggests, concerned with theoretical as well as practical aspects of tree languages. It consists of an opening introduction, written to provide motivation and basic concepts and terminology, and eight papers, organised into three parts. The first part treats algorithmic learning of regular tree languages, the second part is concerned with bisimulation minimisation of nondeterministic tree automata, and the third part is devoted to tree-based generation of music. We now summarise the contributions made in each part, and list the papers included therein. More detailed summaries of the individual papers are given in Chapter 3. -
Automata and Formal Languages II Tree Automata
Automata and Formal Languages II Tree Automata Peter Lammich SS 2015 1 / 161 Overview by Lecture • Apr 14: Slide 3 • Apr 21: Slide 2 • Apr 28: Slide 4 • May 5: Slide 50 • May 12: Slide 56 • May 19: Slide 64 • May 26: Holiday • Jun 02: Slide 79 • Jun 09: Slide 90 • Jun 16: Slide 106 • Jun 23: Slide 108 • Jun 30: Slide 116 • Jul 7: Slide 137 • Jul 14: Slide 148 2 / 161 Organizational Issues Lecture Tue 10:15 – 11:45, in MI 00.09.38 (Turing) Tutorial ? Wed 10:15 – 11:45, in MI 00.09.38 (Turing) • Weekly homework, will be corrected. Hand in before tutorial. Discussion during tutorial. Exam Oral, Bonus for Homework! • ≥ 50% of homework =) 0:3/0:4 better grade On first exam attempt. Only if passed w/o bonus! Material Tree Automata: Techniques and Applications (TATA) • Free download at http://tata.gforge.inria.fr/ Conflict with Equational Logic. 3 / 161 Proposed Content • Finite tree automata: Basic theory (TATA Ch. 1) • Pumping Lemma, Closure Properties, Homomorphisms, Minimization, ... • Regular tree grammars and regular expressions (TATA Ch. 2) • Hedge Automata (TATA Ch. 8) • Application: XML-Schema languages • Application: Analysis of Concurrent Programs • Dynamic Pushdown Networks (DPN) 4 / 161 Table of Contents 1 Introduction 2 Basics 3 Alternative Representations of Regular Languages 4 Model-Checking concurrent Systems 5 / 161 Tree Automata • Finite automata recognize words, e.g.: b q0 qF a q0 ! a(qF ) qF ! b(q0) • Words of alternating as and bs, ending with a, e.g., aba or abababa • Generalize to trees q0 ! a(q1; q1) q1 ! b(q0; q0) q1 ! L() • Trees with alternating „layers” of a nodes and b nodes. -
A Weighted Tree Transducer Toolkit for Syntactic Natural Language Processing Models
A Weighted Tree Transducer Toolkit for Syntactic Natural Language Processing Models Jonathan May June 2008 Abstract Solutions for many natural language processing problems such as speech recognition, transliteration, and translation have been described as weighted finite-state transducer cascades. The transducer formalism is very useful for researchers, not only for its ability to expose the deep similarities between seemingly disparate models, but also because expressing models in this formalism allows for rapid implementation of real, data-driven systems. Finite-state toolkits can interpret and process transducer chains using generic algorithms and many real-world systems have been built using these toolkits. Current research in NLP makes use of syntax-rich models that are poorly suited to extant transducer toolkits, which process linear input and output. Tree transducers can handle these models, and a weighted tree transducer toolkit with appropriate generic algorithms will lead to the sort of gains in syntax-based modeling that were achieved with string transducer toolkits. This thesis presents Tiburon, a weighted tree transducer toolkit that is highly suited for the processing of syntactic NLP models. Tiburon contains implementations of novel determinization, minimization, and training algorithms that are extensions of classical algorithms suitable for the processing of weighted tree transducers and automata. Tiburon also contains algorithms reflecting previously known results for generation, composition, and projection. We show Tiburon’s effectiveness at rapid reproduction of previously presented syntax-based machine translation and parsing models as well as its utility in constructing and evaluating novel models. Chapter 1 Introduction: Models and Transducers I can’t work without a model. -
Tree Pushdown Automata
View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector JOURNAL OF COMPUTER AND SYSTEM SCIENCES 30, 25-40 (1985) Tree Pushdown Automata KARL M. SCHIMPF Department of Computer and Information Sciences, University of California, Santa Cruz, California AND JEAN H. GALLIER Department of Computer and Information Science, University of Pennsylvania, Philadelphia, Pennsylvania 19104 Received March 5, 1983; revised June 1, 1984 This paper presents a new type of automaton called a tree pushdown automaton (a bottom- up tree automaton augmented with internal memory in the form of a tree, similar to the way a stack is added to a finite state machine to produce a pushdown automaton) and shows that the class of languages recognized by such automata is identical to the class of context-free tree languages. 0 1985 Academic Press, Inc. I. INTRODUCTION Tree languages are frequently used to model computations based on tree (or hierarchical) structures. For example, one can use tree structures to model the call- ing structure of a set of procedures and functions such as in derivation trees, syntax directed translation, and recursive schemes [30, 2, 15, 16, 8, 32, 6, 7, 17, 251. These applications of tree language theory frequently use the methods and results of for- mal language theory [27, 28, 9, 10, 311. In particular, these applications can be characterized using context-free tree languages [27, 28, 12, 11, 71. Other applications include the class of macro (or indexed) languages since the class of languages generated by the yield of context-free tree languages is the class of macro (context-sensitive) string languages [l, 13, 14, 2.5, 9, 11, 26, 271.