Bachelor’s, Master’s and PhD Degree Programmes

# Bachelor’s Degree Programme in Computer Science

The Bachelor of General Computer Science study programme is intended for
students who would like to learn the **lasting foundations of computer
science** and to become proficient in its methods and approaches. A soundly built theoretical base is invaluable for working with applications and
software development, and is a necessity for further study and research in
computer science. The bachelor study programme usually takes **three
years** and ends with a state final examination, after the successful
completion of which the student is awarded the title of Bachelor of Science. The
degree awarded is accredited by the Ministry of Education, Youth, and Sports of
the Czech Republic and is internationally recognized. The language of
instruction is English.

In the **first year**, there are basic mathematical courses (Mathematical
Analysis I, II, Linear
Algebra I, II, Discrete
Mathematics, Combinatorics
and Graphs), and introductory courses to programming and computers (Programming I, II, Principles
of Computers, Introduction
to Networking, Algorithms
and Data Structures, Introduction
to UNIX).

During the **second year** students learn further mathematical
theory (Mathematical
Analysis III, Propositional
and Predicate Logic, Probability
and Statistics), as well as the theoretical basics of programming and
computers (Algorithms
and Data Structures II, Optimization
Methods, Non-Procedural
Programming, Automata
and Grammars, Database
Systems). In the second year, students are also required to learn some
practical programming (they have to choose one of the following courses: Programming
in C++, Java, C#
Language and .NET Framework) and present an Individual Software Project.
Students choose other courses according to their individual needs and
interests.

During the **third year**, students are expected to work on
their bachelor’s thesis. There is only one further mathematical course (Algebra)
recommended for the third year. Obligatory courses are complemented by courses
chosen by the student him/herself. Here you
can find the complete description of our bachelor’s Computer Science
programme.

Starting from the academic year 2019/2020, we will follow an updated version of our programme; its full preliminary description is available here.

Graduates from our programme are familiar with the fundamentals of mathematics and computer science. They have both theoretical and practical experience with programming and basic knowledge in more specific areas according to their choice of advanced classes. The skills acquired provide a good background for a follow-up master’s degree, as well as sufficient knowledge for immediate employment. Graduates are able to perform well in any position where logical thinking is required. They may also work as programmers or network administrators.

**Master’s Degree Programmes**

In our master’s programmes, students are given a broad overview of their
field, helping them to think independently, to distinguish between important and
marginal problems, and to accommodate quickly to novel technologies. The focus
is on understanding the core principles of how and why things work and on the
**application** of these principles within modern technologies. The
strong theoretical basis of the master’s study programme gives our graduates a competitive advantage in a dynamically evolving world where today’s
technologies are often obsolete tomorrow.

Studies usually take **two years** and finish with a state
final examination and master’s thesis defense. After successful completion the
student is awarded the title of Master of Science.

**Master’s Programme in Computer Science**

Currently we offer seven study branches in English:

*Theoretical Computer Science.**Computational Linguistics.**Discrete Models and Algorithms.**Computer Graphics and Game Development.**Software and Data Engineering.**Software Systems.**Artificial Intelligence.*

A complete description of the Master of Computer Science programme is here.

The study programme is very flexible: students can customize their set of
attended courses based on their particular interests and needs. In the
**first year** there are mandatory foundational courses such as
data structures and theory of complexity and computability. Students
of Computational Linguistics also have courses on natural language processing
and statistical methods, and they begin work on a group software project, while
students of Discrete Models and Algorithms have courses on combinatorics, graph
theory, and optimization. Some courses on specific subjects, as described next,
are also included in the first year.

The **second year** of studies is organized according to the
student’s own selection of courses. This is based on the choice of study plan
within the study branch. We offer courses on artificial intelligence and its
sub-areas such as machine learning, planning, declarative programming, and
neural networks; several linguistics courses; courses on speech recognition and
machine translation; and courses on optimization techniques (non-linear,
combinatorial, multi-criteria), integer programming, mathematical structures,
algorithms and their complexity, and approximation and probabilistic algorithms.
Students may attend some of these courses already in their first year, so that
in their second year they can focus on finishing their master’s thesis.

**Master’s Programme in Mathematics**

