Theory of Computation Syllabus: II-2019
Theory of Computation Syllabus: II-2019
1. Introduction.
2. Finite automata.
3. Nondeterministic automata.
4. Regular operations.
5. Regular Expressions and Kleene’s Theorem.
6. Nonregular languages.
7. Context free grammars.
8. Chomsky normal form.
9. Pushdown automata.
10. Equivalences between grammars and automata.
11. Non-context free languages.
12. Turing Machines.
13. Universal Turing Machine.
14. Decidability.
15. The Halting Problem.
16. Reductions and uncomputability.
17. Computable problems and analysis of algorithms.
18. The class Ptime.
19. The class NPtime.
20. NP-completeness.
21. Ptime reductions.
1
22. Space complexity and Savitch Theorem.
23. Pspace completeness.
24. L, NL and co-NL.
25. Approximation algorithms.
29. Parallelism.
30. Crypto.
The reference book is the book of Sipser, which will be read in a linear fashion
along the semester [1]. Any of the published texts on the topic can be used as
supporting material, the book of Mertens and Moore is highly recommended
[2]. The evaluation will consist of short exams that will be applied every other
Tuesday, beginning with the second Tuesday.
References
[1] M. Sipser. Introduction to the Theory of Computation. PWS Publishing,
1997.
[2] S. Mertens, C. Moore. The Nature of Computation. Oxford University Press,
2017.