====== CMP 601: Algorithms and Theory of Computation (2022/1) ====== //Somebody once asked John Hopcroft about the problem of P and NP. He answered: "On Tuesdays, I try to prove that they are equal, on the rest of the week - that they are different." I believe that he has reduced the time to try to show that they are equal to Sunday afternoons.// ===== General information ===== **Professors:** Álvaro Freitas Moreira, Marcus Ritt\\ **Total hours:** 60 h (in 30 lectures of 2h)\\ **Credits:** 4\\ **Summary:** Theory of Computation: Models of computation. Limitation of formal systems. Complexity theory. Algorithms: Analysis of algorithms. Main techniques for designing algorithms.\\ **Time and room:** Tue/Thu 10.30, 108/43413.\\ **Consultation hours:** By appointment.\\ **Details:** On the [[http://www.inf.ufrgs.br/ppgc/disciplinas/lista-de-disciplinas/cmp601|homepage of the course at PPGC]].\\ **Note:** The course will be split during the semester into two courses. ===== News ===== * First lecture: Tue, Jun 14. ===== Results ===== ===== Additional material ===== * Homepage of CMP155 (Análise e Desenvolvimento de Algoritmos) in [[:cmp155:2011-1|2011/1]], [[:cmp155:2010-1|2010/1]], [[:cmp155:2008-1|2008/1]] and [[:cmp155:2007-1|2007/1]]. * Homepage of CMP601 in [[:cmp601:2020-2|2020/2]], [[:cmp601:2020-1|2020/1]], [[:cmp601:2019-1|2019/2]], [[:cmp601:2018-1|2018/1]], [[:cmp601:2016-2|2016/2]], and [[:cmp601:2015-1|2015/1]]. * {{:cmp155:notas-11959.pdf|Lecture notes}} (in Portuguese, updated Junho 2022). ==== Lectures ==== ^ No. ^ Date ^ Topics ^ Chap. in\\ notes ^ Exercises ^ Solutions ^ Reading ^ | | | ** Algorithms ** | | | | | | 1 | 14/06 | Administrativa. Introduction. | 1 | | | 1.1 | | | 16/06 | //Corpus Cristi// | | | | | | 2 | 21/06 | Basics of analysis and representative problems. | | | | 1.2 | | 3 | 23/06 | Basics of analysis and representative problems. | 2 | | | 2 | | | 24/06 | Qualification exam algorithms (8.30, AUD-0) | | {{eqa20221.pdf|E}} | {{seqa20221.pdf|S}} | | | | 24/06 | Qualification exam theory (13.30, 109, 43413) | | | | | | 4 | 28/06 | Graph algorithms 1. | | | | 3.[123],4.4 | | 5 | 30/06 | Graph algorithms 2. | | | | 3.[46] | | 6 | 05/07 | Graph algorithms 3. | | {{q0120221.pdf|E1}} | {{sq0120221.pdf|S1}} | 3.5 | | 7 | 07/07 | Greedy algorithms 1. | 4 | | | 4.[12] | | 8 | 12/07 | Greedy algorithms 2. | 4 | | | 4.5 | | 9 | 14/07 | Greedy algorithms 3. | 4 | | | 4.9 | | 10 | 19/07 | Divide-and-conquer algorithms 1. | 5 | {{q0220221.pdf|E2}} | {{sq0220221.pdf|S2}} | 5.[123] | | 11 | 21/07 | Divide-and-conquer algorithms 2. | 5 | | | 5.[45] | | 12 | 26/07 | Divide-and-conquer algorithms 3. | 5 | | | 5.6 | | 13 | 28/07 | Dynamic programming 1. | 6 | {{q0320221.pdf|E3}} | {{sq0320221.pdf|S3}} | 6.[12] | | 14 | 02/08 | Dynamic programming 2. | 6 | | | 6.[45] | | 15 | 04/08 | Dynamic programming 3. | 6 | {{q0420221.pdf|E4}} | {{sq0420221.pdf|S4}} | 6.[67] | | | | ** Theory of computation ** | | | | | | 16 | 09/08 | Theory 1: Introduction -- Noncomputability | | | | | | 17 | 11/08 | Theory 2: Introduction -- Intractability | | | | | | 18 | 16/08 | Theory 3: Introduction -- NP-complete problems | | | | | | 19 | 18/08 | Theory 4: Turing Machines | | | | | | 20 | 23/08 | Theory 5: Undecidability | | | | | | 21 | 25/08 | Theory 6: Reducibility | | | | | | 22 | 30/08 | Theory 7: Time Complexity I | | | | | | 23 | 01/09 | Theory 8: Time Complexity II | | | | | | 24 | 06/09 | Theory 9: Time Complexity III | | | | | | 25 | 08/09 | Theory 10: Time Complexity IV | | | | | | 26 | 13/09 | Theory 11: Exercises | | | | | | 27 | 15/09 | Theory 12: Space Complexity I | | | | | | | 20/09 | //Revolução Farroupilha// | | | | | | 28 | 22/09 | Theory 13: Intractability | | | | | | | 27/09 | //Semana Acadêmica// | | | | | | 29/09 | //Semana Acadêmica// | | | | | 29 | 04/10 | Theory 14: Exercises | | | | | | 30 | 06/10 | Theory 15: Exercises | | | | | | | 20/10 | Official end of lecture period 2022/2. | | | | | ==== Evaluation ==== See the [[http://www.inf.ufrgs.br/ppgc/disciplinas/lista-de-disciplinas/cmp601/|homepage of the course at PPGC]]. ==== Material ==== * Template ([[http://www.inf.ufrgs.br/~mrpritt/ca/answers.tex|LaTeX]],[[http://www.inf.ufrgs.br/~mrpritt/ca/answers.pdf|PDF]]) for exercise lists. ==== Bibliography ==== Locations of visitors to this page