Learning Invariants using Decision Trees
Learning Invariants using Decision Trees
复制标题
使用决策树学习不变量
DOI:
--
复制
发表时间:
2015
期刊:
影响因子:
--
通讯作者:
Thomas Wies
中科院分区:
文献类型:
--
作者:
Siddharth Krishna;Christian Puhrsch;Thomas Wies
The problem of inferring an inductive invariant for verifying program safety can be formulated in terms of binary classification. This is a standard problem in machine learning: given a sample of good and bad points, one is asked to find a classifier that generalizes from the sample and separates the two sets. Here, the good points are the reachable states of the program, and the bad points are those that reach a safety property violation. Thus, a learned classifier is a candidate invariant. In this paper, we propose a new algorithm that uses decision trees to learn candidate invariants in the form of arbitrary Boolean combinations of numerical inequalities. We have used our algorithm to verify C programs taken from the literature. The algorithm is able to infer safe invariants for a range of challenging benchmarks and compares favorably to other ML-based invariant inference techniques. In particular, it scales well to large sample sets.
DOI:
10.1145/1706299.1706330
发表时间:
2010
期刊:
影响因子:
--
作者:
A. Podelski;T. Wies
通讯作者:
T. Wies