SLIDE 11 SAT-LP-Solver: HySAT (eager SMT approach)
1: procedure HYSAT(Ψ) 2:
(ϕ, π) ←ABSTRACTION(Ψ)
3:
while ( true ) do
4:
if ( DECIDENEXTBRANCH(α) ) then
5:
while ( DEDUCE() == CONFLICT ) do
6:
(blevel, learnedClause) ←ANALYZECONFLICT()
7:
if ( blevel ≤ 0 ) then return UNSAT
8: 9:
// partial SAT solution
10:
ψ ←
- v∈VA∧α(v)=1 π(v)
- // activated constraints
11:
if ( LPSOLVE(ψ) == INCONSISTENT ) then
12:
(blevel, µ) ←ANALYZECONFLICT(ψ) //µ is MIS
13:
if (blevel ≤ 0) then return UNSAT
14:
else
15:
// all variables are assigned
16:
return SAT
c Marc Herbstritt (University Freiburg) Variable Selection in SAT-LP-based BMC of LHA DDECS’07 7 / 16