Your browser does not support JavaScript!
http://iet.metastore.ingenta.com
1887

Efficient, scalable hardware engine for Boolean satisfiability and unsatisfiable core extraction

Efficient, scalable hardware engine for Boolean satisfiability and unsatisfiable core extraction

For access to this article, please select a purchase option:

Buy article PDF
£12.50
(plus tax if applicable)
Buy Knowledge Pack
10 articles for £75.00
(plus taxes if applicable)

IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.

Learn more about IET membership 

Recommend Title Publication to library

You must fill out fields marked with: *

Librarian details
Name:*
Email:*
Your details
Name:*
Email:*
Department:*
Why are you recommending this title?
Select reason:
 
 
 
 
 
IET Computers & Digital Techniques — Recommend this title to your library

Thank you

Your recommendation has been sent to your librarian.

Boolean satisfiability (SAT) is a core non polynomial (NP)-complete problem. Several heuristic software and hardware approaches have been proposed to solve this problem. The authors present a hardware solution to the SAT problem. They propose a custom integrated circuit (IC) to implement their approach, in which the traversal of the implication graph as well as conflict clause generation are performed in hardware, in parallel. Further, extracting the minimum unsatisfiable core (i.e. the formula consisting of the smallest set of clauses of the initial formula which is unsatisfiable) is also a computationally hard problem. The proposed hardware approach, in addition to solving SAT, efficiently extracts the minimum unsatisfiable core for any unsatisfiable formula. To the best of the authors' knowledge, this is the first hardware-based solution proposed for extracting the unsatisfiable core. In this approach, clause literals are stored in specially designed clause cells. Clauses are implemented in banks, in a manner that allows clauses of variable width to be accommodated in these banks. To maximise the utilisation of these banks, the authors initially partition the SAT problem. Their solution has significantly larger capacity than existing hardware SAT solvers, and is scalable in the sense that several ICs can be used to simultaneously operate on the same SAT instance. The area, power and performance figures are derived from layout and SPICE (using extracted parasitics) estimates. The approach presented has been functionally validated in Verilog. Preliminary results demonstrate that the approach can accommodate instances with approximately 63 K clauses on a single IC of size 1.5 cm×1.5 cm. This hardware based-SAT solving approach results in over three orders of magnitude speed improvement over Boolean constraint propogation-based software SAT approaches (one to two orders of magnitude over other hardware SAT approaches). The capacity of this approach is significantly higher than most hardware-based approaches. Further, the worst case power consumption was found to be ≤1 mW for the implementation.

