Run-Length Encoded Nondeterministic KMP and Suffix Automata
  We present a novel bit-parallel representation, based on the run-length encoding, of the nondeterministic KMP and suffix automata for a string $P$ with at least two distinct symbols. Our method is targeted to the case of long strings over small alphabets and complements the method of Cantone et al. (2012), which is effective for long strings over large alphabets. Our encoding requires $O((\sigma + m)\lceil \rho / w\rceil)$ space and allows one to simulate the automata on a string in time $O(\lceil \rho / w\rceil)$ per transition, where $\sigma$ is the alphabet size, $m$ is the length of $P$, $\rho$ is the length of the run-length encoding of $P$ and $w$ is the machine word size in bits. The input string can be given in either unencoded or run-length encoded form. 
Emanuele Giaquinta
cs.FL cs.DS