pith. machine review for the scientific record. sign in

arxiv: 1501.04725 · v1 · submitted 2015-01-20 · 💻 cs.PL · cs.LG

Recognition: unknown

Learning Invariants using Decision Trees

Authors on Pith no claims yet
classification 💻 cs.PL cs.LG
keywords algorithminvariantinvariantspointssamplecandidateclassifierdecision
0
0 comments X
read the original abstract

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.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.

Forward citations

Cited by 1 Pith paper

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score.

  1. SpecSyn: LLM-based Synthesis and Refinement of Formal Specifications for Real-world Program Verification

    cs.SE 2026-04 unverdicted novelty 6.0

    SpecSyn generates formal specifications with over 90% precision and 75% recall, successfully verifying 1071 out of 1365 target properties on open-source programs.