Skip to main content

Testing Grammars for Parsability

  • Chapter
Parsing Theory

Part of the book series: EATCS ((EATCS,volume 20))

  • 131 Accesses

Abstract

In the preceding chapters we have studied in detail the major methods of deterministic context-free parsing: strong LL(k) parsing (Chapter 5), simple precedence parsing (Chapter 5), canonical LR(k) parsing, LALR(k) parsing, and SLR(k) parsing (Chapters 6 and 7), and canonical LL(k) parsing (Chapter 8). Each of these methods induces a class of grammars that are “parsable” using that method, that is, a class of grammars for which a deterministic parser employing that method can be constructed. For example, the LL(k) grammars constitute the class of grammars parsable by the LL(k) parsing method. By definition, a context-free grammar is an LL(k) grammar if and only if its canonical LL(k) parser is deterministic.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 54.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Bibliographic Notes

  • The fundamental result that for any fixed natural number k there exists a polynomial time-bounded deterministic algorithm for testing a context-free grammar for the LR(k) property is already present in the paper by Knuth (1965). The algorithm given by Knuth is essentially that implied by the nondeterministic finite automaton M k (G’) (Theorem 10.11). In place of a finite automaton Knuth used a right-linear grammar. The idea of using in place of M k (G’) a collection of more succinct automata Mu(G’) was suggested by Hunt, Szymanski and Ullman (1975). From them comes Theorem 10.21. Hunt, Szymanski and Ullman were also the first to investigate the nondeterministic complexity of non-LR(k) testing and the effect of the role of k in the complexity. From their paper come Theorem 10.24 and the results for SLR(k) testing (Theorems 10.28 and 10.30). The improved time bound for SLR(1) testing (Exercise 10.19) is from Hunt, Szymanski and Ullman (1974, 1977), and the improved time bound fer SLR(2) testing is from Sippu and SoisalonSoininen (1985).

    Google Scholar 

  • The linear-time reduction of LL(k) testing to LR(k) testing comes from Brosgol (1974). The more general formulation of the result (Theorem 10.34) was stated by Hunt and Szymanski (1978). The results for SLL(k) testing (Theorems 10.45 and 10.47) and the results for LL(k) testing obtained via the use of the automata Mu_Set ( G’) (Theorems 10.57 and 10.59) come from Sippu and Soisalon-Soininen (1983a). Reductions between different grammar classes are considered by Hunt and Szymanski (1978), who also study the complexity of relative decision problems, for example, the complexity of determining for an LR(k) grammar whether or not the grammar is LL(k) for some k’.

    Google Scholar 

  • The notion of a Turing machine comes from Turing (1936). The version of a Turing machine defined in Section 10.3 is what is usually called a “nondeterministic Turing machine with one semi-infinite tape”. The formulation as a rewriting system has been adopted from Salomaa (1973). For the basic results on Turing machines and computational complexity, see Salomaa (1973), Aho, Hoperoft and Ullman (1974), and Hoperoft and Ullman (1979).

    Google Scholar 

  • The idea of embedding Turing machine computations in context-free languages (Theorems 10.64 and 10.65) comes from Hartmanis (1967) (also see Hunt, 1982). The hardness of uniform non-LR(k), non-LALR(k), non-SLR(k), non-LL(k), and non-SLL(k) testing (Theorems 10.75 and 10.77) was established by Hunt, Szymanski and Ullman (1975). The unsolvability of the existence of k such that a given context-free grammar is LR(k) or LL(k) (Theorem 10.78) comes from Knuth (1965) and from Rosenkrantz and Stearns (1970). Rosenkrantz and Stearns proved the result for LL(k) by presenting a generic transformation. Knuth proved the result for LR(k) via a reduction from a variant of Post’s correspondence problem (Exercise 10.51). The original formulation of Post’s correspondence problem comes from Post (1946). The hardness of bounded variants of the problem (Exercise 10.53) is considered by Constable, Hunt and Sahni (1974). The variant given in Exercise 10.55 was suggested by Otto Nurmi and is especially suitable for proving the hardness of the uniform testing problems.

    Google Scholar 

  • The results on the hardness of regular expression nonuniversality (Theorem 10.81 and Exercise 10.62) come from Meyer and Stockmeyer (1972) and Stockmeyer and Meyer (1973). Other decision problems on regular languages are considered by Hunt, Rosenkrantz and Szymanski (1976), Hunt and Rosenkrantz (1978), and Hunt (1979). The reduction of regular expression nonuniversality to non-LALR(k) testing (Theorem 10.85) and the hardness result for the fixed k 1 case (Theorem 10.86) are from Ukkonen and Soisalon-Soininen (1981) and from Sippu, Soisalon-Soininen and Ukkonen (1983). The corresponding reduction for LALL(k) testing (Theorem 10.87) can be found in Sippu and Soisalon-Soininen (1983a). The upper bounds for uniform non-LALR(k) and non-LALL(k) testing (Theorem 10.88) can be found in Sippu, Soisalon-Soininen and Ukkonen (1983) and in Sippu and Soisalon-Soininen (1983a).

    Google Scholar 

  • The solvability and complexity of diffferent kinds of decision problems on context-free grammars are studied by Hunt, Rosenkrantz and Szymanski (1976), Hunt and Szymanski (1976), Hunt and Rosenkrantz (1977, 1978, 1980), Hunt (1982), Heilbrunner (1983), and Rosenkrantz and Hunt (1985, 1987).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Sippu, S., Soisalon-Soininen, E. (1990). Testing Grammars for Parsability. In: Parsing Theory. EATCS, vol 20. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-08424-3_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-08424-3_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-08079-1

  • Online ISBN: 978-3-662-08424-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics