TY - GEN
T1 - Dynamic path reduction for software model checking
AU - Yang, Zijiang
AU - Al-Rawi, Bashar
AU - Sakallah, Karem
AU - Huang, Xiaowan
AU - Smolka, Scott
AU - Grosu, Radu
PY - 2009
Y1 - 2009
N2 - We present the technique of dynamic path reduction (DPR), which allows one to prune redundant paths from the state space of a program under verification. DPR is based on the symbolic analysis of concrete executions. For each explored execution path p that does not reach an abort statement, we repeatedly apply a weakest-precondition computation to accumulate the constraints associated with an infeasible sub-path derived from p by taking the alternative branch to an if-thenelse statement.We then use an SMT solver to learn the minimally unsatisfiable core of these constraints. By further learning the statements in p that are critical to the sub-path's infeasibility as well as the control-flow decisions that must be taken to execute these statements, unexplored paths containing the same unsatisfiable core can be efficiently and dynamically pruned. DPR is a very general technique which we consider here in the context of the bounded model checking of sequential programs with nondeterministic conditionals. Our preliminary experimental results show that DPR can prune a significant percentage of execution paths, a percentage that grows with the size of the instance of the problem being considered.
AB - We present the technique of dynamic path reduction (DPR), which allows one to prune redundant paths from the state space of a program under verification. DPR is based on the symbolic analysis of concrete executions. For each explored execution path p that does not reach an abort statement, we repeatedly apply a weakest-precondition computation to accumulate the constraints associated with an infeasible sub-path derived from p by taking the alternative branch to an if-thenelse statement.We then use an SMT solver to learn the minimally unsatisfiable core of these constraints. By further learning the statements in p that are critical to the sub-path's infeasibility as well as the control-flow decisions that must be taken to execute these statements, unexplored paths containing the same unsatisfiable core can be efficiently and dynamically pruned. DPR is a very general technique which we consider here in the context of the bounded model checking of sequential programs with nondeterministic conditionals. Our preliminary experimental results show that DPR can prune a significant percentage of execution paths, a percentage that grows with the size of the instance of the problem being considered.
UR - https://www.scopus.com/pages/publications/67650480574
U2 - 10.1007/978-3-642-00255-7_22
DO - 10.1007/978-3-642-00255-7_22
M3 - Conference contribution
AN - SCOPUS:67650480574
SN - 3642002544
SN - 9783642002540
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 322
EP - 336
BT - Integrated Formal Methods - 7th International Conference, IFM 2009, Proceedings
PB - Springer Verlag
T2 - 7th International Conference on Integrated Formal Methods, IFM 2009
Y2 - 16 February 2009 through 19 February 2009
ER -