Course Catalog 2014-2015
Basic

Basic Pori International Postgraduate Open University

|Degrees|     |Study blocks|     |Courses|    

Opinto-opas 2014-2015

Theoretical Computer Science, 30 cr

Type of the study block

Advanced Studies

Contact

Tapio Elomaa, Antti Valmari

Learning Outcomes

- The student knows basic results in advanced algorithms and theoretical computer science.
- He has a good background for postgraduate studies on theoretical computer science and its applications.

Prerequisites

Study block Credit points Mandatory/Advisable
Matematiikka 25 cr Advisable
Ohjelmistotekniikan sivuaine 25 cr Advisable

The student must have basic knowledge on programming, basic course on algorithms and data structures, and algorithm mathematics. For instance, the following courses suffice: MAT-02650 Algoritmimatematiikka and either TIE-20106 Data Structures and Algorithms or MAT-71000 Tieto ja laskenta. ( Mandatory )

Content

Compulsory courses

Course Credit points Class
MAT-72006 Advanced Algorithms and Data Structures 7 cr IV  
MAT-73006 Theoretical Computer Science 7 cr IV  
Total 14 cr  

Optional Compulsory Courses

Must be selected at least 7 credits of courses

Course Credit points Class
MAT-72306 Randomized Algorithms 4 cr IV  
MAT-72606 Approximation Algorithms 4 cr IV  
MAT-74006 Concurrency Theory 7 cr IV  
MAT-74506 Model Checking and Petri Nets 7 cr IV  
MAT-75006 Artificial Intelligence 7 cr IV  

Complementary Courses

Should be completed to the minimum study module extent of 30 ETCS

Course Credit points
MAT-60056 Algebra 5 cr
MAT-60556 Mathematical Logic 5 cr
MAT-62756 Graph Theory 7 cr
MAT-63006 Information Theory 7 cr
MAT-63256 Mathematical Cryptology 7 cr
MAT-70906 Software Science Project 4 cr
MAT-71506 Program Verification 5 cr
MAT-71800 Julkaiseminen LaTeX-järjestelmällä 2 cr
TIE-02500 Rinnakkaisuus 5 cr
TIE-20306 Principles of Programming Languages 5 cr
TIE-22100 Johdatus tietokantoihin 4 cr

Additional information

This module concentrates on the mathematical theory of computation and its application to the design of efficient and reliable sequential and concurrent programs.

Last modified03.02.2015