Computability and Definability, 236331

Fall 2015

Last update October 28, 2015
Previous update: 2012
Course homepage:
Last given: Spring Semester 2012
Lecturer: Prof. J.A. Makowsky (Taub 628, janos@cs, 4358)
Reception hour: Sunday 14:30-16:00, Monday 16:30-18:00 or by appointment via e-mail.
Tutorials: Prof. J.A. Makowsky
Lecture: Wednesday, 9.30-11.30
Tirgul: Wednesday 11:30-12:30
Place: TAUB 701
Announcements and lectures of 2015-16,
Previous announcements (also useful for NOW) :
Announcements and lectures of 2008,
Announcements and lectures of 2006,

General View

Definability deals with the expressive power of description languages which are used in program specification, databases and axiomatic mathematics. These languages include Regular Expressions, First Order Logic, Relational Algebra, Second Order Logic and various Temporal and Modal Logics.
Computability deals with computations and the resources needed to execute them in various models of computations. These include Finite Automata, Turing Machines, Register Machines, and the like.
The course deals with the interplay between definability in various descriptive languages and computability with various computing devices. It brings together theoretical aspects of Database Theory, Computability Theory, Complexity Theory and Logic.

Why should one take this course?

For the undergraduate and graduate students alike, the course lays the groundwork for a better understanding of the foundations of Computer Science. The course will also bring the student into a field of active research and we shall suggest several topics for further M.Sc. and Ph.D. work.

Prerequisites and Format:

Logic and Sets for CS (234293) , Computability (236343);
2 hours and 1 hour exercices; project; 3 points;
Graduates and undergraduates.


Students are required to do some homework and a project, which consists in summarizing material of the course and additional articles and bring them into presentable form. The option of a take--home exam remains open.


Web master: