posted on 2019-10-29, 16:45authored byHenning Fernau, Florin Manea, Robert MercasRobert Mercas, Markus Schmid
A pattern α (i. e., a string of variables and terminals) matches a word w, if w can be obtained by uniformly replacing the variables of α by terminal words. The respective matching problem, i. e., deciding whether or not a given pattern matches a given word, is generally NP-complete, but can be solved in polynomial-time for restricted classes of patterns. We present efficient algorithms for the matching problem with respect to patterns with a bounded number of repeated variables and patterns with a structural restriction on the order of variables. Furthermore, we show that it is NP-complete to decide, for a given number k and a word w, whether w can be factorised into k distinct factors. As an immediate consequence of this hardness result, the injective version (i. e., different variables are replaced by different words) of the matching problem is NP-complete even for very restricted clases of patterns.
This is the author's version of the work created using a standard ACM template using dummy details, i.e., journal title, vol, issue, article number, publication, doi. The citation on the template should be ignored. The correct citation details are in the record metadata.