Proyectos
Approximate parameterized matching
Resumen
String searching is definitely one of the foremost and most basic and useful computational primitives. The output of the string matching problem should list all occurrences of the pattern string in the text string. Note that the symbols in the strings are chosen from some set which is called an alphabet. Nonetheless, in many real computing situations instead, the alphabet is drawn from a set of integer values. These integer strings are normally found in cipher text, financial data, meteorology data, image data, and music data, to name some. Many variants of the string searching problem have been proposed in the last years. Two of them are the $\delta\gamma$-matching problem and the parameterized matching problem. $\delta\gamma$--Matching. If we were to seek for a pattern in a string of numbers, it would prove unrealistic and ineffective to seek for exactly the same values, but rather ought to search for a close instance of this pattern. Thus, many variants of approximate pattern matching over numeric alphabets have been proposed. Two of them are $\delta$-Matching and $\delta\gamma$-Matching which make possible the definition of certain approximation criteria that establish the searching process for all similar but not necessarily identical occurrences of the pattern. Specifically, in the $\delta$--matching problem, two integer strings of the same length match if the corresponding integers differ by at most a fixed bound $\delta$. As for $\delta\gamma$--matching, the bound $\delta$ is used in the same manner as in $\delta$--matching while $\gamma$ is a bound on the total sum of differences. Parameterized Matching. It was defined, mainly, because of its relevant application, in software maintenance, as an aid to efficiently track down duplicated code in large software systems. Duplication in code occurs when there are some sections of code that are exactly equal (such as literals and reserved keywords) and some other sections of code that are the same, except for a systematic change of parameters (such as identifiers or constants). These features are modeled in Parameterized Matching through the following elements: an alphabet of constant symbols (tokens of code sections that remain exactly the same), an alphabet of parameter symbols (tokens of code sections that could have the mentioned systematic change) and an injective mapping function that establishes the one-to-one correspondence between the parameter symbols. $\delta\gamma$--Parameterized Matching. In this project, we consider the combination of the $\delta\gamma$-matching and parameterized matching paradigms. It searches for strings where each symbol is close, considering the $\delta\gamma$ approximation criteria, to the image under an injective mapping function of the corresponding symbol in the pattern. In other words, this problem looks for strings that have the same structure of the pattern allowing certain differences. Two algorithms to solve the string comparison version of $\delta$ and $\delta\gamma$ parameterized matching were proposed; however they do not extend efficiently for the pattern matching version. Furthermore, $\gamma$-parameterized matching has not been considered. It is highly motivating to study these new problems, from an algorithmic and combinatorial perspective. In conclusion, this project aims to define new approximation paradigms for parameterized matching on strings based on $\delta$, $\gamma$ and $\delta\gamma$ distances. The complexity of the problems and their applications will be studied as well. Furthermore, we will also consider two dimensional pattern matching for approximate parameterized matching: given an $m \times m$ pattern matrix $P$ and an $n \times n$ pattern text matrix $T$, both defined on alphabet $\Sigma$, find the positions $[i,j]$ in the text matrix such that $T[i..i+m-1][j..j+m-1]$ matches $P$. In particular, the match is defined by the $\delta$, $\gamma$ and $\delta\gamma$ parameterized paradigms.
Convocatoria
Nombre de la convocatoria:Registro único de proyectos
Modalidad:Registro único de proyectos
Responsable