Effective Preprocessing in SAT Through Variable and Clause Elimination

  • Niklas Eén
  • Armin Biere
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3569)


Preprocessing SAT instances can reduce their size considerably. We combine variable elimination with subsumption and self-subsuming resolution, and show that these techniques not only shrink the formula further than previous preprocessing efforts based on variable elimination, but also decrease runtime of SAT solvers substantially for typical industrial SAT problems. We discuss critical implementation details that make the reduction procedure fast enough to be practical.


Unit Clause Variable Elimination Candidate Clause Binary Clause Original Clause 
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. 1.
    Subbarayan, S., Pradhan, D.: NiVER: Non increasing variable elimination resolution for preprocessing SAT instances. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 276–291. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  2. 2.
    Davis, M., Logemann, G., Loveland, D.: A machine program for theorem proving. Comm. of the ACM 5(7) (1962)Google Scholar
  3. 3.
    Bacchus, F., Winter, J.: Effective preprocessing with hyper-resolution and equality reduction. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 341–355. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  4. 4.
    Brafman, R.: A simplifier for propositional formulas with many binary clauses. IEEE Trans. on Systems, Man, and Cybernetics 34(v1) (2004)Google Scholar
  5. 5.
    Lynce, I., Marques-Silva, J.: Probing-based preprocessing techniques for propositional satisfiability. In: Proc. ICTAI 2003 (2003)Google Scholar
  6. 6.
    Novikov, Y.: Local search for boolean relations on the basis of unit propagation. In: Proc. of DATE 2003 (2003)Google Scholar
  7. 7.
    Stålmarck, G.: A system for determining propositional logic theorems by applying values and rules to triplets that are generated from a formula (1989) Swedish Patent N° 467 076Google Scholar
  8. 8.
    Kunz, W., Pradhan, D.: Recursive learning: An attractive alternative to the decision tree for test generation in digital circuits. In: Proc. ITC 1992 (1992)Google Scholar
  9. 9.
    Kühlmann, A., Paruthi, V., Krohm, F., Ganai, M.: Robust boolean reasoning for equivalence checking and functional property verification. IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems 21(12) (2002)Google Scholar
  10. 10.
    Davis, M., Putnam, H.: A computing procedure for quantification theory. Journal of the ACM 7(3) (1960)Google Scholar
  11. 11.
    Chatalic, P., Simon, L.: ZRes: The old Davis-Putnam procedure meets ZBDDs. In: McAllester, D. (ed.) CADE 2000. LNCS (LNAI), vol. 1831. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  12. 12.
    Biere, A.: Resolve and expand. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 59–70. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  13. 13.
    Boy de la Tour, T.: An optimality result for clause form translation. Journal of Symbolic Computation 14 (1992)Google Scholar
  14. 14.
    Jackson, P., Sheridan, D.: Clause form conversions for boolean circuits. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 183–198. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  15. 15.
    Plaisted, D., Greenbaum, S.: A structure-preserving clause form translation. Journal of Symbolic Computation 2(3) (1986)Google Scholar
  16. 16.
    Velev, M.: Efficient translation of boolean formulas to CNF in in formal verification of microprocessors. In: Proc. ASP-DAC 2004 (2004)Google Scholar
  17. 17.
    Tseitin, G.: On the complexity of derivation in propositional calculus. Studies in Constr. Math. and Math. Logic (1968)Google Scholar
  18. 18.
    Giunchiglia, E., Maratea, M., Tacchella, A.: Dependent and independent variables for propositional satisfiability. In: Flesca, S., Greco, S., Leone, N., Ianni, G. (eds.) JELIA 2002. LNCS (LNAI), vol. 2424, p. 296. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  19. 19.
    Ostrowski, R., Grégoire, É., Mazure, B., Saïs, L.: Recovering and exploiting structural knowledge from CNF formulas. In: Van Hentenryck, P. (ed.) CP 2002. LNCS, vol. 2470, p. 185. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  20. 20.
    Grégoire, É., Ostrowski, R., Mazure, B., Saïs, L.: Automatic extraction of functional dependencies. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 122–132. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  21. 21.
    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
  22. 22.
    Sörensson, N.: Conflict clause simplification using subsumption resolution (paper in preparation)Google Scholar
  23. 23.
    Eén, N., Sörensson, N.: Temporal induction by incremental SAT solving. In: Proc. BMC 2003. ENTCS, vol. 89(4) (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Niklas Eén
    • 1
  • Armin Biere
    • 2
  1. 1.Chalmers University of TechnologyGöteborgSweden
  2. 2.Johannes Kepler UniversityLinzAustria

Personalised recommendations