Rahul Sharma, Saurabh Gupta, Bharath Hariharan, Alex Aiken, and
Aditya Nori (Stanford, UC Berkeley, Microsoft Research India)
Verification as Learning Geometric Concepts
Slide 2
Invariants assume x
Disjunctive invariants assume n > 0; x = 0 ; while ( x <
n ) { x = x+1; } assert x = n;
From invariants to classifiers Safety properties define bad
states Invariants separate reachable states from bad states
Possible to obtain some examples of states Invariants ->
classifiers Examples of reachable/good states -> positive
examples Examples of bad states -> negative examples Use a
classifier to separate ALL good and bad states
Slide 6
Sample, guess, and check Generate examples of good and bad
concrete states Guess an invariant using learner Check if
verification succeeds If yes, then done If no, then guess again
with more examples Use counter-examples to verification task