d-dimensional Pattern Matching

We are given access to a text T and a pattern P over an alphabet Σ, with |Σ| = q ≥ 2. Our task is to find an instance of P within T, if such an instance exists. That is, writing [n] := {0, . . . , n − 1} and thinking of T and P as functions T : [n] d → Σ, P : [m] d → Σ, we are required to output s ∈ [n − m] d such that T(s + x) = P(x) for all x ∈ [m] d , if such an s exists; otherwise, we should output “not found”. Throughout this work, we call any function of the form S : [k] d → Σ a string, and think of strings interchangeably as functions or k × · · · × k arrays of elements of Σ. We assume throughout that m ≤ n.

Parameters

  • mm: length of pattern array
  • nn: length of text array
  • ss: size of the alphabet
  • dd: number of dimensions

Insufficient data to display graph

Filters

Computational Model

Randomization

Approximation

Algorithms Table

Insuffient Data to display table

Reductions Table

Insuffient Data to display table

Other relevant algorithms

Insuffient Data to display table