Abstract: Formal specifications play a central role in the design, verification, and debugging of systems. This paper presents a new viewpoint to the problem of mining specifications from simulation or execution traces of reactive systems. The main application of interest is to localize faults to sections of an error trace we term subtraces, with a particular focus on digital circuits. We propose a novel sparse coding method that extracts specifications in the form of basis subtraces. For a set of finite subtraces each of length p, each subtrace is decomposed into a sparse Boolean combination of only a small number of basis subtraces of the same dimension. We formally define this decomposition as the sparse Boolean matrix factorization problem and give a graph-theoretic algorithm to solve it. We formalize a sufficient condition under which our approach is sound for error localization. Additionally, we give experimental results demonstrating that (1) we can mine useful specifications using our sparse coding method, and (2) the computed bases can be used to do simultaneous error localization and error explanation.
0 Replies
Loading