Search for contacts, projects,
courses and publications

Theory of Computation

Description

The class introduces the fundamental mathematical properties of computer hardware, software, and certain applications thereof. It explores what can and cannot be solved on a computer, how quickly, with how much memory, and on which type of computational model. The class is divided into two major parts: computability theory and complexity theory. Computability theory deals primarily with the question of whether a problem is solvable at all on a computer. Complexity theory considers how efficiently the problem can be solved. Two major aspects are considered: time complexity and space complexity, which respectively address a problem of how many steps does it take to perform a computation, and how much memory is required to perform that computation. The subjects have strong connections with engineering practice. Practical exercises will involve experimentation with various tools.

 

 

REFERENCES

  • Introduction to the Theory of Computation; Michael Sipser, 2006, second edition (Required)

People

 

Hyvärinen A.

Course director

Asadi S.

Assistant

Marescotti M.

Assistant

Additional information

Semester
Spring
Academic year
2017-2018
ECTS
6
Education
Bachelor of Science in Informatics, Core course, Lecture, 3rd year