Skip to main content
Log in

Implementing the Davis–Putnam Method

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

The method proposed by Davis, Putnam, Logemann, and Loveland for propositional reasoning, often referred to as the Davis–Putnam method, is one of the major practical methods for the satisfiability (SAT) problem of propositional logic. We show how to implement the Davis–Putnam method efficiently using the trie data structure for propositional clauses. A new technique of indexing only the first and last literals of clauses yields a unit propagation procedure whose complexity is sublinear to the number of occurrences of the variable in the input. We also show that the Davis–Putnam method can work better when unit subsumption is not used. We illustrate the performance of our programs on some quasigroup problems. The efficiency of our programs has enabled us to solve some open quasigroup problems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Bennett, F. E. and Zhu, L.: Conjugate-orthogonal Latin squares and related structures, in J. H. Dinitz and D. R. Stinson (eds.), Contemporary Design Theory: A Collection of Surveys, Wiley, New York, 1992.

    Google Scholar 

  2. Crawford, J. M. and Auton, L. D.: Experimental results on the crossover point in satisfiability problems, in Proceedings of the Eleventh National Conference on Artificial Intelligence (AAAI-93), 1993, pp. 21–27.

  3. Davis, M. and Putnam, H.: A computing procedure for quantification theory, J. Assoc. Comput. Mach. 7(3) (July 1960), 201–215.

    Google Scholar 

  4. Davis, M., Logemann, G., and Loveland, D.: A machine program for theorem-proving, Comm. Assoc. Comput. Mach. 5(7) (July 1962), 394–397.

    Google Scholar 

  5. de Kleer, J.: An improved incremental algorithm for generating prime implicates, in Proceedings of the Tenth National Conference on Artificial Intelligence (AAAI-92), San Jose, California, July 1992, pp. 780–785.

  6. Dowling, W. F. and Gallier, J. H.: Linear-time algorithms for testing the satisfiability of propositional Horn formulae, J. Logic Programming 3 (1984), 267–284.

    Google Scholar 

  7. Freeman, J. W.: Improvements to propositional satisfiability search algorithms, Ph.D. Dissertation, Department of Computer and Information Science, University of Pennsylvania, May 1995.

  8. Fujita, M., Slaney, J. and Bennett, F.: Automatic generation of some results in finite algebra, in Proceedings of the Thirteenth International Joint Conference on Artificial Intelligence, Chambery, France, 1993.

  9. Gomes, C., Selman, B. and Crato, N.: Heavy-tailed distributions in combinatorial search, in Proceedings of the Third International Conference on Principles and Practice of Constraint Programming (CP97), Linz, Austria, 1997.

  10. Gu, J.: Local search for satisfiability (SAT) problem, IEEE Trans. on Systems Man Cybernet. 23(4) (1993), 1108–1129.

    Google Scholar 

  11. Li, C. M. and Anbulagan: Look-ahead versus look-back for satisfiability problems, in Proceedings of International Conference on Principles and Practice of Constraint Programming, 1997.

  12. McCune, W.: A Davis-Putnam program and its application to finite first-order model search: Quasigroup existence problems, Tech. memo MCS-TM-194, Mathematics and Computer Science Division, Argonne National Laboratory, Argonne, Illinois, May 1994.

    Google Scholar 

  13. Meglicki, G.: Stickel's Davis-Putnam engineered reversely, Available by anonymous FTP from arp.anu.edu.au, Automated Reasoning Project, Australian National University, Canberra, Australia, 1993.

    Google Scholar 

  14. Selman, B., Levesque, H., and Mitchell, D.: A new method for solving hard satisfiability problems, in Proceedings of the Tenth National Conference on Artificial Intelligence (AAAI-92), San Jose, California, July 1992, pp. 440–446.

  15. Slaney, J., Fujita,M., and Stickel, M.: Automated reasoning and exhaustive search: Quasigroup existence problems, Comput. Math. Appl. 29(2) (May 1995), 115–132.

    Google Scholar 

  16. Zhang, H.: SATO: A decision procedure for propositional logic, Assoc. Automated Reasoning Newslett. 22 (March 1993), 1–3.

    Google Scholar 

  17. Zhang, H.: Specifying Latin squares in propositional logic, in R. Veroff (ed.), Automated Reasoning and Its Applications, Essays in Honor of Larry Wos, Chapter 6, MIT Press, 1997.

  18. Zhang, H.: SATO: An efficient propositional prover, in Proc. of International Conference on Automated Deduction (CADE-97), Lecture Notes in Artif. Intell. 1104, Springer-Verlag, 1997, pp. 308–312.

  19. Zhang, J.: Search for idempotent models of quasigroup identities, Typescript, Institute of Software, Academia Sinica, Beijing, 1991.

    Google Scholar 

Download references

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Zhang, H., Stickel, M. Implementing the Davis–Putnam Method. Journal of Automated Reasoning 24, 277–296 (2000). https://doi.org/10.1023/A:1006351428454

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1006351428454

Navigation