# Satisfiability problem of Boolean expressions in Conjunctive Normal Form - PowerPoint PPT Presentation

PPT – Satisfiability problem of Boolean expressions in Conjunctive Normal Form PowerPoint presentation | free to view - id: f5993-ZDc1Z

The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
Title:

## Satisfiability problem of Boolean expressions in Conjunctive Normal Form

Description:

### Given a suitable representation for a Boolean function : ... valid or tautology if for all T. unsatisfiable if for any T. VALID. SATISFIABLE. UNSATISFIABLE ... – PowerPoint PPT presentation

Number of Views:266
Avg rating:3.0/5.0
Slides: 21
Provided by: maciejcies
Category:
Transcript and Presenter's Notes

Title: Satisfiability problem of Boolean expressions in Conjunctive Normal Form

1
Satisfiability problem of Boolean expressions in
Conjunctive Normal Form
• Alodeep Sanyal
• Electrical and Computer Engineering
• University of Massachusetts at Amherst

Source K. A. Sakallah (University of Michigan),
S. Malik (Princeton University) and M.
Ciesielski (University of Massachusetts)
2
Boolean Satisfiability (SAT)
• Given a suitable representation for a Boolean
function
• Find a truth assignment T appropriate to
such that , or
• prove that such an assignment does not exist
• (i.e. for all possible
assignments)
• Definitions A Boolean expression is
• satisfiable if there is a truth assignment T
such that
• valid or tautology if for all T
• unsatisfiable if for any T

3
Motivation
• SAT is a core computational engine for major
applications
• Testing and verification
• Logic synthesis
• FPGA routing
• Path delay analysis
• AI
• Knowledge based deduction
• Automatic theorem proving

Adopted from S. Malik, Princeton University
4
Development in SAT research a brief history
• Main contributions in SAT research
• 1960 Davis and Putnam resolution based -
dealing with 10 variables
• 1962 Davis, Logemann and Loveland DFS-based
dealing with 10 variables
• Basic framework for many modern SAT solvers
• 1986 R. E. Bryant BDD-based dealing with
100 variables
• 1996 Silva and Sakallah GRASP (conflict-driven
learning and non-chronological backtracking)
dealing with 1k variables
• 2001 Malik et al. Efficient BCP and decision
making dealing with 10k vars

Adopted from S. Malik, Princeton University
5
Satisfiability of Boolean expressions in
Conjunctive Normal Form (CNF)
• In a classical SAT problem, function is
represented in conjunctive normal form (CNF)
• If the function involves n variables, there
are 2n possible truth assignments to be checked
• As a matter of fact, SAT was the first
established NP-Complete problem
• Many other decision (yes/no) problems can be
formulated in terms of Boolean Satisfiability

S. A. Cook. The complexity of theorem proving
procedures, Third Annual ACM Symp. On Theory of
Computing, pp. 151-158, 1971
6
Conjunctive Normal Form (CNF)
j ( a c ) ( b c ) (a b c )
7
CNF Formulas
• Product of Sum (POS) representation of Boolean
function
• Describes solution using a set of constraints
• very handy in many applications because new
constraints can just be added to the list of
existing constraints
• very common in AI community
• Example
• j ( ab c)(a b c)( abc)( a b c)

8
CNF Basics
• Implication
• x y x y
• (y) (x)
• y x (contra positive)
• Assignments a 0, b 1 a b
• Partial (some variables still unassigned)
• Complete (all variables assigned)
• Conflicting (imply j)
• Implications binate clauses
• SAT find any satisfying assignment
• Covering find an assignment optimizing some cost
function

9
CNF for Boolean gate
jd d (a b )d a b
d a bd a b
(a d)(b d)(a b d)
(a d)(b d)(a b d)
10
Example
Single gate
a
(ab c)(ac)(bc)
c
b
Circuit network of connected gates
(124)(14)(24) (235)(25)(35) (23
6)(26)(36) (457)(47)(57) (568)(5
8)(68) (789)(79)(89) (9)
Justify to 0
• Note
• Node 1,2,3 PI
• Node 4,5,6,7,8,9 AND gate

11
Circuit Satisfiability
j h d(ab) e(bc) fd gde hfg
h
(a d)(b d)(a b d)
(b e)(c e)(b c e)
(d f)(d f)
(d g)(e g)(d e g)
(f h)(g h)(f g h)
12
Solving SAT - Basic Case Splitting Algorithm
(Davis-Putnam-Logemann-Loveland 1962)
a
b
b
c
c
c
d
d
d
d
d
Source Karem A. Sakallah, Univ. of Michigan
13
Solving SAT Case Splitting with Implications
a
b
b
c
c
Source Karem A. Sakallah, Univ. of Michigan
14
Implementation
• Clauses are stored in array
• Track sensitivity of clauses for changes
• all literals but one assigned (unit clause) -gt
implication
• all literals but two assigned -gt clause is
sensitive to a change of either literal
• all other clauses are insensitive and do not need
to be observed
• Learning
• learned implications are added to the CNF formula
• limit the size of the clause
• limit the lifetime of a clause, will be removed
after some time
• Non-chronological back-tracking
• similar to circuit case

15
Solving SAT Conflict-based Learning(GRASP
Silva and Sakallah 1996)
a
ab j ß j (a b)
a j ß j (a)
bc j ß j (b c)
b
b
c
Source Karem A. Sakallah, Univ. of Michigan
16
Further Improvements
• Random restarts
• stop after a given number of backtracks
• start search again with modified ordering
heuristic
• keep learned structures !!!
• very effective for satisfiable formulas but often
also effective for unsatatisfiable formulas
• Learning of equivalence relations
• (a Þ b) Ù (b Þ a) Þ (a b)
• very powerful for formal equivalence checking

17
SAT used in our research
• Kunal Ganeshpure, Alodeep Sanyal, and Sandip
Kundu. A pattern generation technique for
maximizing power supply currents. ICCD 2006
• apply SAT to set a maximal set of nodes (say S)
to logic value 0
• apply SAT again to set S to find a maximal subset
S ( ) to set it to logic value 1
• the switching occurring in set S gives
an estimation on worst case power supply current
• Alodeep Sanyal, Kunal Ganeshpure, and Sandip
Kundu. On accelerating soft error detection by
targeted pattern generation. ISQED 2007
• identify a set of soft-error susceptible nodes
using some filtering scheme
• apply SAT to obtain a truth assignment in the PIs
such that the set of susceptible nodes are
excited in their vulnerable state

18
Acknowledgement
• This presentation liberally borrowed material
from the following tutorials
• M. Ciesielski. Lecture on Boolean SAT CNF
representation. Course Synthesis and
Verification of Digital Systems
• A. Kuehlmann. SAT Tutorial. UC Berkeley 2003
• J. M. Silva and K. A. Sakallah. Boolean
satisfiability in electronic design automation.
DAC 2000
• S. Malik. The quest for efficient Boolean
satisfiability solvers. CMU seminar on SAT, 2004

19
???
20
Thank you!!!