The purpose of the CS Track Core Course is to provide an overview of fundamental problems in computer science, and introduce to the students some key computational techniques that have broad applicability.
Course goals. The key goals of the course are as follows:
• Develop solid foundation about reasoning and thinking about computational problems.
• Algorithmic approaches for problems that are both fundamental in computer science and broad enough to be applicable to other disciplines of research.
• Build a community within the students through mini-projects.
Course structure. The course will be sub-divided into three segments. Each segment will focus on some key topic of computer science. Each segment will be of 4 weeks (8 lectures). The topic of each segment will be announced by the instructor in advance, and it will be ensured that it is a central topic in computer science as well as of broad relevance.

Target group: Students planning to affiliate to CS groups.

Prerequisites: The topics of the course will be theoretical in nature and suitable for students with background in
CS undergraduate, or students with strong background in mathematics with some exposure to CS.
The prerequisites for the course are as follows:
• Undergraduate CS: basic knowledge of algorithms and programming.
• Basic knowledge in probability theory.
• Basic knowledge of CS complexity theory.

Evaluation: Homeworks, project works.

Teaching format: Lectures and homework assignments, project works.

ECTS: 6 Year: 2023

Track segment(s):
Core curriculum

Teacher(s):
Dan Alistarh Vladimir Kolmogorov Krishnendu Chatterjee

Teaching assistant(s):
Ali Asadi Jeferson Zapata Eugenia Iofinova Mehrdad Karrabi

If you want to enroll to this course, please click: REGISTER