
T79.1001 Introduction to Theoretical Computer Science T (4 cr)
Autumn 2005
This introductory course on the theory of computation covers
the basic aspects of finite automata and regular languages,
contextfree grammars and pushdown automata, Turing machines
and computability theory.
The course T79.1001 replaces the earlier course
T79.148 Introduction to Theoretical Computer Science
.
[Current]
[General]
[Lectures]
[Tutorials]
[Exams]
[Material]
[Feedback]
[Links]
Previous years (course T79.148):
[Spring 2005]
[Autumn 2004]
[Spring 2004]
[Autumn 2003]
[Spring 2003]
[Autumn 2002]
[Spring 2002]
[Spring 2001]
[Spring 2000]
[Spring 1999]
[Spring 1998]
 The departmental course feedback questionnaires for courses
in autumn 2005 are accessible
here from Fri 9 Dec until Mon 2 Jan. Please reply; you will
earn yet another bonus point (cf. below).
 The final exam for the course takes place on Wed 14 Dec.
Registration for the exam is open in
TOPI until
Fri 9 Dec, 6 p.m.
 As a general requirement, all compulsory Regis
assignments must have been completed before participating in
any exam of the course. Exam papers for students with
outstanding Regis assignments will not be graded. Really!
 Recommended reading for Finnish students:
Ajankäyttötutkimuksen satoa eli miten saan ystäviä,
menestystä ja hyvän arvosanan tietojenkäsittelyteorian
perusteista by Harri Haanpää
(a statistical analysis of factors affecting course
performance in Spring 2004, in Finnish).
 The course consists of:
 lectures (2 h per week, in Finnish)
 tutorials (1 h per week, one group in English)
 an examination
 Registration for the course is by
TOPI.
You must register in
order to take the course, even if you were
not intending to attend the lectures or the
tutorials. (Registrations are needed for bookkeeping
purposes, specifically for generating your set of
computerised home assignments; see below.)
One of the tutorial groups (indicated below)
will be given in English and the rest in Finnish.
Registration for the tutorials opens
Mon 12 Sep at 9:00 and closes Fri 23 Sep at 16:00.
 In order to pass the course you have to:
 complete four compulsory sets of home assignments, and
 get a passing grade on the exam, as augmented by
credit earned from the tutorials.
The compulsory assignments are individually computergenerated
for each student, and are submitted over the network.
Completing these assignments is a
mandatory prerequisite
for participating in the exam.
For more details, see the computerised assignments
info page.
 Newsgroup:
opinnot.tik.tkt
Lectures by
Pekka Orponen on
Thursdays 2 p.m.  4 p.m. in Lecture Hall T1 of the Computer Science
building. The first lecture is on Thu 15 Sep.
The lectures are in Finnish, and the slides will appear here
after each lecture.
The contents will likely be very close to those of course T79.148
in previous years,
e.g. Spring 2005.
English translations of the lecture slides from Spring 2004 are
available here.
Lecture schedule (tentative):
Week  Date  Topic 
Sipser  LewisPapadimitriou 
Lecture slides (in Finnish) 
37.  Sep 15 
Review of basic mathematics (functions, relations, induction). 
Pp. 113, 2325  1.11.3, 1.5 
PostScript PDF 
38.  Sep 22 
Alphabets, strings and languages. Finite automata. 
Pp. 1314, 16, 3143  1.7, 2.1 
PostScript PDF 
39.  Sep 29 
Automata minimisation. Nondeterministic finite automata. 
Pp. 4758, 275  2.2, 2.5 
PostScript PDF 
40.  Oct 6 
Regular expressions and finite automata. 
Pp. 5876  1.8, 2.3 
PostScript PDF 
41.  Oct 13 
Contextfree grammars and languages.
Parse trees and derivations. 
Pp. 9198  3.1, 3.2 
PostScript PDF 
42.  Oct 20 
Regular grammars.
Recursivedescent parsing of LL(1) grammars. 
  3.1.5, 3.7 (partly) 
