Pattern Discovery in Colored Strings

2020 
We consider the problem of identifying patterns of interest in colored strings. A colored string is a string in which each position is colored with one of a finite set of colors. Our task is to find substrings that always occur followed by the same color at the same distance. The problem is motivated by applications in embedded systems verification, in particular, assertion mining. The goal there is to automatically infer properties of the embedded system from the analysis of its simulation traces. We show that the number of interesting patterns is upper-bounded by $\mathcal{O}(n^2)$ where $n$ is the length of the string. We introduce a baseline algorithm with $\mathcal{O}(n^2)$ running time which identifies all interesting patterns for all colors in the string satisfying certain minimality conditions. When one is interested in patterns related to only one color, we provide an algorithm that identifies patterns in $\mathcal{O}(n^2\log n)$ time, but is faster than the first algorithm in practice, both on simulated and on real-world patterns.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    36
    References
    0
    Citations
    NaN
    KQI
    []