Trading Time and Space in Catalytic Branching Programs

Authors James Cook, Ian Mertz

Thumbnail PDF


  • Filesize: 0.76 MB
  • 21 pages

Document Identifiers

Author Details

James Cook
  • Independent Researcher, Toronto, Canada
Ian Mertz
  • University of Toronto, Canada


The authors would like to thank Toniann Pitassi, Robert Robere, Jeroen Zuiddam, and Aaron Potechin for many helpful discussions.

Cite AsGet BibTex

James Cook and Ian Mertz. Trading Time and Space in Catalytic Branching Programs. In 37th Computational Complexity Conference (CCC 2022). Leibniz International Proceedings in Informatics (LIPIcs), Volume 234, pp. 8:1-8:21, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2022)


An m-catalytic branching program (Girard, Koucký, McKenzie 2015) is a set of m distinct branching programs for f which are permitted to share internal (i.e. non-source non-sink) nodes. While originally introduced as a non-uniform analogue to catalytic space, this also gives a natural notion of amortized non-uniform space complexity for f, namely the smallest value |G|/m for an m-catalytic branching program G for f (Potechin 2017). Potechin (2017) showed that every function f has amortized size O(n), witnessed by an m-catalytic branching program where m = 2^(2ⁿ-1). We recreate this result by defining a catalytic algorithm for evaluating polynomials using a large amount of space but O(n) time. This allows us to balance this with previously known algorithms which are efficient with respect to space at the cost of time (Cook, Mertz 2020, 2021). We show that for any ε ≥ 2n^(-1), every function f has an m-catalytic branching program of size O_ε(mn), where m = 2^(2^(ε n)). We similarly recreate an improved result due to Robere and Zuiddam (2021), and show that for d ≤ n and ε ≥ 2d^(-1), the same result holds for m = 2^binom(n, ≤ ε d) as long as f is a degree-d polynomial over 𝔽₂. We also show that for certain classes of functions, m can be reduced to 2^(poly n) while still maintaining linear or quasi-linear amortized size. In the other direction, we bound the necessary length, and by extension the amortized size, of any permutation branching program for an arbitrary function between 3n and 4n-4.

Subject Classification

ACM Subject Classification
  • Theory of computation → Computational complexity and cryptography
  • complexity theory
  • branching programs
  • amortized
  • space complexity
  • catalytic computation


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


  1. Eric Allender, Anna Gál, and Ian Mertz. Dual VP classes. Comput. Complex., 26(3):583-625, 2017. Google Scholar
  2. David A. Mix Barrington. Bounded-width polynomial-size branching programs recognize exactly those languages in nc¹. J. Comput. Syst. Sci., 38(1):150-164, 1989. Google Scholar
  3. Michael Ben-Or and Richard Cleve. Computing algebraic formulas using a constant number of registers. SIAM J. Comput., 21(1):54-58, 1992. Google Scholar
  4. Harry Buhrman, Richard Cleve, Michal Koucký, Bruno Loff, and Florian Speelman. Computing with a full memory: catalytic space. In Symposium on Theory of Computing, STOC 2014, New York, NY, USA, May 31 - June 03, 2014, pages 857-866. ACM, 2014. Google Scholar
  5. James Cook and Ian Mertz. Catalytic approaches to the tree evaluation problem. In Proccedings of the 52nd Annual ACM SIGACT Symposium on Theory of Computing, STOC 2020, Chicago, IL, USA, June 22-26, 2020, pages 752-760. ACM, 2020. Google Scholar
  6. James Cook and Ian Mertz. Encodings and the tree evaluation problem. Electron. Colloquium Comput. Complex., page 54, 2021. URL:
  7. Stephen A. Cook, Pierre McKenzie, Dustin Wehr, Mark Braverman, and Rahul Santhanam. Pebbles and branching programs for tree evaluation. ACM Trans. Comput. Theory, 3(2):4:1-4:43, 2012. Google Scholar
  8. Vincent Girard, Michal Koucky, and Pierre McKenzie. Nonuniform catalytic space and the direct sum for space. Electronic Colloquium on Computational Complexity (ECCC), 138, 2015. Google Scholar
  9. Frank Gray. Pulse code communication., 1953. US Patent 2632058A.
  10. E.I. Nečiporuk. A boolean function. Dokl. Akad. Nauk SSSR, 169(4), 1966. Google Scholar
  11. Aaron Potechin. A note on amortized branching program complexity, 2017. Google Scholar
  12. Robert Robere and Jeroen Zuiddam. Amortized circuit complexity, formal complexity measures, and catalytic algorithms. In FOCS, pages 759-769. IEEE, 2021. Google Scholar
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