PostScript PDF 
43.  Oct 27 
Exam week 
44.  Nov 3 
Chomsky normal form and the
CYK parsing algorithm.
Pushdown automata. 
Pp. 98114, 240241  3.3, 3.4, 3.6 
PostScript PDF 
45.  Nov 10 
Regular and contextfree pumping lemmata.
Countable and uncountable sets.
The halting problem. 
Pp. 7783, 115119, 161164  1.4, 2.4, 3.5 
PostScript PDF 
46.  Nov 17 
Turing machines: standard, multitrack and multitape.
Nondeterministic Turing machines. 
Pp. 125140  4.1, 4.3, 4.5 
PostScript PDF 
47.  Nov 24 
Recursive and recursively enumerable languages.
Turing machine encoding and universal Turing machines. 
142143,  4.2, 5.1, 5.2, 5.7 
PostScript PDF 
48.  Dec 1 
Undecidability. Rice's theorem. 
159168, 171174, 196  5.3, 5.4 
PostScript PDF 
49.  Dec 8 
General and contextsensitive grammars.
Linear bounded automata. The Chomsky hierarchy. 
  4.6 p. 271 
PostScript PDF 
Tutorials
The tutorials start the week after the first lecture.
The Tuesday 1617 tutorial session is given in English, the others are in Finnish. The head assistant
of the course is
Tommi Syrjänen.
Day  Time 
Location  Assistant 
Mon  1618  T4  Vesa Ojala  (Advice session: no registration, no credit. First period only.) 
Tue  1213  Y228  Antti Rusanen 
 1314  Y228  Antti Rusanen 
 1617  Y405  Tommi Syrjänen  (In English) 
 1718  Y405  Tommi Syrjänen 
Wed  1213  Y313  Antti Hyvärinen 
 1314  Y313  Antti Hyvärinen 
 1415  U264  Vesa Ojala 
 1516  U264  Vesa Ojala 
TOPI registration
for the tutorials opens
Mon 12 Sep at 9:00 and closes Fri 23 Sep at 16:00.
You must register in order to
take the course, even if you were not intending to
physically attend the tutorials. (Registrations are
needed for bookkeeping purposes, specifically for
generating your set of computerised home assignments;
see below.)
In the tutorials, there will be three home assignments and
two or three demonstration problems each week. The tutorials
are not compulsory, but bonus exam points (max 6) will be awarded
for doing the home assignments and marking them as done at the
tutorial sessions. The grading scheme for the home assignments
is as follows:
Problems solved  Bonus points 
5  1 
10  2 
15  3 
20  4 
25  5 
30  6 
The demonstration problems are likely to be 90% the same as
in the previous instalment of the course T79.148,
and are discussed at the tutorials to the extent that time permits.
In addition to the voluntary tutorials there are
three compulsory computergenerated "Regis" problem sets.
(See the info page.)
Tutorial problems: Electronic copies downloadable here
each week. Paper copies available at the
lectures, and from the rack outside the theory lab office
(TB336).
Solutions for the demonstration problems are provided here
as the course progresses.
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
 tehtävät (pdf)
ratkaisut (pdf)
problems (pdf)
solutions (pdf)
Tutorial
scores.
Validity of tutorial and Regis problems and their bonus points.
Exams for the course are for the time being scheduled for examination
periods 1, 2, 3, 5 and 6 of the academic year (August, October, December,
March, May). As long as that schedule holds:

The Regis problems generated in a given autumn / spring semester
will be valid until the Mar / Oct exam in the following semester.

Fully completed Regis assignments, and any bonus points earned
in a given autumn / spring semester will
be valid until the Oct / Mar exam in the following year.
Examinations and Grading
In general, exams for the course are scheduled for March,
May, August, October, and December of each year.
The main course exam in Autumn 2005 is
scheduled for Wed 14 December.
There is also an exam of the previous version of
the course, T79.148, scheduled for Thu 27 October.
To participate in an exam, you must first complete your
personal computeraided Regis exercises. See the
exam requirements.
Remember also to register
for the exam.
Grading: Exam max 60 points, tutorials max 6 points.
Min passing grade approx. 30 points (tolerance 4 p),
highest grade (5) approx. 54 points.
In the case of "close call" failures (at most 2 points
below passing) despite serious study effort
(at least 4 tutorial bonus points), there is a possibility
of getting a passing grade by solving additional tutorial
problems. To discuss this option, please contact the
lecturer after the exam has been graded.
Bonus points earned from the tutorials are added directly
to the exam points, and may help to change the exam grade
from failing to passing. Bonus points earned from Regis/Stratum
assignments completed on time (see the info page) are only added
afterwards to a passing exam grade, and may thus help to increase
the grade, but not pass the course. Note that the Regis assignments
must in any case be completed before the exam, and extra points
are awarded only for completion by the bonus deadline of
October 27, 9 a.m.
Material
 Lecture Notes:
