The study of theoretical computer science is focused on a deeper understanding of the basic principles on which modern information technologies are based, including non-classical computer systems such as neural networks or quantum computers. In addition to the active acquisition of knowledge of a theoretical and technical nature, special emphasis is placed on the development of abstract thinking.
Students will learn advanced algorithmic procedures, gain insight into the principles of modern programming languages, learn about methods for analysis, testing and verification of code, and understand the possibilities and limitations of emerging computing devices that operate on different principles than classical computers. The acquired knowledge and skills will prepare students for expert analytical work, which may include independent research.
The candidate chooses one of the specializations Computational model algorithms, Formal verification and analysis of programs or Principles of programming languages.
|Czech study program|
|Study time||2 years|
The graduate of the program is ready to work in companies focused on the design and development of software systems, especially in the positions of analyst, software architect or verifier. It can also be used in companies providing consultations and advice in the field of informatics. Solid mathematical foundations together with knowledge of non-trivial algorithmic procedures are a good prerequisite for work in the financial sector. The graduate can also make very good use of the acquired knowledge and skills in the follow-up doctoral study.
Where after this study?
Survey of graduates' employment
FI graduates are valued in practice, their average gross starting salary in the last few years is more than 45,000 CZK, according to a survey of all levels of study. More about the employment of graduates
Meet successful graduates
We are preparing more information about graduates for you.
In the study catalog you will find lists of compulsory and optional subjects and a recommended course of study.
Specializations are study plans that set out the conditions for graduation, such as compulsory subjects.
The specialization will acquaint students with methods of solving problems that are computationally demanding on classical computers. Graduates will also be introduced to the principles, advantages and limitations of non-classical computer systems such as neural networks or quantum computers.
The specialization is focused on formal methods for modeling, analysis, testing and verification of computer programs, which are a key part of the development of modern software systems. Students will gain the necessary theoretical basis in the field of formal methods, a deeper insight into the principles of modern verification tools and a set of practically oriented skills usable in working in teams responsible for ensuring the quality of software products.
The specialization provides a deeper insight into the paradigms of modern programming languages and the structure of their compilers. Graduates are able to choose the optimal programming tools for a given type of application and are able to quickly learn new programming languages.