Finding Efficient Circuits for Ensemble Computation

  • Matti Järvisalo
  • Petteri Kaski
  • Mikko Koivisto
  • Janne H. Korhonen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7317)


Given a Boolean function as input, a fundamental problem is to find a Boolean circuit with the least number of elementary gates (AND, OR, NOT) that computes the function. The problem generalises naturally to the setting of multiple Boolean functions: find the smallest Boolean circuit that computes all the functions simultaneously. We study an NP-complete variant of this problem titled Ensemble Computation and, especially, its relationship to the Boolean satisfiability (SAT) problem from both the theoretical and practical perspectives, under the two monotone circuit classes: OR-circuits and SUM-circuits. Our main result relates the existence of nontrivial algorithms for CNF-SAT with the problem of rewriting in subquadratic time a given OR-circuit to a SUM-circuit. Furthermore, by developing a SAT encoding for the ensemble computation problem and by employing state-of-the-art SAT solvers, we search for concrete instances that would witness a substantial separation between the size of optimal OR-circuits and optimal SUM-circuits. Our encoding allows for exhaustively checking all small witness candidates. Searching over larger witness candidates presents an interesting challenge for current SAT solver technology.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Biere, A.: Lingeling, Plingeling, PicoSAT and PrecoSAT at SAT Race 2010. FMV Technical Report 10/1, Johannes Kepler University, Linz, Austria (2010)Google Scholar
  2. 2.
    Björklund, A., Husfeldt, T., Kaski, P., Koivisto, M., Nederlof, J., Parviainen, P.: Fast zeta transforms for lattices with few irreducibles. In: Proc. SODA, pp. 1436–1444. SIAM (2012)Google Scholar
  3. 3.
    Dantsin, E., Wolpert, A.: On Moderately Exponential Time for SAT. In: Strichman, O., Szeider, S. (eds.) SAT 2010. LNCS, vol. 6175, pp. 313–325. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  4. 4.
    Demenkov, E., Kojevnikov, A., Kulikov, A.S., Yaroslavtsev, G.: New upper bounds on the Boolean circuit complexity of symmetric functions. Inf. Process. Lett. 110(7), 264–267 (2010)MathSciNetzbMATHCrossRefGoogle Scholar
  5. 5.
    Eén, N., Sörensson, N.: An Extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  6. 6.
    Estrada, G.G.: A Note on Designing Logical Circuits Using SAT. In: Tyrrell, A.M., Haddow, P.C., Torresen, J. (eds.) ICES 2003. LNCS, vol. 2606, pp. 410–421. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  7. 7.
    Fuhs, C., Schneider-Kamp, P.: Synthesizing Shortest Linear Straight-Line Programs over GF(2) Using SAT. In: Strichman, O., Szeider, S. (eds.) SAT 2010. LNCS, vol. 6175, pp. 71–84. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  8. 8.
    Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman and Company (1979)Google Scholar
  9. 9.
    Gebser, M., Kaufmann, B., Schaub, T.: The Conflict-Driven Answer Set Solver clasp: Progress Report. In: Erdem, E., Lin, F., Schaub, T. (eds.) LPNMR 2009. LNCS, vol. 5753, pp. 509–514. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  10. 10.
    Heule, M., Dufour, M., van Zwieten, J.E., van Maaren, H.: March_eq: Implementing Additional Reasoning into an Efficient Look-Ahead SAT Solver. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 345–359. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  11. 11.
    Impagliazzo, R., Paturi, R.: On the complexity of k-SAT. J. Comput. System Sci. 62(2), 367–375 (2001)MathSciNetzbMATHCrossRefGoogle Scholar
  12. 12.
    Kamath, A.P., Karmarkar, N.K., Ramakrishnan, K.G., Resende, M.G.C.: An interior point approach to Boolean vector function synthesis. In: Proc. MWSCAS, pp. 185–189. IEEE (1993)Google Scholar
  13. 13.
    Kojevnikov, A., Kulikov, A.S., Yaroslavtsev, G.: Finding Efficient Circuits Using SAT-Solvers. In: Kullmann, O. (ed.) SAT 2009. LNCS, vol. 5584, pp. 32–44. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  14. 14.
    Lokshtanov, D., Marx, D., Saurabh, S.: Known algorithms on graphs of bounded treewidth are probably optimal. In: Proc. SODA, pp. 777–789. SIAM (2010)Google Scholar
  15. 15.
    McKay, B.: nauty user’s guide. Tech. Rep. TR-CS-90-02, Australian National University, Department of Computer Science (1990)Google Scholar
  16. 16.
    Pătraşcu, M., Williams, R.: On the possibility of faster SAT algorithms. In: Proc. SODA, pp. 1065–1075. SIAM (2010)Google Scholar
  17. 17.
    Tseitin, G.S.: On the complexity of derivation in propositional calculus. In: Automation of Reasoning 2: Classical Papers on Computational Logic 1967-1970, pp. 466–483. Springer, Heidelberg (1983)Google Scholar
  18. 18.
    Valiant, L.G.: Negation is powerless for Boolean slice functions. SIAM J. Comput. 15(2), 531–535 (1986)MathSciNetzbMATHCrossRefGoogle Scholar
  19. 19.
    West, D.B.: Introduction to graph theory. Prentice Hall Inc., Upper Saddle River (1996)zbMATHGoogle Scholar
  20. 20.
    Williams, R.: A new algorithm for optimal 2-constraint satisfaction and its implications. Theoret. Comput. Sci. 348(2-3), 357–365 (2005)MathSciNetzbMATHCrossRefGoogle Scholar
  21. 21.
    Williams, R.: Improving exhaustive search implies superpolynomial lower bounds. In: Proc. STOC, pp. 231–240. ACM (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Matti Järvisalo
    • 1
  • Petteri Kaski
    • 2
  • Mikko Koivisto
    • 1
  • Janne H. Korhonen
    • 1
  1. 1.HIIT & Department of Computer ScienceUniversity of HelsinkiFinland
  2. 2.HIIT & Department of Information and Computer ScienceAalto UniversityFinland

Personalised recommendations