English

Precondition Inference via Partitioning of Initial States

Logic in Computer Science 2018-11-19 v1

Abstract

Precondition inference is a non-trivial task with several applications in program analysis and verification. We present a novel iterative method for automatically deriving sufficient preconditions for safety and unsafety of programs which introduces a new dimension of modularity. Each iteration maintains over-approximations of the set of \emph{safe} and \emph{unsafe} \emph{initial} states. Then we repeatedly use the current abstractions to partition the program's \emph{initial} states into those known to be safe, known to be unsafe and unknown, and construct a revised program focusing on those initial states that are not yet known to be safe or unsafe. An experimental evaluation of the method on a set of software verification benchmarks shows that it can solve problems which are not solvable using previous methods.

Keywords

Cite

@article{arxiv.1811.06771,
  title  = {Precondition Inference via Partitioning of Initial States},
  author = {Bishoksan Kafle and Graeme Gange and Peter Schachte and Harald Sondergaard and Peter J. Stuckey},
  journal= {arXiv preprint arXiv:1811.06771},
  year   = {2018}
}

Comments

19 pages, 8 figures

R2 v1 2026-06-23T05:18:01.932Z