Our approach: dynamically infer them
(Well, at least some of them)
Execute a program on a collection of inputs
Extract the values that variables take on during these executions
Infer invariants at program points based on these values
Previous slide
Next slide
Back to first slide
View graphic version