References

    1. 1)
      • Zhang, L., Malik, S.: `Validating SAT solvers using an independent resolution-based checker: practical implementations and other applications', Proc., Design and Test in Europe Conf., March 2003.
    2. 2)
      • J. Gu , P. Purdom , J. Franco , B. Wah . (1997) Algorithms for the satisfiability (SAT) problem: a survey, DIMACS Series in Discrete Math. and Theoretical Computer Science.
    3. 3)
      • DIMACS challenge – satisfiability. Available at: ftp://dimacs.rutgers.edu/pub/challenge/satisfiability/. The DIMACS ftp site.
    4. 4)
      • H.K. Buning . On subclasses of minimal unsatisfiable formulas. Discrete Appl. Math. , 83 - 98
    5. 5)
      • H. Jin , M. Awedh , F. Somenzi . CirCUs: a satisfiability solver geared towards bounded model checking. Comput. Aided Verif. , 519 - 522
    6. 6)
    7. 7)
      • McMillan, K.L.: `Interpolation and SAT-based model checking', Proc. Computer Aided Verification, May 2003.
    8. 8)
      • Silva, M., Sakallah, J.: `GRASP-a new search algorithm for satisfiability', Proc. Int. Conf. Computer-Aided Design (ICCAD), November 1996, p. 220–7.
    9. 9)
      • Goldberg, E., Novikov, Y.: `BerkMin: a fast and robust SAT solver', Proc., Design, Automation and Test in Europe (DATE) Conf., 2002, p. 142–149.
    10. 10)
      • Cook, S.: `The complexity of theorem-proving procedures', Proc. 3rd ACM Symp. Theory of Computing, 1971, p. 151–158.
    11. 11)
      • Lynce, J., Marques-Silva, J.: `On computing minimum unsatisfiable cores', 7thInt. Conf., Theory and Applications of Satisfiability Testing, 2004.
    12. 12)
      • Abramovici, M., Saab, D.: `Satisfiability on reconfigurable hardware', Proc., Int. Workshop on Field Programmable Logic and Applications, 1997, p. 448–456.
    13. 13)
      • Goldberg, E., Novikov, Y.: `Verification of proofs of unsatisfiability for CNF formulas', Proc., Design and Test in Europe Conf., March 2003, p. 10886–10891.
    14. 14)
      • Zheng, L., Stuckey, P.J.: `Improving SAT using 2SAT', ACSC '02: Proc. 25th Australasian Conf. Computer science, 2002, Australian Computer Society, Inc., p. 331–340, (Darlinghurst, Australia, Australia).
    15. 15)
    16. 16)
      • Oh, Y., Mneimneh, M., Andraus, Z.S., Sakallah, K.A., Markov, I.L.: `Amuse: a minimally unsatisfiable subformula extractor', Proc., Design Automation Conf., June 2004.
    17. 17)
    18. 18)
      • Zhong, P., Martonosi, M., Ashar, P., Malik, S.: `Accelerating Boolean satisfiability with configurable hardware', Proc., IEEE Symp. FPGAs for Custom Computing Machines, April 1998, p. 186–195.
    19. 19)
      • Karypis, G., and Kumar, V.: ‘A software package for partitioning unstructured graphs, partitioning meshes and computing fill-reducing orderings of sparse matrices.’ http://www-users.cs.umn.edu/karypis/metis, September 1998.
    20. 20)
      • Kautz, H.A., Selman, B.: `Planning as satisfiability', Proc., 10th European Conf. Artificial Intelligence, 1992.
    21. 21)
      • The SAT'04 Competition, available at: ‘http://www.lri.fr/~simon/contest04/results/’.
    22. 22)
      • Nam, G., Sakallah, K.A., Rutenbar, R.A.: `Satisfiability-based layout revisited: routing complex FPGAs via search-based Boolean SAT', Proc. Int. Symp. FPGAs, Feburary 1999.
    23. 23)
      • Bruni, R., Sassano, A.: `Restoring satisfiability or maintaining unsatisfiability by finding small unsatisfiable subformulae', In LICS Workshop Theory and Applications of Satisfiability Testing, June 2001.
    24. 24)
      • Zhao, Y., Malik, S., Wang, A., Moskewicz, M., Madigan, C.: `Matching architecture to application via configurable processors: a case study with Boolean satisfiability problem', Proc. Int. Conf. Computer Design (ICCD), September 2001, p. 447–452.
    25. 25)
      • G. Davydov , I. Davydova , H.K. Buning . An efficient algorithm for the minimal unsatisfiability problem for a subclass of CNF. Ann. Math. Artif. Intell. , 229 - 245
    26. 26)
      • Moskewicz, M., Madigan, C., Zhao, Y., Zhang, L., Malik, S.: `Chaff: Engineering an efficient SAT solver', Proc. Design Automation Conf., July 2001.
    27. 27)
      • Reis, N.A., de Souza, J.T.: `On implementing a configware/software SAT solver', Proc. 10th Annual IEEE Symp. Field-Programmable Custom Computing Machines, 2002.
    28. 28)
      • Zhao, Y., Malik, S., Moskewicz, M., Madigan, C.: `Accelerating Boolean satisfiability through application specific processing', Proc. Int. Symp. System Synthesis (ISSS), 2001, p. 244–249.
    29. 29)
      • Eén N., Sörensson N.: The MiniSAT Page. Available at: ‘http://www.cs.chalmers.se/cs/research/formalmethods/minisat/main.html’..
    30. 30)
      • de Souza, J.T., Abramovici, M., da Silva, J.M.: `A configware/software approach to SAT solving', IEEE Symp. FPGAs for Custom Computing Machines, May 2001.
    31. 31)
      • Huang, J.: `MUP: a minimal unsatisfiability prover', Proc. 10th Asia and South Pacific Design Automation Conf., January 2005.
    32. 32)
      • Abramovici, M., de Sousa, J., Saab, D.: `A massively-parallel easily-scalable satisfiability solver using reconfigurable hardware', Proc. Design Automation Conf. (DAC), June 1999, p. 684–690.
    33. 33)
      • H. Fleischner , O. Kullmann , S. Szeider . Polynomial-time recognition of minimal unsatisfiable formulas with fixed clause-variable difference. Theor. Comput. Sci. , 1 , 503 - 516
    34. 34)
      • Waghmode, M., Gulati, K., Khatri, S., Shi, W.: `An efficient, scalable hardware engine for Boolean satisfiability', Proc. Int. Conf. Computer Design (ICCD), October 2006, To be Published.
    35. 35)
      • Pagarani, T., Kocan, F., Saab, D., Abraham, J.: `Parallel and scalable architecture for solving satisfiability on reconfigurable FPGA', Proc. IEEE Custom Integrated Circuits Conf. (CICC), May 2000, p. 147–150.
    36. 36)
      • Nagel, L., ‘Spice: a computer program to simulate computer circuits,’ in University of California, Berkeley UCB/ERL Memo M520, May 1995.
    37. 37)
      • Zhong, P., Ashar, P., Malik, S., Martonosi, M.: `Using reconfigurable computing techniques to accelerate problems in the CAD domain: a case study with Boolean satisfiability', Proc. Design Automation Conf., June 1998, p. 194–199.
http://iet.metastore.ingenta.com/content/journals/10.1049/iet-cdt_20060221
Loading

Related content

content/journals/10.1049/iet-cdt_20060221
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading
This is a required field
Please enter a valid email address