Typeset lecture notes (in Finnish) distributed by Edita.
 Textbook(s):
The recommended English textbook for the course is
M. Sipser, Introduction to the Theory of Computation
(PWS Publishing 1997).
The former recommended
text, H. Lewis and C. Papadimitriou,
Elements of the Theory of Computation
(Prentice Hall 1998) is being phased out.
Finnish students do not need to purchase the textbook,
since the course follows closely the lecture notes.
However the Sipser book is very readerfriendly
yet insightful, so reading it on the side will help
in following the course.
 Supporting material:
 Demonstration problems and their solutions from the tutorials.
Material from Autumn 2004 is bundled together with the
lecture notes; updates available as the course progresses.
 Some of the material will be available also via this web page.
Please avoid unnecessary printing of this material
to save printers, paper and thus nature !!!
 A short introduction to set theory and relations
(by Tommi Syrjänen, in Finnish, ps/
pdf).
 An example on determinising a finitestate automaton
(by Heikki Tauriainen, in Finnish, ps/
pdf.
 An introduction to pumping lemmata and their uses
(by Tommi Syrjänen, in Finnish, ps/
pdf.
 Solutions for one old examination (25.10.2003), in Finnish,
ps/
pdf.
 Examination requirements are available.
 Mallitentti vm 2001
(ps/
pdf),
vastaukset
(ps/
pdf).
A sample examination from 2001
(ps/
pdf).
 Tentti/exam 11.2.2002:
tehtävät
(pdf),
problems
(pdf),
tulokset/results.
 Tentti/exam 8.5.2002:
tehtävät
(pdf),
problems
(pdf),
tulokset/results.
 Tentti/exam 12.8.2002:
tehtävät
(pdf),
problems
(pdf),
tulokset/results.
 Tentti/exam 28.10.2002:
tehtävät
(pdf),
problems
(pdf),
tulokset/results.
 Tentti/exam 17.12.2002:
tehtävät
(pdf),
problems
(pdf),
tulokset/results.
 Tentti/exam 3.2.2003:
tehtävät
(pdf),
problems
(pdf),
tulokset/results.
 Tentti/exam 7.5.2003:
tehtävät
(pdf),
problems
(pdf),
tulokset/results.
 Tentti/exam 18.8.2003:
tehtävät
(pdf),
problems
(pdf).
tulokset/results.
 Tentti/exam 25.10.2003:
tehtävät
(pdf),
problems
(pdf).
tulokset/results
ratkaisut
(pdf).
 Tentti/exam 19.12.2003:
tehtävät
(pdf),
problems
(pdf).
tulokset/results.
 Tentti/exam 16.2.2004:
tehtävät
(pdf),
problems
(pdf).
tulokset/results.
 Tentti/exam 13.5.2004:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 23.8.2004:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 23.10.2004:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 20.12.2004:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 14.02.2005:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 17.05.2005:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 22.08.2005:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 27.10.2005:
tehtävät (pdf),
problems (pdf).
tulokset/results.
 Tentti/exam 14.12.2005:
tehtävät (pdf),
problems (pdf).
tulokset/results.
Feedback
Please provide feedback on the course via the DCSE department's
course feedback system. Filling in the feedback form is
rewarded by one bonus exam point, used to increase any passing
grade earned from the course.
The feedback system will open on Fri 21 Oct and close on Fri 4 Nov.
Summaries of feedback from previous courses:
Autumn 2003
Spring 2003
Autumn 2002,
Spring 2002.
Links
Some fun links that are related to the course contents, but
not part of the official course material.
[TCS main]
[Contact Info]
[Personnel]
[Research]
[Publications]
[Software]
[Studies]
[News Archive]
[Links]
Latest update: 19 January 2006.
Pekka Orponen
