Parallel Enumeration of Parse Trees

Authors Margarita Mikhelson, Alexander Okhotin

Thumbnail PDF


  • Filesize: 1.1 MB
  • 14 pages

Document Identifiers

Author Details

Margarita Mikhelson
  • Department of Mathematics and Computer Science, Saint Petersburg State University, Russia
Alexander Okhotin
  • Department of Mathematics and Computer Science, Saint Petersburg State University, Russia

Cite AsGet BibTex

Margarita Mikhelson and Alexander Okhotin. Parallel Enumeration of Parse Trees. In 48th International Symposium on Mathematical Foundations of Computer Science (MFCS 2023). Leibniz International Proceedings in Informatics (LIPIcs), Volume 272, pp. 67:1-67:14, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)


A parallel algorithm for enumerating parse trees of a given string according to a fixed context-free grammar is defined. The algorithm computes the number of parse trees of an input string; more generally, it applies to computing the weight of a string in a weighted grammar. The algorithm is first implemented on an arithmetic circuit of depth O((log n)²) with O(n⁶) elements. Then, it is improved using fast matrix multiplication to use only O(n^5.38) elements, while preserving depth O((log n)²).

Subject Classification

ACM Subject Classification
  • Theory of computation → Grammars and context-free languages
  • Theory of computation → Parallel algorithms
  • Context-free grammars
  • weighted grammars
  • parsing
  • parallel algorithms
  • matrix multiplication


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Ekaterina Bakinova, Artem Basharin, Igor Batmanov, Konstantin Lyubort, Alexander Okhotin, and Elizaveta Sazhneva. Formal languages over GF(2). Inf. Comput., 283:104672, 2022. URL:
  2. José-Miguel Benedí and Joan-Andreu Sánchez. Fast stochastic context-free parsing: A stochastic version of the Valiant algorithm. In Joan Martí, José-Miguel Benedí, Ana Maria Mendonça, and Joan Serrat, editors, Pattern Recognition and Image Analysis, Third Iberian Conference, IbPRIA 2007, Girona, Spain, June 6-8, 2007, Proceedings, Part I, volume 4477 of Lecture Notes in Computer Science, pages 80-88. Springer, 2007. URL:
  3. Richard P. Brent and Leslie M. Goldschlager. A parallel algorithm for context-free parsing. Australian Computer Science Communications, 6(7):7.1-7.10, 1984. Google Scholar
  4. Don Coppersmith and Shmuel Winograd. Matrix multiplication via arithmetic progressions. J. Symb. Comput., 9(3):251-280, 1990. URL:
  5. Hillel Gazit and Gary L. Miller. An improved parallel algorithm that computes the BFS numbering of a directed graph. Inf. Process. Lett., 28(2):61-65, 1988. URL:
  6. Alexander Okhotin. Parsing by matrix multiplication generalized to Boolean grammars. Theor. Comput. Sci., 516:101-120, 2014. URL:
  7. Wojciech Rytter. Parallel time o(log n) recognition of unambiguous cfls. In Lothar Budach, editor, Fundamentals of Computation Theory, FCT '85, Cottbus, GDR, September 9-13, 1985, volume 199 of Lecture Notes in Computer Science, pages 380-389. Springer, 1985. URL:
  8. Volker Strassen. Gaussian elimination is not optimal. Numerische Mathematik, 13:354-356, 1969. Google Scholar
  9. Leslie G. Valiant. General context-free recognition in less than cubic time. J. Comput. Syst. Sci., 10(2):308-315, 1975. URL:
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail