Set intersection and sequence matching

Ariel Shiftan, Ely Porat

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

2 Scopus citations


In the classical pattern matching problem, one is given a text and a pattern, both of which are sequences of letters, and is required to find all occurrences of the pattern in the text. We study two modifications of the classical problem, where each letter in the text and pattern is a set (Set Intersection Matching problem) or a sequence (Sequence Matching problem). Two "letters" are considered to be match if the intersection of the two corresponding sets is not empty, or if the two sequences have a common element in the same index. We show the first known non-trivial and efficient algorithms for these problems, for the case the maximum set/sequence size is small. The first, randomized, that takes Θ (2dn ln n log m) time, where d is the maximum set/sequence size, and can also fit, with slight modifications, for the case one is also interested in up to k mismatches. The second is deterministic and takes Θ (4dn log m). The third algorithm, also deterministic, is able to count the number of matches at each index of the text in total running time Θ (∑i=1d ( i|∑|)n log m).

Original languageEnglish
Title of host publicationString Processing and Information Retrieval - 16th International Symposium, SPIRE 2009, Proceedings
Number of pages10
StatePublished - 2009
Event16th International Symposium on String Processing and Information Retrieval, SPIRE 2009 - Saariselka, Finland
Duration: 25 Aug 200927 Aug 2009

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume5721 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Conference16th International Symposium on String Processing and Information Retrieval, SPIRE 2009


Dive into the research topics of 'Set intersection and sequence matching'. Together they form a unique fingerprint.

Cite this