The master’s programme in Mathematics leads students to achieve a deep and solid understanding of higher mathematics. It is designed to encourage analytical thinking, creativity and comprehensive understanding, combined with an ability to apply mathematical methods to real-life problems. It offers degrees in several study branches, ranging from pure abstract mathematics to applications in various fields:

*Mathematical Structures*provides a deep knowledge of advanced algebra, geometry, logic, and combinatorics.

*Mathematical Analysis*focuses on advanced real function theory, complex analysis, functional analysis, ordinary and partial differential equations.

*Numerical and Computational Mathematics*deals with design, analysis, algorithmization, and implementation of methods for computer processing of mathematical models.

*Mathematical Modelling in Physics and Technology*is an interdisciplinary field connecting mathematical analysis, numerical mathematics, and physics to develop and apply mathematical models of natural phenomena.

*Probability, Mathematical Statistics and Econometrics*offers advanced courses in probability theory, optimization, statistical modelling, and random processes, and applies problem-solving methods from economics, technology, natural sciences, and informatics.

*Financial and Insurance Mathematics*focuses on mathematical methods for finance, life and non-life insurance, and financial management.

*Mathematics for Information Technologies*is an interdisciplinary program focusing on mathematical, algorithmic and numerical foundations of modern information technologies, with applications in information security, computer vision, information processing etc.

A complete description (obligatory and elective courses) of the Master of Mathematics is here.

Graduates find employment not only at universities and research institutes, but also in banks, financial and insurance companies, the pharmaceutical industry, the software industry, and marketing and telecommunication companies.

**PhD Degree Programmes**

- Mathematics
- Computer Science (Informatics)
- Physics

**Study Programme Mathematics**

- Algebra, Theory of Numbers and Mathematical Logic
- Geometry, Topology, Global Analysis and General Structures
- Mathematical Analysis
- Probability and Mathematical Statistics
- Scientific and Technical Calculations
- Financial and Insurance Mathematics
- General Questions of Mathematics and Information Science
- Probability and Statistics, Econometrics and Financial Mathematics

**Study Programme Computer Science**

- Theoretical Computer Science
- Software Systems
- Mathematical Linguistics
- Discrete Models and Algorithms
- Computer Graphics and Image Analysis

**Study Programme Physics**

- Theoretical Physics, Astronomy and Astrophysics
- Physics of Plasma and Ionized Media
- Physics of Condensed Matter and Materials Research
- Biophysics, Chemical and Macromolecular Physics
- Physics of Surfaces and Interfaces
- Quantum Optics and Optoelectronics
- Geophysics
- Meteorology and Climatology
- Subnuclear Physics
- Nuclear Physics
- Mathematical and Computer Modelling
- Physics Education and General Problems of Physics
- Physics of Nanostructures

**Semesters, Lectures and Exams**

**The academic year** is divided into two semesters — a winter
semester, starting in October, and a summer semester, starting in February. In
each semester, there are 13 weeks of teaching and an examination period of 5 weeks. The courses are mostly in the form of lectures and recitations. The
lectures cover the theoretical underpinnings of the subject, and there is time
for applications of the theory in the recitations. The schedule of the faculty
consists of 45-minute lessons with 5-minute breaks, and most of the lectures and
recitations are organized as 90-minute long blocks of two such lessons once or
twice a week. Attendance of lectures and recitations is usually not obligatory,
but is strongly recommended. Mastery of a subject is confirmed by course credit
and/or by an exam. Course credits (usually for recitations) are awarded at the
end of the semester. The conditions for obtaining a course credit differ
according to the nature of the course, from completing a test to programming an
application or writing a survey. **Exams** are taken during the
5-week examination period and can be **oral** or
**written**.

**Want to know more?**

Check our admission procedure, read alumni testimonials, find out about living in Prague or download our Study Guide which contains a detailed description of our programmes.

**Other study options at Charles University in Prague**

Do you want to study in the Czech Republic, but you find the Czech language to be really tricky? If you are interested in economics, sociology, politics or territorial studies, the Faculty of Social Sciences is a great option for you! One bachelor’s degree programme and thirteen master’s degree programmes are taught in English, fully accredited by the Czech Ministry of Education. Find more information about the programmes, admissions and student life at http://fsveng.fsv.cuni.cz.