CAMA: A MultiValued Satisfiability Solver - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

CAMA: A MultiValued Satisfiability Solver

Description:

A multi-valued clause is a logical disjunction of one or more MV literals. A formula in multi-valued conjunctive normal form (MV-CNF) is the logical ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 22
Provided by: cong48
Category:

less

Transcript and Presenter's Notes

Title: CAMA: A MultiValued Satisfiability Solver


1
CAMA A Multi-Valued Satisfiability Solver
  • Cong Liu1
  • Andreas Kuehlmann1,2
  • Matthew Moskewicz1
  • Alberto Sangiovanni-Vincentelli1

1 University of California, Berkeley
2 Cadence Berkeley Labs
2
Outline
  • Motivation
  • Preliminaries
  • Solver Architecture
  • MV Decision Heuristic
  • MV Watch Literal Scheme
  • MV Learning
  • Results
  • Conclusions

3
Motivation
  • MV logic can describe many CAD decisions
    naturally
  • Choose one out of n, e.g. technology mapping
  • Application of binary SAT solver requires
    encoding
  • One-hot encoding one binary variable represents
    one value of a MV variable
  • e.g.
  • Binary encoding
  • Additional clauses to exclude invalid values

4
Motivation
  • MV formulations can describe binary SAT problems
    more compactly
  • E.g. by clustering Boolean circuits
  • 7 Binary variables, 43 clauses
  • 5 MV variables (y1 4-value, y2 8-value), 32 MV
    clauses
  • Preprocess cluster

5
Preliminaries
  • Let xi denote a multi-valued variable with domain
    Pi 0,1,,Pi-1.
  • xi is assigned to a non-empty value set vi, if xi
    can take any value from vi Í Pi but no value
    from Pi \ vi
  • if vi 1, completely assigned, e.g. x
    2
  • otherwise incompletely assigned, e.g. x 0,2
  • A multi-valued literal is the Boolean
    function defined by
  • where is the literal value
    set

6
Preliminaries
  • A multi-valued clause is a logical disjunction of
    one or more MV literals.
  • A formula in multi-valued conjunctive normal form
    (MV-CNF) is the logical conjunction of a set of
    multi-valued clauses.
  • A MV SAT problem given in MV-CNF is
  • Satisfiable if there exists a set of complete
    assignments to all variables such that the
    formula evaluates to true.
  • It is unsatisfiable if no such assignment exists.

7
Resolution
  • Recall Binary clause resolution
  • variable x is eliminated
  • MV resolution provides generalized case
  • take intersection of literal value sets of the
    resolving variable x

8
General Solver Flow
Algorithm DPLL () while (decide ()
SUCCESS) while (deduce () CONFLICT)
if (analyze_conflict () FAILURE)
return UNSAT
return SAT
9
Decision Heuristic
  • Binary case either 0 or 1 is assigned
  • MV Case (2P-2) possible assignments initially
  • E.g. P0,1,2 0, 1, 2, 0,1, 0,2,
    1,2
  • Large decision scheme
  • Pick one value from value set of selected
    variable
  • Max depth of decision stack variables n
  • Learning by contra-positive only forbids one
    value
  • Small decision scheme
  • Exclude one value
  • Max depth of decision stack

10
Watch-literal Scheme
  • Similar to Chaff-class solvers
  • Watch two literals and swap them with non-false
    literals as soon as they become false
  • If no such literal exist ? implication
  • No implication as long as watch literals not
    false
  • Differences
  • Only one linked list for each MV variable
  • Process clause only when literal evaluates to
    false

11
Boolean Constraint Propagation
12
Conflict Analysis
  • Grasp Chaff wisdom we can learn the
    contra-positive for any cut assignment
  • Grasp Chaff suggest to use cut with exactly one
    literal on current decision level
  • Unique implication point (UIP)

Assignment(Cuti) Þ Conflict Not(Conflict) Þ
Not(Assignment(Cuti))
13
Conflict Analysis
  • Cut at x3 and x4 as first UIP
  • By contra-positive we learn

14
However
  • Learned clauses are actually generated by a
    sequence of resolution steps
  • IG is processed in reverse implication order
    starting from the conflicting clause as
    accumulator clause.
  • At each step the accumulator clause is resolved
    with the clause causing the implication, using
    the implied variable as the resolving variable.
  • Binary case
  • The result of the resolution sequence is
    identical to the contra-positive of the cut
    assignments
  • For MV-SAT this is not the case

15
MV-Conflict Analysis
16
MV-Conflict Analysis
17
MV-Conflict Analysis
  • The learned clause is strictly stronger than
    the cut clause
  • Cut clause forbids
  • Learned clause forbids
  • As if decisions were

Never visited before
Bigger search space
18
Implementation Details
  • Minimum Value Set (MVS) algorithm builds learned
    clause in one traversal of IG
  • Original Assignment Storage (OAS) facilitates
    undo assignment
  • Value sets are represented by sets of bits
  • Positional notation
  • Allow efficient bit-parallel operation
  • Flexibility of processing incomplete assignments
  • A decision-level stack for each variable

19
Results
  • Compare Cut-negation learning with MVS learning

20
Results
  • Equivalence checking of a MV function before and
    after applying MVSIS

21
Conclusions
  • Many CAD decision problems can be modeled as MV
    SAT problems
  • Avoid encoding and additional constraint clauses
  • Specialized MV SAT solver has advantages
  • Bit-parallel processing of value sets
  • Learning based on MV-resolution can prune search
    space never visited before
  • Flexibility by using incomplete assignments
  • Corresponding speedup observed when comparing
    with binary solver
Write a Comment
User Comments (0)
About PowerShow.com