Clustering and Dynamic Invariant Detection
Summary
Dynamic invariant detection is the process of distilling invariants from
information about a program run. Clustering is the practice of grouping information into groups of similar elements.
As properties of variables at program points are dependent upon conditionals upon said variables, clustering a program trace may have merit.
The effects of different ways of clustering inputs to Daikon are examined, and an algorithm for automatically detecting program failures without any programmer interference will be shown.