90 likes | 258 Views
A Faster Counterexample Minimization Algorithm Based on Refutation Analysis. ShengYu Shen National University of Defence Technology. Sorry. My ppt file is broken So I write a new one 1 hour before Delegates who want the complete version can contact me at syshen@nudt.edu.cn after conference.
E N D
A Faster Counterexample Minimization Algorithm Based on Refutation Analysis ShengYu Shen National University of Defence Technology
Sorry • My ppt file is broken • So I write a new one 1 hour before • Delegates who want the complete version can contact me at syshen@nudt.edu.cn after conference
Outline • Motivation • BFL proposed by Kavita Ravi • Faster BFL based on Refutation Analysis • Experiment Result
Motivation • Model Checking is widely employed to verify hardware and software system • It can generate counterexample to explain property violation • But looooooong counterexample of complex system is very hard to be understood • Eliminated irrelevant variables from counterexample to make it easier to be understood
BFL counterexample minimization algorithm • Assume counterexample length is k, and the primary input variable set of the i-th cycle is Wi • Then Free:=0<=i<kWi • Thus for any v in Free, it is an irrelevant variable if and only if “no matter what value does v take on, it can not prevent the property from been violated”
Transform BFL into UNSAT determination • For every v in Free , Construct a SAT instance SAT(v) express the following statement: • Unrolling transition relation k times • Assigning Free-{v} their value in counterexample • The property is violated • v is irrelevant if and only if the above SAT instance is unsatisfiable • Test unsatisfiability for every v in Free
Problem of BFL • Problem: run time overhead is too high • Why: need to test unsatisfiability for all v in Free • Solution: reduce the number of calling SAT solver • How: eliminate multiple irrelevant variables after each UNSAT
Faster BFL based on refutation analysis • When SAT(v) is UNSAT, there must exist a conflict clause c at decision level 0 • Starting from all literals of c, backtrack along the implication graph, until all backtrack path end at a unit clause, • Assume the set of unit clauses is S. • Let R:={v|v or ~v contained in S} • R is the set of variables that are sufficient to lead to property violation • Free-R can be eliminated with only one SAT solver call
Experiment result Size of Free BFL In our approach, size of Free drop sharply time