Dekel Tsur

Senior Academic

Finding witnesses by peeling

Yonatan Aumann, Moshe Lewenstein, Noa Lewenstein, Dekel Tsur

In the k-matches problem, we are given a pattern and a text, and for each text location, the desired output consists of all aligned matching characters if there are k or fewer of them, and any k aligned matching characters if there are more than k of them. This problem is one of several string matching problems that seek not only to find where the pattern matches the text under different "match" definitions, but also to provide witnesses to the match. Other such problems include k-aligned ones, k-witnesses, and k-mismatches. In addition, the solutions to several other string matching problems rely on the efficient solutions of the witness finding problems. In this article we provide a general method for solving such witness finding problems efficiently. We do so by casting the problem as a generalization of group testing, which we then solve by a process we call peeling. Using this general framework we obtain improved results for all of the problems mentioned. We also show that our method also solves a couple of problems outside the pattern matching domain.

Publication language English
Journal ACM Transactions on Algorithms
Volume 7
Issue number 2
Publication status Published - 01.03.2011
Article Number 24

Keywords

Shortest paths
Witness computation

ASJC Scopus subject areas

Mathematics (miscellaneous)
Access to Document
10.1145/1921659.1921670
Other files and links
Link to publication in Scopus