A Deterministic Algorithm for Testing the Equivalence of Read-Once Branching Programs with Small Discrepancy

  • Stefan Arnold
  • Jacobo Torán
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10307)


The problem to test the equivalence of two given read-once branching programs is a well-known problem in the class BPP that is not known to be solvable in deterministic polynomial time. The standard probabilistic algorithm to solve the problem reduces it to an instance of Polynomial Identity Testing and then applies the Schwartz-Zippel Lemma to test the equivalence. This method needs \(O(n\log n)\) random bits, where n is the number of variables in the branching programs. We provide a new method for testing the equivalence of read-once branching programs that uses \(O(\log n +\log |D|)\) random bits, where D is the set of assignments for which the two branching programs compute different results. This means O(n) random bits in the worst case and a deterministic polynomial time algorithm when the discrepancy set D is at most polynomial.

We also show that the equivalence test can be extended to the more powerful model of deterministic, decomposable negation normal forms (d-DNNFs).


  1. 1.
    Agrawal, M., Hoang, T.M., Thierauf, T.: The polynomially bounded perfect matching problem is in NC 2. In: Thomas, W., Weil, P. (eds.) STACS 2007. LNCS, vol. 4393, pp. 489–499. Springer, Heidelberg (2007). doi: 10.1007/978-3-540-70918-3_42 CrossRefGoogle Scholar
  2. 2.
    Blum, M., Chandra, A.K., Wegman, M.N.: Equivalence of free boolean graphs can be decided probabilistically in polynomial time. Inf. Process. Lett. 10, 80–82 (1980)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Randal, E.: Bryant: graph based algorithms for Boolean function manipulation. IEEE Trans. Comput. 35, 677–691 (1986)MATHGoogle Scholar
  4. 4.
    Chari, S., Rohatgi, P., Srinivasan, A.: Randomness-optimal unique element isolation with applications to perfect matching and related problems. SIAM J. Comput. 24, 1036–1050 (1995)MathSciNetCrossRefMATHGoogle Scholar
  5. 5.
    Darwiche, A.: Compiling knowledge into decomposable negation normal form. In: Proceedings of the 16th International Joint Conference on Artifical Intelligence (IJCAI 1999), pp. 284–289 (1999)Google Scholar
  6. 6.
    Darwiche, A.: Decomposable negation normal form. J. ACM 48, 608–647 (2001)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Darwiche, A.: On the tractable counting of theory models and its application to truth maintenance and belief revision. J. Appl. Non-Class. Logics 11, 11–34 (2001)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Darwiche, A., Marquis, P.: A knowledge compilation map. J. Artifi. Intell. Res. 17, 229–264 (2002)MathSciNetMATHGoogle Scholar
  9. 9.
    Darwiche, A., Huang, J.: Testing equivalence probabilistically. Technical report D-123 Computer Science Department, UCLA (2002)Google Scholar
  10. 10.
    Fortune, S., Hopcroft, J., Schmidt, E.M.: The complexity of equivalence and containment for free single variable program schemes. In: Ausiello, G., Böhm, C. (eds.) ICALP 1978. LNCS, vol. 62, pp. 227–240. Springer, Heidelberg (1978). doi: 10.1007/3-540-08860-1_17 CrossRefGoogle Scholar
  11. 11.
    Grigoriev, D., Karpinski, M.: The matching problem for bipartite graphs with polynomially bounded permanents is in NC. In: 28th Annual Symposium on Foundations of Computer Science (FOCS), pp. 166–172 (1987)Google Scholar
  12. 12.
    Lee, C.Y.: Representation of switching circuits by binary-decision programs. Bell Syst. Tech. J. 38, 985–999 (1959)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Masek, W.J.: A fast algorithm for the string editing problem and decision graph complexity. M.Sc. thesis, MIT, Cambridge MA (1976)Google Scholar
  14. 14.
    Meinel, C.: Modified Branching Programs and Their Computational Power. LNCS, vol. 370. Springer, Heidelberg (1989)MATHGoogle Scholar
  15. 15.
    Mulmuley, K., Vazirani, U.V., Vazirani, V.V.: Matching is as easy as matrix inversion. Combinatorica 7, 105–113 (1987)MathSciNetCrossRefMATHGoogle Scholar
  16. 16.
    Schöning, U., Pruim, R.: Gems of Theoretical Computer Science. Springer, Heidelberg (1998)CrossRefMATHGoogle Scholar
  17. 17.
    Jacob, T.: Schwartz: fast probabilistic algorithms for verification of polynomial identities. J. ACM 27, 701–717 (1980)CrossRefGoogle Scholar
  18. 18.
    Sipser, M.: Introduction to the Theory of Computation. PWS Publishing Company, Boston (1997)MATHGoogle Scholar
  19. 19.
    Wegener, I.: Branching Programs and Binary Decision Diagrams. SIAM, Philadelphia (2000)CrossRefMATHGoogle Scholar
  20. 20.
    Zippel, R.: Probabilistic algorithms for sparse polynomials. In: Ng, E.W. (ed.) Symbolic and Algebraic Computation. LNCS, vol. 72, pp. 216–226. Springer, Heidelberg (1979). doi: 10.1007/3-540-09519-5_73 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Institute of Theoretical Computer ScienceUniversity of UlmUlmGermany

Personalised recommendations