Partitioning methods for satisfiability testing on large formulas
A propositional satisfiability tester is needed as a subroutine for many applications in automated verification, automated theorem proving, and other fields. Such applications may generate very large formulas, some of which are beyond the capabilities of known algorithms. This paper investigates methods for partitioning such formulas effectively, to produce smaller formulas within the reach of known algorithms. CNF formula partitioning can be viewed as hypergraph partitioning, which has been studied extensively in VLSI design. Although CNF formulas have been considered as hypergraphs before, we found that this viewpoint was not productive for partitioning, and we introduce a new viewpoint in the dual hypergraph. Hypergraph partitioning technology from VLSI design is adapted to this problem. The overall goal of satisfiability testing requires criteria different from those used in VLSI design. Several heuristics are described, and investigated experimentally. Some formulas from circuit applications that were extremely difficult or impossible for existing algorithms have been solved. However, the method is not useful on formulas with little or no “structure”, such as randomly generated formulas.
Unable to display preview. Download preview PDF.
- [DLL62]M. Davis, G. Logemann, and D. Loveland. “A Machine Program for Theorem-Proving”. Communications of the Association for Computing Theroy, 5:394–397, 1962.Google Scholar
- [Don88]W.E. Donath. “Logic Partitioning”. In in Physical Design Automation of VLSI systems, Benjamin/Cummings, pages 65–86, 1988.Google Scholar
- [DP60]M. Davis and H. Putnam. “A Computing Procedure for Quantification Theory”. Journal of the Association for Computing Theroy, 7:201–215, 1960.Google Scholar
- [FM82]C. Fiduccia and R. Mattheyses. “A linear-time heuristic for improving network partition”. In In ACM IEEE 19th Design and Automation Conference Proceedings, pages 175–181, June, 1982.Google Scholar
- [GJ79]M. Garey and D.S. Johnson. “Computers and Intractability: A Guide to Theory of NP-Completeness”. M.H.Freeman, 1979.Google Scholar
- [Kah91]Andrew B. Kahng. “New Spectral Method for Ratio Cut Partitioning and Clustering”. IEEE Trans. on CAD, 1991.Google Scholar
- [KGV83]S. Kirkpatrick, C. Gelatt, Jr., and M. Vecchi. “Optimization by Simulated Annealing”. Science, 13(220):671–680, May, 1983.Google Scholar
- [KL70]B.W. Kernighan and S. Lin. “An Efficient Heuristic Procedure for Partitioning Electrical Circuits”. In Bell System Technical J., Feb. 1970.Google Scholar
- [VGT95]A. Van Gelder and Y.K. Tsuji. “Satisfiability Testing with More Reasoning and Less Guessing”. In D. S. Johnson and M. Trick, editors, Cliques, Coloring, and Satisfiability: Second DIMACS Implementation and Challenge., DIMACS Series in Discrete Mathematics and Theoretical Computer Science. American Mathematical Society, 1995.Google Scholar
- [WC89]Y.C. Wei and C.K. Cheng. “Towards Efficient Hierarchical Designs by Ratio Cut Partitioning”. In IEEE Intl. Conf. on Computer-Aided Design, pages 298–301, 1989.Google Scholar