Course detail

Theoretical Informatics

FEKT-NTINAcad. year: 2015/2016

Theoretical models, directed and undirected graphs, graph representation methods. Deterministic and nondeterministic automata. Data structures and objects. Parallel, sequential and stochastic algorithms. Mass operation systems. Distributed algorithms. Stochastic processes. Optimization, genetic algorithms. Visualization of and searching for information. Data securing theory - cryptography, steganography.

Learning outcomes of the course unit

Students have skills of design and implementation of various forms of abstract data types and its application to solve specific problems: linear, tree and graph data structures, search in the data structures, genetic algorithms.


The subject knowledge on the Bachelor´s degree level is requested.


Not applicable.

Recommended optional programme components

Not applicable.

Recommended or required reading

Leuwen, J., Watanabe, O., Hagiya, M.: Exploring New Frontiers of Theoretical Informatics. Springer, 2000. (EN)
Goodrich, T.M., Tamassia, R.: Data Structures and Algorithms in Java. John Wiley & Sons, 2000. (EN)
Battista, G., Tollis, I.: Graph Drawing: Algorithms for the Visualization of Graphs. Prentice Hall, 1998. (EN)

Planned learning activities and teaching methods

Techning methods include lectures, computer laboratories and practical laboratories. Course is taking advantage of e-learning (Moodle) system. Students have to write a single project/assignment during the course.

Assesment methods and criteria linked to learning outcomes

final examination

Language of instruction


Work placements

Not applicable.

Course curriculum

1. Information representation, objective oriented design
2. Information representation, introduction to data structures
3. Complexity, computability and automata theory
4. Information representation, linear data structures and sorting
5. Information representation - tree data structures
6. Information representation - graph theory
7. Information acccess - spanning tree
8. Information acccess - graph search
9. Information acccess - data mining
10. Information acccess - decision trees
11. Information acccess - genetic algorithms
12. Information acccess - genetic programming
13. Multithreaded computations, parallelization
14. Final exam


To provide theoretical knowledge of information gathering, processing and sharing in communication systems, and of its structure, behaviour and mutual interactions.

Specification of controlled education, way of implementation and compensation for absences

The content and forms of instruction in the evaluated course are specified by a regulation issued by the lecturer responsible for the course and updated for every academic year.

Classification of course in study plans

  • Programme EEKR-MN Master's

    branch MN-TIT , 1. year of study, winter semester, 6 credits, compulsory

Type of course unit



39 hours, optionally

Teacher / Lecturer

Exercise in computer lab

26 hours, compulsory

Teacher / Lecturer