<?xml version="1.0"?><!DOCTYPE article SYSTEM "/project/take/software/searchbench_offline_processing/paperxml_generator/aclextractor/src/python/../resource/dtd/paperxml.dtd"><article><header><firstpageheader><page local="1" global="112"/><title>Book Reviews: The Functional Treatment of Parsing</title><author surname="Schabes" givenname="Yves"><org  name="Institute for Perception Research" country="The Netherlands" city="Eindhoven"/></author></firstpageheader><frontmatter><p>Computational Linguistics</p><p>Volume 21, Number 1</p><p><b>The Functional Treatment of Parsing </b><b>René Leermakers</b></p><p>(Institute for Perception Research, Eindhoven)</p></frontmatter><abstract></abstract></header><body><section title=""><p>Dordrecht: Kluwer Academic Publishers (The Kluwer international series in engineering and computer science; Natural language processing and machine translation, edited by Jaime Carbonell, volume 242), 1993, xvi + 158 pp.</p><doubt alpha="28.1" length="57" tooSmall="False" monospace="0.0">Hardbound, ISBN 0-7923-9376-7, $79.95, £57.50, Dfl 160.00</doubt><p><i>Reviewed by Yves Schabes</i> <i>Mitsubishi Electric Research Laboratories</i></p><p>The study and implementation of parsing technologies are traditionally thought of as the foundation of two apparently unrelated fields, namely, programming languages and natural language processing. These two fields have often been seen as addressing problems on two different ends of a spectrum. Programming languages have an un­ambiguous syntax and can be processed deterministically, whereas natural languages are ambiguous. Although the two fields can be seen as unrelated in this respect, they share the study of parsing technologies. Modern programming language design relies heavily on grammatical frameworks and their parsing algorithms for syntactic and semantic analysis. Similarly, natural language systems rely on formalisms and their parsing algorithms. As a computational linguist, one should be well aware of the pars­ing methods of the 1960s and onward. Functional programming has recently gained popularity in the programming language community. In natural language processing, the statement of parsing algorithms in a functional notation and the use of memoiza-tion to handle non-determinism in parsing algorithms (Norvig 1991) are analogous to this direction.</p><p>This book presents a functional treatment of parsing. Most well-known parsing algorithms for programming languages and natural languages are represented uni­formly in a functional notation. The presentation relies heavily on new notations and simple mathematical concepts. The first chapters introduce a notation, "bunch" nota­tion, for sets and their constructs. Then, an algorithmic interpretation for the previ­ously defined language is denned. Leermakers achieves a tour de force: each (possibly non-deterministic) parsing algorithm is represented in a compact functional notation whose algorithmic interpretation yields an implementation of the algorithm. The inter­pretation of context-free grammars is stated in a similar style using the bunch notation. Traditional top-down parsing is stated in functional notation. The algorithmic interpre­tation of this functional notation yields a cubic-time parser for bilinear (at most binary branching) non-left-recursive grammars. Algorithmic conversions between top-down and bottom-up algorithms are presented as a grammar transformation that turns a grammar into a bilinear form in which left recursion has been eliminated. The top-down evaluation of the transformed grammar can be seen as a "bottom-up" parser reminiscent of a generalized left-corner parser. The approach is generalized to context-free grammars with regular expressions on the right-hand side. Then, the recognizer previously defined is extended to a parser with the use of parse forests for recovering derivations.<page local="2" global="113"/> Attribute grammars and the well-known LR parsing algorithm are also described. The last chapter consists of miscellaneous notes in the form of comments and bibliographical references.</p><p>Overall, the book is mostly consistent and well written. The content is rich, and I would recommend it to anyone interested in parsing algorithms. However, the style chosen for mathematical argumentation requires an attentive, nonlinear study. The definitions are clear syntactically, but they make sense only after reading the context in which they are used. The reader should also be aware that linguistics is not discussed. Some readers may actually be offended by the grammar used for illustrating context-free grammars, which treats intransitive verbs as transitive verbs with the empty string substituted as complement.</p><p>The functional paradigm is not well motivated. The book would also have been much stronger had experiments and details of implementation been included. Without this, one may wonder whether the proposed approach is of only mathematical interest. The fact that some complexity analysis given in the book takes into account only the length of the input and not the size of the grammar makes this problem even more acute. Also, the complexity of the most general parser, the left-corner (recursive ascent) parser is analyzed as <b><i>0(\G\pqn<footnote anchor="3"/>), </i></b>where <b><i>\G\ </i></b>is the size of the grammar, <b><i>p </i></b>is the number of non-terminals, and <b><i>q </i></b>is the number of items of the form C —&gt; X • <b><i>6 </i></b>with the same X. This is bigger than 0(|G|n<footnote anchor="3"/>), which is the complexity of standard context-free grammar parsers, such as the CKY parser (Kasami 1965), the parser described by Graham, Harri­son, and Ruzzo (1980), or efficient implementations of Earley's algorithm (Earley 1970).</p><p>Most of the references to previous work are found in the notes of the last chapter. Although they are adequate, some important references are missing. For example, the grammar transformation used for eliminating left recursion is very similar to the one described by Rosenkrantz and Lewis (1970) and Rosenkrantz (1967). Similarly, the interpretation of context-free grammars given in the book is similar to that using equations on languages (Chomsky and Schützenberger 1963), which is also described in numerous textbooks, such as Salomaa and Soittola 1978, and Gross and Lentin 1970.</p><p>The book is mostly free of editorial inconsistencies or errors. Some slipped through, however. For example, on page 55, the caption of Figure 5.3 should refer to Figure 3.1 instead of Figure 1.2.</p><p>Moreover, three different notations for context-free grammars are used. On page 16, a grammar rule is represented as a pair <b><i>(A, a), </i></b>which states that the non-terminal <b><i>A </i></b>can be rewritten as the string of symbols <b><i>a. </i></b>However, when the interpretation of a grammar is given, on page 22, the pair <b><i>{A, rj) </i></b>represents that the string <b><i>rj </i></b>can be de­rived from the non-terminal <b><i>A. </i></b>Then, a grammar rule <b><i>(A, rjp) </i></b>—► (X, <b>77) </b>( Y, <b><i>p) </i></b>states that the non-terminal <b><i>A </i></b>can be rewritten as X Y and that the derived string from <b><i>A {rip) </i></b>is the concatenation of the one from X <b><i>{rj) </i></b>and the one from Y (p). Later, a context-free rule is written as <b><i>A </i></b>—&gt; X Y.</p><p>Although most of the book is mathematically rigorous, there are a few cases where more rigor would have been appropriate. On pages 18 and 19, the existence and the uniqueness of the smallest solution for the interpretation of context-free grammars are proven very casually. Checking the applicability of Tarski's fixed-point theorem (Tarski 1955) on complete partial orders would have been one way to solve this question. The existence of a complete partial order in which the functions used are continuous would have guaranteed the existence and the uniqueness of the solution. Another way to prove this fact would have been to check the applicability of Banach's fixed-point theorem for contracting mapping in complete metric spaces (Banach 1922), as is usually done for formal power series (Chomsky and Schützenberger 1963).</p><page local="3" global="114"/><p>Although most of the book follows a rigorous mathematical argumentation, the reader is from time to time entertained by casual, poetic, and Persian Gulf-inspired diversions such as these:</p><p>The above gives already a fairly complete picture of context-free gram­mars—complete enough, in fact, for understanding much of this book. Chapter 3 describes the same concept in a pedantic way. (pp. 4-5)</p><p>Context-free grammars are usually presented as one level in the Chom­sky hierarchy of rewriting grammars [Chomsky, 1959]. This is a very one-sided way to depict context-free grammars, however. The formal­ism of context-free grammars is like a piece of art that can be placed in any of a great number of art styles but never really fits in. (p. 29)</p><p>In theoretical settings, the treatment of rules with regular expressions is often a bit cumbersome. Hence, it is tempting to dismiss regular ex­pressions with the excuse that they do not add to the weak generative power anyway. To make up for our succumbing to this temptation, we show in this section how to generalize results for normal context-free grammar to EBNF grammars, (p. 70)</p><p>The way context-free grammars have been formally introduced is un­conventional. Normally, they are presented as rewriting systems—as one level in the Chomsky hierarchy (see [Chomsky, 1959]). I always felt uneasy about this injustice: the formalism of context-free gram­mars is not part of one hierarchy; it is the mother of all grammar hierarchies. Therefore, I decided to start differently, (p. 143)</p><p>In conclusion, those familiar with parsing algorithms will enjoy reading this book. However, it may not be appropriate as an introduction to parsing algorithms.</p></section><references><p><b>Banach, Stefan (1922). "Sur les operations dans les ensembles abstraits et leurs applications aux equations integrales." </b><b><i>Fundamenta Mathematicae </i></b><b>3:7-33.</b></p><p><b>Chomsky, Noam and Schützenberger, Marcel Paul (1963). "The algebraic theory of context-free languages." In </b><b><i>Computer Programming and Formal Systems, </i></b><b>edited by </b><b>P.</b><b> Braffort and D. Hirschberg. Amsterdam: North-Holland.</b></p><p><b>Earley, Jay C. (1970). "An efficient context-free parsing algorithm." </b><b><i>Communications of the ACM </i></b><b>13(2):94-102.</b></p><p><b>Graham, Susan L.; Harrison, Michael A.; and Ruzzo, Walter L. (1980). "An improved context-free recognizer." </b><b><i>ACM Transactions on Programming Languages and Systems </i></b><b>2(3):415-462.</b></p><p><b>Gross, Maurice and Lentin, André (1970). </b><b><i>Introduction to Formal Grammars. </i></b><b>196-215. New York: Springer-Verlag.</b></p><p><b>Kasami, Tadao (1965). "An efficient recognition and syntax algorithm for</b> <b>context-free languages.</b><b>" Technical Report AF-CRL-65-758, Air Force Cambridge Research Laboratory, Bedford, Massachusetts.</b></p><doubt alpha="64.9" length="37" tooSmall="False" monospace="0.0">Norvig, Peter (1991). "Techniques for</doubt><p><b>automatic memoization with applications to context-free parsing." </b><b><i>Computational Linguistics </i></b><b>17(l):91-98.</b></p><p><b>Rosenkrantz, Daniel J. (1967). "Matrix equations and normal forms for context-free grammars." </b><b><i>Journal of the Association for Computing Machinery </i></b><b>14(3)501-507.</b></p><p><b>Rosenkrantz, Daniel J. and Lewis, Philip M., II (1970). "Deterministic left corner parsing." In IEEE </b><b><i>Conference Record of the 11th Annual Symposium on Switching and Automata Theory. </i></b><b>139-152.</b></p><p><b>Salomaa, Arto, and Soittola, Matti (1978). </b><b><i>Automata-Theoretic Aspects of Formal Power Series. </i></b><b>New York: Springer-Verlag.</b></p><p><b>Tarski, Alfred (1955). </b><b><i>"A </i></b><b>lattice-theoretical fixpoint theorem and its applications." </b><b><i>Pacific Journal of Mathematics </i></b><b>5:285-309.</b></p><page local="4" global="115"/><p><b><i>Yves Schabes </i></b><b>is a research scientist at Mitsubishi Electric Research Laboratories. In his thesis work and as a research associate at the University of Pennsylvania, he led the design and implementation of a wide-coverage tree-adjoining grammar for English. He has designed a number of other grammars and parsing algorithms and has investigated statistical models for natural language processing. Schabes's address is Mitsubishi Electric Research Laboratories, 201 Broadway, Cambridge, MA 02139. E-mail: </b>schabes@merl.com</p></references></body></article>