Download presentation
Presentation is loading. Please wait.
Published byElaine Booth Modified over 6 years ago
1
Introduction to the Boolean Satisfiability Problem
Spring 2018 CSCE 235H Introduction to Discrete Structures URL: cse.unl.edu/~cse235h All questions: Piazza
2
Satisfiability Study 7 weeks 30 min lectures in recitation
~2 hours of homework per week Goals: Exposure to fundamental research in CS Understand how to model problems Learn to use SAT solver, MiniSAT
3
Boolean Satisfiability Problem
Given: A Boolean formula Question: Is there an assignment of truth values to the Boolean variables such that the formula holds true?
4
Boolean Satisfiability Problem
5
Boolean Satisfiability Problem
SATISFIABLE a=true, b=true
6
Boolean Satisfiability Problem
SATISFIABLE a=true, b=true UNSATISFIABLE Left side of implication is a tautology. Right side of implication is a contradiction. True cannot imply false.
7
Applications of SAT Scheduling Resource allocation
Hardware/software verification Planning Cryptography
8
Conjunctive Normal Form
Variable Literal Clause Formula
9
Converting to CNF All Boolean formulas can be converted to CNF
The operators can be rewritten in terms of can be rearranged using De Morgan’s Laws Distributive Laws Double Negative May result in exponential size increase of the formula
10
Converting to CNF
11
Converting to CNF Implication
12
Converting to CNF Implication DeMorgan’s
13
Converting to CNF Implication DeMorgan’s Distributive
14
Interpretation of CNF Every clause must be satisfied by at least one true literal Total possible number of solutions increases as number of variables increases Clauses constrain the possible solutions Smaller clauses are more constraining
15
Interpretation of CNF a b C 1
16
Interpretation of CNF a b C 1
17
Interpretation of CNF a b C 1
18
Interpretation of CNF a b C 1
19
Interpretation of CNF a b C 1
20
Determining SAT/UNSAT
All that is required to show satisfiability is to find a valid solution Many techniques available: Guessing and checking Systematic search Inference
21
Systematic Search with Backtracking
Construct a binary tree of all combinations Proceeds in a depth first manner Each level corresponds to a variable Each branch corresponds to a truth assignment Branches of the tree are ‘pruned’ when the assignment cannot be extended in a satisfiable manner
22
Systematic Search with Backtracking
23
Systematic Search with Backtracking
24
Systematic Search with Backtracking
25
Systematic Search with Backtracking
26
Systematic Search with Backtracking
27
Systematic Search with Backtracking
28
Systematic Search with Backtracking
Satisfiable
29
Systematic Search with Backtracking
Satisfiable
30
Systematic Search with Backtracking
Satisfiable
31
Systematic Search with Backtracking
Satisfiable
32
Systematic Search with Backtracking
Satisfiable
33
Systematic Search with Backtracking
Satisfiable
34
Systematic Search with Backtracking
Satisfiable
35
Systematic Search with Backtracking
Satisfiable
36
Systematic Search with Backtracking
Satisfiable
37
Systematic Search with Backtracking
Satisfiable
38
Systematic Search with Backtracking
Satisfiable
39
Systematic Search with Backtracking
Satisfiable
40
Systematic Search with Backtracking
Satisfiable
41
Systematic Search with Backtracking
Satisfiable
42
Systematic Search with Backtracking
Satisfiable 3 solutions total
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.