hybrid sat solving using reference points stephan kottler universität tübingen
TRANSCRIPT
![Page 1: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/1.jpg)
Hybrid SAT Solving using Reference Points
Stephan KottlerUniversität Tübingen
![Page 2: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/2.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 2
Motivation
o DPLL / CDCLo Learning, backjumping and lazy data-
structures huge instances tractableo Early decisions are crucialo Many restarts to escape from bad parts in
the search tree
o When restartingo Keep learnt clauses, activities, phase savingo How close is partial assign. to a model? (sat)o Analysis of partial assignment (sat/unsat)
![Page 3: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/3.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 3
Modificationloop{ if ( all vars assigned ) return SAT choose free var and decide polarity bcp while ( conflict ) {
if ( level = 0 ) return UNSATanalyse conflict, backjump and learn lemmabcp
} if ( reached restart limit )
restart}
Hold onTake closer look at partial assign.
![Page 4: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/4.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 4
Continue on partial assignments
o Extend to full assignmento Random values to free varso Consider subset of clauses for bcp
oExtend to fulfill all binary clauses
o Modify full assignmento Use local search (incomplete)o More reasoning: DMRP
![Page 5: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/5.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 5
Decision Making with Reference Point (DMRP)
clauses
(¬a v ¬b) ∧(¬a v ¬c) ∧(¬b v ¬c) ∧(a v ¬b v d) ∧(a v b v c v ¬d)
∧ …1110
reference point
0110
0111
dcba
![Page 6: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/6.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 6
Solving with reference points
Maintain assignment A to all variableso some clauses U are not satisfied by Ao try to modify A to satisfy more (all)
clausesomodification of A must keep previously
satisfied clauses (S) satisfied !!!okeep track of clauses of S that are temporarily unsatisfied
![Page 7: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/7.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 7
Modification of reference point
clauses
(¬a v ¬b) ∧(¬a v ¬c) ∧(¬b v ¬c) ∧(a v ¬b v d) ∧(a v b v c v ¬d) ∧(b v e) ∧(¬e v a) ∧ …
edcba
reference point
00111
00110
00100
10100
10101
01110
![Page 8: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/8.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 8
Profound decisions need more information
o Keep track of o reference point / unsatisfied clauseso temporarily modified ref. pointo temporarily unsatisfied clauses
o Functionalityo backtracking on reference pointso compute clauses that get unsat by
ref. p.o still handle learning from conflicts
![Page 9: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/9.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 9
clauses
(¬a v ¬b) ∧(¬a v ¬c) ∧(¬b v ¬c) ∧(a v ¬b v d) ∧(a v b v c v ¬d) ∧(b v e) ∧(¬e v a) ∧ …
Trying to modify the ref. point
occurrence
lists
a b cedref point watchers
edcbareference point
00111
00110
![Page 10: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/10.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 10
Temporarily unsat clauses
Lev 0 C01 C02 C03 C04
L12Lev 1 C11 C12 C13
Lev 2 C21 C22 C23 C24
Lev 3 C31 C32
L02L01 L04L03
L11 L13
L22L21 L24L23
L32L31
o Backtracking very fasto One Operation per level o No maintenance for ref. point watchers!
o Find temporarily unsat clauseso No occurrence list of literals!
![Page 11: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/11.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 11
Making decisionsChoose a temporarily unsat clauseChoose Literal witho least BreakCount
o least sat clauses become unsat
o highest activity valueo highest MakeCount
o most unsat clauses are fulfilled
Further adaptions of data-structure
![Page 12: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/12.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 12
Design of data structures
o Lazy data structures o little effort to maintain datao ref. point watchers (watched lits)o computation of MakeCount
o Consequenceso frequently called functions still cheap
(propagation)o less frequent calls require more computationo garbage collection
![Page 13: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/13.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 13
Setup with Luby restartso Idea: Grant different restart strategies
equal computation time1 1 2 1 1 2 4 1 1 2 1 1 2 4 8 1 ... * fact
o Shortest runs use DMRPo Extend partial assig. by performing bcp on
binary clauseso Increase conflict limit if DMRP is successful o Different strategies to choose next unsat
clause and next temporarily unsat clause
![Page 14: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/14.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 14
Results
o Tests on 576 instances of last four sat competitions / races
o Timeout 1200 sec.
217,85 sec204,41 sec161,98 secavg time
325396386all
193221210unsat
132175176sat
Hybrid comp 09
Hybrid part. assign
CDCL (Luby)
![Page 15: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/15.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 15
Hardware Verification
![Page 16: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/16.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 16
Past
o Submitted 2 solver versions to sat-competition 2009o (CDCL, hybrid with reference points)
o Differences to former hybrid version:o DMRP initialised with partial assignmentso DMRP used for (many) short runs. Previous
version run DMRP with very high conflict limits
o Less memory consumption
![Page 17: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/17.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 17
Present and Future
o Use DMRP in combination with CDCL in multi-threaded solver
o Better heuristic to determine conflict limit for DMRP runs
o More criteria to analyse partial assignments (sat instances)
![Page 18: Hybrid SAT Solving using Reference Points Stephan Kottler Universität Tübingen](https://reader036.vdocument.in/reader036/viewer/2022082517/56649ed55503460f94be5a91/html5/thumbnails/18.jpg)
Dagstuhl 2009 Hybrid SAT Solving using Reference Points 18
Thank you for your attention