• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site
Bachelor 2022/2023

Theory of Computation

Category 'Best Course for Broadening Horizons and Diversity of Knowledge and Skills'
Area of studies: Applied Mathematics and Information Science
When: 3 year, 1, 2 module
Mode of studies: offline
Open to: students of one campus
Instructors: Bruno Frederik Bauwens, Alexey Talambutsa, Pavel Zakharov
Language: English
ECTS credits: 5
Contact hours: 60

Course Syllabus

Abstract

The aim of computational complexity is to classify computational problems by their difficulty. Here, difficulty, is measured by various resources needed to provide answers, such as computation time, space, randomness, circuits sizes. In particular, we train to distinguish polynomial time solvable problems and NP-hard problems. The latter are believed to require exponential time for worst case instances, and hence, in applications, one needs to restate the problem, use heuristics, or optimize exhaustive searches. The latter, is studied theoretically in the field of parameterized complexity
Learning Objectives

Learning Objectives

  • Know the parameterized complexity classes FPT, W[i], XP. Apply kernelization technique to obtain FPT-algorithms
  • Know famous streaming algorithms, such as SpaceSaving, CountMinSketch to find the most frequent element
  • Oracle computation and understand the diagonalization barrier in solving the P vs NP problem
  • Prove that PSPACE = NPSPACE and that the TQBF problem is PSPACE complete
  • Know the proof of the Cook-Levin theorem: 3SAT is NP-complete
Assessment Elements

Assessment Elements

  • non-blocking HW
  • non-blocking Colloquium
  • non-blocking Exam
Interim Assessment

Interim Assessment

  • 2022/2023 2nd module
    0.35 * HW + 0.3 * Exam + 0.35 * Colloquium

Authors

  • KALEDIN MAKSIM LVOVICH
  • BAUVENS Bruno Frederik L
  • Roslovtseva Kristina Olegovna