Patent ID: 8122032

Claim:
A computer-implemented method of identifying similar passages in a plurality of documents stored in a corpus, comprising: building a shingle table identifying shingles found in the corpus, identifying one or more documents in which the identified shingles appear, and identifying locations in the identified documents where the identified shingles occur; for a target shingle in a source document, identifying, using the shingle table, one or more documents in the corpus which include the target shingle; identifying, using the shingle table, a next shingle in the source document, wherein the next shingle is in a position occurring immediately after the target shingle; identifying, using the shingle table, a subset of the identified documents which include the next shingle in a position occurring immediately after the target shingle; defining a sequence of multiple contiguous shingles that appears in the source document and the identified subset of documents, the sequence of multiple contiguous shingles comprising at least the target shingle and the identified next shingle; merging overlapping shingles in the defined sequence of multiple contiguous shingles to form a merged sequence; defining a similar passage in the source document based at least in part on the merged sequence; and storing data describing the similar passage.