Turing machines, primitive recursive functions, recursive functions, enumeration, universal functions, decidability, undecidability, partial decidability, recursive, and recursively enumerable sets, reducibility and degrees, recursion theorems. Computability, complexity classes, the relationship between complexity classes, reducing and completeness, NP-complete, CONP-complete problems, randomized computation, cryptography. Algorithms in bioinformatics. Aligning strings, hidden Markov chains (HMM), hidden Markov models, aligning with (HMM), multiple alignment of sequences, phylogenetic trees, transformational grammars, structure analysis of RNA. The content of this course will be harmonized with areas of scientific research at the University and the most current developments in the field of algorithms.