Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2018/2019

Automata in Text Pattern Matching

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
MI-AVY Z,ZK 4 2+1 Czech
Lecturer:
Ondřej Guth (guarantor), Bořivoj Melichar (guarantor)
Tutor:
Ondřej Guth (guarantor)
Supervisor:
Department of Theoretical Computer Science
Synopsis:

Students learn algorithms for searching in texts using finite automata. They become acquainted with the searching problems taxonomy and learn the principles of automata constructions for solving these problems. They will be able to apply the gained knowledge in the design of applications required text pattern matching, such as data streaming, DNA sequencing, etc.

Requirements:

Basics of formal language theory, language translations, and finite automata.

Syllabus of lectures:

1. Text systems, basic notions, taxonomy of text pattern matching problems.

2. Forward pattern matching, models of searching algorithms.

3. Nondeterministic search automata.

4. Simulation of nondeterministic search automata, bit parallelism, dynamic programming.

5. Prefix and suffix automata.

6. Factor automata, factor oracle, suffix oracle.

7. Borders and periods in texts.

8. Repetitions in texts, exact and approximate.

9. Simulation of nondeterministic search automata, fail function, the MP a KMP algorithms.

10. Simulation of nondeterministic search automata, fail function, the AC algorithm.

11. Backward single pattern matching, the BM algorithm, the CW algorithm.

12. State-of-the-art in text pattern matching (e.g., matching in a multidimensional text, searching in a compressed text).

Syllabus of tutorials:

1. Finite automata, basic operations with finite automata. Taxonomy of pattern matching problems for exact and approximate matching.

2. Nondeterministic search finite automata. Deterministic search finite automata and their complexity.

3. Simulation of nondeterministic search finite automata, bit parallelism, dynamic programming, MP & KMP algorithms, AC algorithm.

4. Construction of prefix and suffix automata. Construction of factor automata, factor & suffix oracles.

5. Computation of borders and periods of text. Searching exact and approximate repetitions in text.

6. Backward pattern matching - BM & CW algorithms.

Study Objective:

The module deals with automata models of algorithms for text searching. The main topics are text pattern matching and repetitions. In both cases, both exact and inexact pattern matchings are considered. The fundamental formal tool for description of the algorithms is the finite automaton. The knowledge gained in this module can be applied in analysis and design of algorithms for text pattern matching.

Study materials:

1. Melichar, B., Holub, J., Polcar, T. ''Text searching algorithms''. Volume I and II, Lecture notes. Prague, CTU, 2008.

2. Melichar, B., et al. ''Text searching algorithms''. Seminars. Prague, CTU, 2008.

Note:
Time-table for winter semester 2018/2019:
Time-table is not available yet
Time-table for summer semester 2018/2019:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon
Tue
roomT9:302
Guth O.
16:15–17:45
(lecture parallel1)
Dejvice
NBFIT učebna
roomT9:302
Guth O.
18:00–18:45
(lecture parallel1
parallel nr.101)

Dejvice
NBFIT učebna
Fri
Thu
Fri
The course is a part of the following study plans:
Data valid to 2019-03-20
For updated information see http://bilakniha.cvut.cz/en/predmet1433406.html