Free University of Bolzano/Bozen
Faculty of Computer Science - Master of Science in Computer Science

Theory of Computing

Lectures Notes A.A. 2005/2006

Prof. Diego Calvanese


Lectures

  1. Review of formal proof techniques [Part 0 (7 pages)]
  2. Basic notions about formal languages [Part 1 (2 pages)]
  3. Finite automata [Part 2 (18 pages)]
  4. Regular expressions [Part 3 (12 pages)]
  5. Properties of regular languages [Part 4 (15 pages)]
  6. Chomsky grammars and context free languages [Part 5 (16 pages)]
  7. Pushdown automata (optional) [Part 6 (9 pages)]
  8. Properties of context-free languages [Part 7 (27 pages)]
  9. Introduction to Turing Machines [Part 8 (25 pages)]
  10. Decidability and undecidability [Part 9 (15 pages)]
  11. Computational complexity [Part 10 (22 pages)]

Exercises

  1. Finite automata [Exercise 1]
  2. Finite automata and regular expressions [Exercise 2, notes by Andrea Calì]
  3. Regular languages [Exercise 3, notes by Andrea Calì],
    Pumping lemma for regular languages, decision problems for regular languages [Exercise 4, notes by Andrea Calì]
  4. Minimization of finite automata, formal grammars [Exercise 5, notes by Andrea Calì]
  5. Minimization of finite automata, formal grammars [Exercise 6, notes by Andrea Calì]
  6. Exercises for the midterm exam [Exercise 7]
  7. Exercises on closure properties of context-free languages and Turing Machines [Exercise 8, notes by Andrea Calì]
  8. Exercises on nondeterministic Turing Machines and extensions of Turing Machines [Exercise 9, notes by Andrea Calì]
  9. Exercises on recursive and recursively enumerable languages [Exercise 10]
  10. Exercises on computational complexity [Exercise 11]

Back to course home page
Last modified: Wednesday, 25-Jan-2006 0:57:12 CET