An efficient all-parses systolic algorithm for general context-free parsing

  • Oscar H. Ibarra
  • Michael A. Palis
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 382)


The problem of outputting all parse trees of a string accepted by a context-free grammar is considered. A systolic algorithm is presented that operates in O(m · n) time, where m is the number of distinct parse trees and n is the length of the input. The systolic array uses n2 processors, each of which requires at most O(log n) bits of storage. This is much more space-efficient than a previously reported systolic algorithm for the same problem, which required O(n log n) space per processor. The algorithm also extends previous algorithms that only output a single parse tree of the input.


Clock Cycle Systolic Array Parse Tree Input String Recognition Phase 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AHO72]
    Aho, A. V. and J. D. Ullman, The Theory of Parsing, Translation and Compiling, Vol. 1, Parsing, Prentice-Hall, Englewood Cliffs, N.J., 1972.Google Scholar
  2. [CHAN87]
    Chang, J. H., O. H. Ibarra, and M. A. Palis, "Parallel parsing on a one-way array of finite-state machines", IEEE Transactions on Computers, 36:1 (1987), 64–75.Google Scholar
  3. [CHIA84]
    Chiang, Y. T. and K. S. Fu, "Parallel parsing algorithms and VLSI implementations for syntactic pattern recognition", IEEE Transactions on Pattern Analysis and Machine Intelligence, 6:3 (1984), 302–314.Google Scholar
  4. [EARL70]
    Earley, J., "An efficient context-free parsing algorithm", Communications of the ACM, 13:2 (1970), 94–102.CrossRefGoogle Scholar
  5. [GUIB79]
    Guibas, L. J., H.-T. Kung, and C. D. Thompson, "Direct VLSI implementation of combinatorial algorithms", Proceedings Caltech Conference on VLSI, 1979, 509–525.Google Scholar
  6. [KOSA75]
    Kosaraju, S. R., "Speed of recognition of context-free languages by array automata", SIAM Journal on Computing, 4:3 (1975), 331–340.CrossRefGoogle Scholar
  7. [LANG87]
    Langlois, L., "Parsing (and other dynamic programming problems) on an array of processors", April 1987. Manuscript.Google Scholar
  8. [RYTT85]
    Rytter, W., The complexity of two-way pushdown automata and recursive programs, in Combinatorial Algorithms on Words, A. Apostolico and Z. Galil (eds.), NATO ASI Series F:12, Springer-Verlag: New York/Berlin.Google Scholar
  9. [VALI75]
    Valiant, L., "General context-free recognition in less than cubic time", Journal of Computer and Systems Sciences, 10:2 (1975), 308–315.Google Scholar
  10. [YOUN67]
    Younger, D. H., "Recognition and parsing of context-free languages in time n 3", Information and Control, 10:2 (1967), 189–208.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1989

Authors and Affiliations

  • Oscar H. Ibarra
    • 1
  • Michael A. Palis
    • 2
  1. 1.Department of Computer ScienceUniversity of MinnesotaMinneapolis
  2. 2.Department of Comp. and Info. ScienceUniversity of PennsylvaniaPhiladelphia

Personalised recommendations