Plan cwiczen
Transkrypt
Plan cwiczen
Konspekt zajęć z Teorii algorytmów i obliczeń: Zajęcia 1: Języki przekątniowy i uniwersalny, języki kodów maszyn Turinga akceptujących zbiór pusty i niepusty, języki kodów maszyn Turinga akceptujących język rekurencyjny i nierekurencyjny, ich miejsce w hierarchii Chomsky’ego z dowodami Zajęcia 2: Maszyna Turinga z wyrocznią, hierarchia pustości, równoważność S1 i S2 z problemami akceptacji słowa przez maszynę Turinga (dowód) i akceptacji wszystkich słów Zajęcia 3: Definicja maszyny RAM, jej równoważność z maszynami Turinga, implementacja prostych algorytmów na maszynach RAM Zajęcia 4: Klasa funkcji pierwotnie rekursywnych, całkowitość i obliczalność przez maszyny Turinga funkcji pierwotnie rekursywnych z dowodami, przykłady funkcji pierwotnie rekursywnych z dowodami Zajęcia 5: Funkcja Ackermana, definicja, idea dowodu: funkcja Ackermana nie jest pierwotnie rekursywna i jest rekurencyjna Zajęcia 6: Klasy funkcji rekurencyjnych, definicje, hierarchia, uzasadnienia inkluzji Zajęcia 7: Równoważność klas funkcji rekurencyjnych i klasy maszyn Turinga, idea dowodu równoważności odpowiednich klas Zajęcia 8: Transformacja wielomianowa problemów decyzyjnych i języków, definicje, przechodniość, podział klas wszystkich problemów oraz podział klasy problemów rozstrzygalnych, definicje klas P, NP, CoNP, NPC Zajęcia 9: NP-zupełność, przykłady problemów, twierdzenie Cook’a z dowodem Zajęcia 10: Klasy problemów ze względu na złożoność pamięciową: Pspace, NP-space, twierdzenie Savitcha z dowodem Zajęcia 11: Próby odpowiedzi na pytanie czy P=NP?, transformacja wielomianowa języków, transformacja quaziliniowa, klasy problemów NQL i NQLC oraz PLogSpace i NPLogSpace