Języki formalne i złożoność obliczeniowa lato 2015/16

Język wykładowy Polski
Opiekun Jerzy Marcinkowski
Liczba godzin 60 (wyk.) 30 (ćw.) 30 (rep.)
Rodzaj Obowiązkowy 3
ECTS 9
Polecany dla I roku Nie
Egzamin Tak

Opis przedmiotu:

******Program przedmiotu.** Program przedmiotu obejmuje zagadnienia związane z teorią językow formalnych (wykłady A1 - A8) w zakresie istotnym z punktu widzenia wykształcenia informatycznego, a także dostatecznym dla stworzenia zasobow naturalnych przykładow dla części B i C. Następnie przechodzi się do zagadnień związanych z pojęciami rozstrzygalności i nierozstrzygalności (wykłady R1 -- R8). Ostatnia część kursu poświęcona jest wybranym, elementarnym zagadnieniom złożoności obliczeniowej. A1. Deterministyczny automat skończony. Języki regularne. Lemat o pompowaniu. Twierdzenie o indeksie. A2. Niedeterminizm. Niedeterministyczny automat skończony. Determinizacja automatu. A3. Wyrażenia regularne. Rownoważność automatow skończonych i wyrażeń regularnych. Aspekty algorytmiczne: rozstrzyganie rownoważności wyrażeń regularnych jest możliwe ale zagadkowo czasochłonne. A4. Uwagi o automatach na obiektach innych niż słowa skończone: automaty na drzewach skończonych i na słowach nieskończonych. A5. Gramatyki bezkontekstowe. Przykłady. A6. Postać Chomsky'ego, lemat o pompowaniu i jego konsekwencje. A7. Automaty ze stosem. Postać Greibach gramatyk bezkontekstowych. Rownoważnośc gramatyk i automatow ze stosem. A8. Własności zamkniętości klasy językow bezkontekstowych. Niemożliwość determinizacji. R1. Zbiory rekurencyjne i rekurencyjnie przeliczalne. Funkcje rekurencyjne - częściowe i całkowite. Numeracja funkcji rekurencyjnych. Nierozstrzygalność problemu stopu. R2. Pojęcie redukcji. Twierdzenie Rice'a. Uwagi o implikacjach tw. Rice'a dla możliwości automatycznej weryfikacji programow. R3. Maszyna Turinga. Teza Churcha. R4. Nierozstrzygalność problemu słow dla semiprocesow Thuego. R5. Nierozstrzygalność problemu słow dla procesow Thuego (problemu słow w połgrupie). R6. Nierozstrzygalność problemu odpowiedniości Posta, i przykłady nierozstrzygalnych problemow dotyczących gramatyk. R7. Nierozstrzygalność teorii pierwszego rzędu liczb naturalnych z dodawaniem i mnożeniem (ewentualnie: z dodawaniem, mnożeniem i potęgowaniem). Uwagi o niemożliwości zaksjomatyzowania arytmetyki. Uwagi o dziesiątym problemie Hilberta. R8. Nierozstrzygalność rachunku predykatow pierwszego rzędu. C1. Klasa PTIME i PSPACE. Redukcje wielomianowe. Wielomianowa rownoważność 3SAT i 3COL. C2. Niedeterminizm i klasa NP. Przykłady. Przykłady językow z klasy co-NP, oraz z przecięcia NP i co-NP. Charakteryzacja NP jako klasy językow bedących projekcjami językow z P. C3. NP zupełność. Twierdzenie Cook'a. Więcej przykładow problemow NP- zupełnych. Uwagi o SAT-solverach. C4. PSPACE. Tw. Savitcha. C5. Problemy PSPACE-zupełne: QBF i totalność wyrażeń regularnych. Wyjaśnienie zagadki z wykładu A3. C6. Funkcje jednostronne. Uwagi o teoriozłożonościowych założeniach kryptografii z kluczem publicznym. C7. Słaba wersja twierdzenia o hierarchii czasowej: rożność EXPTIME i PTIME. Uwagi o sposobach uogolnienia tej słabej wersji. C8. Problemy wymagające dowodliwie czasu wykładniczego. Pebble games. Totalność wyrażeń regularnych. C9. Inne niż PTIME formalizacje intuicji ''łatwej obliczalności''. Uwagi o klasie FPT. Zrandomizowane algorytmy testowania pierwszości. Uwagi o komputerach kwantowych. C10. Przykład problemu rozstrzygalnego ale nieelementarnego: totalność wyrażeń regularnych z dopełnieniem. **Literatura podstawowa** [1] Alfred V. Aho, John E. Hopcroft, Jeffrey D. Ullman, Projektowanie i analiza algorytmow komputerowych, PWN, Warszawa 1983. [2] Michael Sipser, Wprowadzenie do teorii obliczen, WNT Warszawa 2009. **Literatura dodatkowa** [3] Sanjeev Arora, Boaz Barak, Computational Complexity: A Modern Approach, Cambridge University Press, 2009. **Kompetencje.** Przedmiot dotyczy jednego z gł ownych obszarow teorii informatyki. Oczekuje się, że osoba ktora go zaliczy, będzie miała świadomość wszechobecności, w sytuacjach związanych z praktyką informatyczną/algorytmiczną, podstawowych omawianych pojęć i zagadnień (takich jak automat skończony, problem rozstrzygalności, problem złożoności obliczeniowej, złożoność wielomianowa i złożoność NP, redukcja) a także będzie się umiała w praktyce sprawnie tymi pojęciami posługiwać. Ta zdolność do praktycznego posługiwania się stanowi priorytet, dlatego program przedmiotu nie obejmuje wielu zaawansowanych i specjalistycznych zagadnień, skupiając się na możliwie głębokim rozumieniu zagadnień elementarnych. Ponadto forma, w jakiej prowadzi się ćwiczenia tablicowe (w ramach ktorych studenci prezentują na tablicy przygotowane przez siebie wcześniej rozwiązania zadań), przyczynia się do rozwoju kompetencji komunikacyjnych. **Wymagania:** Logika dla informatyk ow i Matematyka dyskretna

Wykłady

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jerzy Marcinkowski
wt 10:00-12:00 (s. 119) cz 14:00-16:00 (s. 119) 300 81 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Ćwiczenia

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jerzy Marcinkowski
cz 12:00-14:00 (s. 139) 22 22 0
Leszek Pacholski
cz 12:00-14:00 (s. 141) 22 21 0
Jakub Michaliszyn
cz 12:00-14:00 (s. 140) 22 20 0
Antoni Kościelski
cz 12:00-14:00 (s. 104) 22 10 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Repetytoria

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jakub Michaliszyn
śr 08:00-10:00 (s. 25) 300 45 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.


Konsultacje prowadzących:


Imię i nazwisko Pokój Konsultacje
Antoni Kościelski 311 sem. letni 2023/24: piątki, godz. 12.30-13.30, pokój 311, a także konsultacje zdalne za pośrednictwem MSTeams, w piątki, godz. 19.15 - 19.30 i dłużej, jeżeli będą zainteresowani. Zapraszam też na konsultacje zdalne lub w Instytucie w terminach uzgodnionych ze stosownym wyprzedzeniem np. pocztą elektroniczną.
Jakub Michaliszyn 305 Czwartek od 10
Leszek Pacholski 306 wtorek, 9:00 - 10:00 czwartek, 14:00 - 15:00
Jerzy Marcinkowski 345 Środa, od 2 po południu. Proszę się wcześniej umówić mailem.