Języki formalne i teoria obliczeń 2004
Środa 9:15-11:00 C-11/P.01 wykład
Czwartek 7:30-9:00 C-11/P.01 wykład
Czwartek 9:15-11:00 C4/35 ćwiczenia
Czwartek 11:15-13:00 C4/35 ćwiczenia - Wojtek Rutkowski
Egzamin: poniedziałek 7.02.2005 godz. 15:00 D-1/301
Egzamin poprawkowy: wtorek 15.02.2005 godz. 17:00 B-5/25
Na egzaminie można posiadać wyraźnie podpisaną ściągę formatu A4.
Egzamin poprawkowy zdają tylko osoby które nie zaliczyły właściwego egzaminu
i można na nim uzyskać co najwyżej ocenę 3.0.
Literatura
- J.E. Hopcroft, J.D. Ullman, Wprowadzenie do teorii automatów, języków
i obliczeń, WNT, Warszawa 1994 (ISBN 83-01-11298-0)
- Ch.H. Papadimitriou, Złożoność obliczeniowa, WNT, Warszawa 2002
(ISBN 83-204-2659-6)
- A. Kościelski, Teoria obliczeń. Wykłady z matematycznych podstaw
informatyki, Wydawnictwo Uniwersytetu Wrocławskiego, 1997
(ISBN 83-229-1696-5)
- T.H. Cormen, Ch.E. Leiserson, R.L. Rivest, Wprowadzenie do algorytmów,
WNT, Warszawa 1997 (ISBN 83-204-2144-6)
- H. Barendregt, E. Barendsen, Introduction to Lambda Calculus, 1994
Listy zadań
- Lista nr 1 na 7 października
- Lista nr 2 na 14 października
- Lista nr 3 na 21 października
- Lista nr 4 na 28 października
- Lista nr 5 na 4 listopada
- Lista nr 6 na 18 listopada
- Lista nr 7 na 25 listopada
- Lista nr 8 na 2 grudnia
- Lista nr 9 na 9 grudnia
- Lista nr 10 na 16 grudnia
- Lista nr 11 na 6 stycznia
- Lista nr 12 na 13 stycznia
- Lista nr 13 na 20 stycznia
- Lista nr 14 na 25 stycznia
Zasady zaliczenia ćwiczeń
- Zasadniczym celem ćwiczeń jest ułatwienie studentom samodzielnej pracy
nad
opanowaniem materiału w czasie całego semestru. Ocena z ćwiczeń jest oceną
jakości i intensywności pracy studenta w czasie semestru.
- Wykładowca ogłasza z odpowiednim wyprzedzeniem listy zadań do
samodzielnego rozwiązania przed zajęciami. Na ćwiczeniach studenci
prezentują rozwiązania zadań. W trakcie
rozwiązywania wyjaśniane są wątpliwości dotyczące rozwiązania oraz
przedstawiane alternatywne rozwiązania.
- Podstawą do wystawienia oceny są wyniki krótkich sprawdzianów.
Sprawdziany będą polegały na rozwiązaniu jednego zadania i punktowane
od 0 do 5. Materiałem obowiązującym na sprawdzianie są 3 poprzednie listy.
Sprawdziany przeprowadzane są bez uprzedniej zapowiedzi. Nieobecność
na sprawdzianie daje 0. Jeden, najsłabszy sprawdzian studenta w semestrze
zostanie anulowany.
- Podstawą do oceny na zaliczenie jest średnia ze sprawdzianów
zaokrąglona w górę do najbliższej oceny. Ocena może być podwyższona
przez prowadzącego w zależności od aktywności studenta na ćwiczeniach.
- Na każde ćwiczenia jest przygotowywana osobna lista zadań, ogłaszana
co najmniej na trzy dni przed zajęciami. Na ćwiczeniach rozwiązywane są
wybrane zadania z tej listy. Decyzję odnośnie wyboru zadań do rozwiązania
podejmuje prowadzący.
- Dodatkowym warunkiem zaliczenia jest oddanie przez studenta w formie
pisemnej (PDF) wyznaczonych zadań zrobionych na ćwiczeniach. Oddawane
zadanie powinno być rozwiązane dokładnie, w sposób formalny i przejrzysty.
Zadanie wyznacza prowadzący ćwiczenia.
- Ocena końcowa nie podlega poprawianiu po zakończeniu semestru.
Tematy wykładów (w przybliżeniu)
- Automaty skończone. Wyrażenia i języki regularne. (6-10-2004)
- Równoważność deterministycznych i niedeterministycznych automatów
skończonych i wyrażeń regularnych. (7-10-2004)
- Własności klasy języków regularnych. Lemat o pompowaniu.
(13-10-2004)
- Twierdzenie Myhill-Nerode. Minimalizacja automatów. (14-10-2004)
- Algorytm minimalizacji dla DFA. Dwukierunkowy DFA. (20-10-2004)
- Gramatyki bezkontekstowe. (21-10-2004)
- Usuwanie symboli bezużytecznych, epsilon-produkcji i produkcji jednostkowych (27-10-2004)
- Postacie normalne: Chomsky'ego i Greibach'a. (28-10-2004)
- Automaty ze stosem (DFA). Równoważność DFA i gramatyk bezkontekstowych. (3-11-2004)
- Lemat o pompowaniu dla języków bezkontekstowych. Lemat Ogdena. (4-11-2004)
- Własności języków bezkontekstowych. (10-11-2004)
- Maszyna Turinga. Języki rekurencyjne i rekurencyjnie przeliczalne. (17-11-2004)
- Wielotaśmowe TM. Niedeterministyczne TM.Uniwersalna maszyna Turinga. (18-11-2004)
- Problem stopu. Nierozstrzygalność problemu stopu. (24-11-2004)
- Twierdzenie Rice'a. Teza Church'a. Maszyna licznikowa. (25-11-2004)
- Maszyna RAM. (1-12-2004)
- Równoważność maszyny RAM i maszyn Turinga jako modeli obliczeń. (2-12-2004)
- Funkcje rekurencyjne na liczbach naturalnych. (8-12-2004)
- Lemat Godla o kodowaniu. (9-12-2004)
- Równoważność modelu funkcji rekurencyjnych i maszyn Turinga. (15-12-2004)
- Inny sposób definiowania funkcji rekurencyjnych - rekursja prosta. (16-12-2004)
- Problem odpowiedniości Posta. Hierarcha Chomsky'ego. (22-12-2004)
- Podstawy lambda rachunku. (5-01-2005)
- Liczebniki Churcha. Równoważność z innymi modelami obliczeń. (6-01-2005)
- Złożoność obliczeniowa. Relacje między klasami złożoności. (12-01-2005)
- Twierdzenia o hierarchii. Metoda osiągalności. (13-01-2005)
- NP-zupełność. Twierdzenie Cook'a. (19-01-2005)
- PSPACE-zupełność. (20-01-2005)