The University of Aberdeen
The Computing Science Department

Lectures

There are two lectures per week. Lecture slots are numbered L1, L2, etc. below.

The schedule below is tentative and incomplete; it will be modified during the course.

Background material that may help you digest the material in this course can be found here. The page includes a free copy of a textbook plus a number of lectures and exercises.

Lectures Topic Support Material
L1 Course Overview Slides: Powerpoint pdf
Introductory material
L1-2 Infinite sets; Cantor's diagonal argument; Russell's Paradox Slides: Powerpoint pdf
L4 Deterministic Finite Automata with and without output Slides: Powerpoint pdf
The functional model of programming
L5 The Lambda Calculus Slides: PDF
L6 Lambda Conversion Slides: PDF
A brief note about beta-conversion Powerpoint and PDF.
L7 Introduction to Haskell Slides: PDF
L8 Functions and Types Slides: PDF plus example in PPT
L9 Lists and Higher Order Functions Slides: PDF
L10 Functions and Infinite Data Slides: PDF plus example in PPT and
foldr and foldl compared .
L11 Example: generating prime numbers Slides: PDF and more about prime numbers.
Computability
L12 The notion of an algorithm Slides: ppt pdf
L13-14 Turing Machines Slides: ppt pdf
L15-17 The Halting Problem Slides: ppt pdf
L18 Notes about Logical consequence in Predicate Logic Slides: ppt pdf
L18 Monadic Predicate Logic is decidable Slides: ppt pdf
L19 Full Predicate Logic is undecidable Slides: ppt pdf