Theoretical Computer Science
The study of theoretical computer science focuses on a deeper understanding of the basic principles underlying contemporary information technologies, including non-classical computing systems such as neural networks or quantum computers. In addition to the active acquisition of theoretical and technical knowledge, 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 methods for analysis, testing and code verification, and understand the capabilities and constraints of emerging computing devices that operate on different principles than conventional 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 Program Analysis or Programming Language Principles.
|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. He will also find employment in companies that provide IT consultancy and advice. Solid mathematical foundations, together with knowledge of non-trivial algorithmic procedures, are a good prerequisite for work in the financial sector. The acquired knowledge and skills can also be used very well by the graduate in the follow-up doctoral studies.
Where to go after this study?
FI graduates are valued in practice, their average gross salary in the last few years is more than CZK 45,000, according to a survey of all levels of study. More about graduate employment
Meet successful graduates
We are preparing more information about graduates for you.
In the Study Catalog you will find lists of compulsory and compulsory optional subjects and a recommended course of study.
Specializations are curricula that set conditions for completion, such as compulsory subjects.
Specialization introduces students to methods of solving problems that are computationally demanding on classical computers. The graduates will also be familiar with the principles, advantages and limitations of non-classical computing systems such as neural networks or quantum computers.
Specialization is focused on formal methods for modeling, analyzing, testing and verifying computer programs, which are a key part of the development of modern software systems. Students will acquire 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 useful in working in teams responsible for quality assurance of software products.
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 can quickly acquire new programming languages.