Języki, automaty i obliczenia: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
|||
Linia 42: | Linia 42: | ||
== Moduły == | == Moduły == | ||
# [[Języki, automaty i obliczenia/Wykład 1: Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne|Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne]] ([[Języki, automaty i obliczenia/Ćwiczenia 1: Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne|ćwiczenia]]) | # [[Języki, automaty i obliczenia/Wykład 1: Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne|Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne]] ([[Języki, automaty i obliczenia/Ćwiczenia 1: Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 2: | # [[Języki, automaty i obliczenia/Wykład 2: Gramatyka jako model obliczen. Hierarchia Chomsky'ego|Gramatyka jako model obliczen. Hierarchia Chomsky'ego]] ([[Języki, automaty i obliczenia/Ćwiczenia 2: Gramatyka jako model obliczen. Hierarchia Chomsky'ego|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 3: Automat skończenie stanowy|Automat skończenie stanowy]] ([[Języki, automaty i obliczenia/Ćwiczenia 3: Automat skończenie stanowy|ćwiczenia]]) | # [[Języki, automaty i obliczenia/Wykład 3: Automat skończenie stanowy|Automat skończenie stanowy]] ([[Języki, automaty i obliczenia/Ćwiczenia 3: Automat skończenie stanowy|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 4: Wyrażenia regularne | # [[Języki, automaty i obliczenia/Wykład 4: Wyrażenia regularne. Automat minimalny|Wyrażenia regularne. Automat minimalny]] ([[Języki, automaty i obliczenia/Ćwiczenia 4: Wyrażenia regularne. Automat minimalny|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 5: Algorytmy konstrukcji automatu minimalnego|Algorytmy konstrukcji automatu minimalnego]] ([[Języki, automaty i obliczenia/Ćwiczenia 5: Algorytmy konstrukcji automatu minimalnego|ćwiczenia]]) | # [[Języki, automaty i obliczenia/Wykład 5: Algorytmy konstrukcji automatu minimalnego|Algorytmy konstrukcji automatu minimalnego]] ([[Języki, automaty i obliczenia/Ćwiczenia 5: Algorytmy konstrukcji automatu minimalnego|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 6: Automat niedeterministyczny | # [[Języki, automaty i obliczenia/Wykład 6: Automat niedeterministyczny. Lemat o pompowaniu|Automat niedeterministyczny. Lemat o pompowaniu]] ([[Języki, automaty i obliczenia/Ćwiczenia 6: Automat niedeterministyczny. Lemat o pompowaniu|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 7: Twierdzenie | # [[Języki, automaty i obliczenia/Wykład 7: Twierdzenie Kleene'ego. Własności języków i gramatyk regularnych|Twierdzenie Kleene'ego. Własności języków i gramatyk regularnych]] ([[Języki, automaty i obliczenia/Ćwiczenia 7: Twierdzenie Kleene'ego. Własności języków i gramatyk regularnych|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 8: | # [[Języki, automaty i obliczenia/Wykład 8: Dalsze algorytmy dla języków regularnych. Problemy rozstrzygalne|Dalsze algorytmy dla języków regularnych. Problemy rozstrzygalne]] ([[Języki, automaty i obliczenia/Ćwiczenia 8: Dalsze algorytmy dla języków regularnych. Problemy rozstrzygalne|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 9: Języki | # [[Języki, automaty i obliczenia/Wykład 9: Języki bezkontekstowe i ich gramatyki|Języki bezkontekstowe i ich gramatyki]] ([[Języki, automaty i obliczenia/Ćwiczenia 9: Języki bezkontekstowe i ich gramatyki|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 10: | # [[Języki, automaty i obliczenia/Wykład 10: Lemat o pompowaniu dla języków bezkontekstowych. Własności języków bezkontekstowych. Problemy rozstrzygalne|Lemat o pompowaniu dla języków bezkontekstowych. Własności języków bezkontekstowych. Problemy rozstrzygalne]] ([[Języki, automaty i obliczenia/Ćwiczenia 10: Lemat o pompowaniu dla języków bezkontekstowych. Własności języków bezkontekstowych. Problemy rozstrzygalne |ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 11: | # [[Języki, automaty i obliczenia/Wykład 11: Automat ze stosem|Automat ze stosem]] ([[Języki, automaty i obliczenia/Ćwiczenia 11: Automat ze stosem|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 12: Języki kontekstowe i | # [[Języki, automaty i obliczenia/Wykład 12: Języki kontekstowe i automat liniowo ograniczony. Maszyna Turinga |Języki kontekstowe i automat liniowo ograniczony. Maszyna Turinga]] ([[Języki, automaty i obliczenia/Ćwiczenia 12: Języki kontekstowe i automat liniowo ograniczony. Maszyna Turinga|ćwiczenia]]) | ||
# [[Języki, automaty i obliczenia/Wykład 13: | # [[Języki, automaty i obliczenia/Wykład 13: Złożoność obliczeniowa. Języki maszyn Turinga i typu (0). Rozstrzygalność|Złożoność obliczeniowa. Języki maszyn Turinga i typu (0). Rozstrzygalność]] ([[Języki, automaty i obliczenia/Ćwiczenia 13: Złożoność obliczeniowa. Języki maszyn Turinga i typu (0). Rozstrzygalność|ćwiczenia]]) |
Wersja z 09:38, 23 sie 2006
Forma zajęć
Wykład (30 godzin) + ćwiczenia (30 godzin)
Opis
Teoria jezyków formalnych, automatów i gramatyk w zakresie hierarchii Chomsky'ego.
Sylabus
- Słowa, katenacja - elementy teorii półgrup; półgrupy i monoidy wolne
- Gramatyki – model obliczeń; hierarchia Chomsky' ego
- Języki regularne; automat skończenie stanowy; automat minimalny i algorytmy; automaty deterministyczne i niedeterministyczne; algorytm determinizacji; własności języków regularnych; lemat o pompowaniu i języki nieregularne; wyrażenia regularne i algorytmy; tw. Kleene; rozstrzygalność
- Języki bezkontekstowe; własności, gramatyka - postać Chomsky'ego i Greibach i algorytmy do upraszczania; automat ze stosem; równoważność gramatyki bezkontekstowej i automatu ze stosem - algorytmy; lemat o pompowaniu; jednoznaczność, problem przynależności i algorytm CYK; rozstrzygalność
- Języki kontekstowe i typu (0); własności; automat liniowo ograniczony; maszyna Turinga; inne modele obliczeń; Podstawowe klasy złożoności w języku MT; języki rekurencyjnie przeliczalne i rekurencyjne; teza Churcha
- Problemy złożoności i problemy rozstrzygalności w teorii języków
Autorzy
- Maria Foryś
- Wit Foryś
- Adam Roman
Wymagania wstępne
- Logika i teoria mnogości
- Algebra liniowa z geometrią analityczną
- Matematyka dyskretna
- Algorytmy i struktury danych
Zawartość
- Elementy teorii półgrup, półgrupy i monoidy wolne, podmonoidy monoidów wolnych
- Gramatyki – model obliczeń, hierarchia Chomsky' ego
- Języki regularne, automat skończenie stanowy, automat minimalny–algorytm konstrukcji, automaty deterministyczne i niedeterministyczne, lemat o pompowaniu i języki nieregularne, wyrażenia regularne, tw. Kleene
- Języki bezkontekstowe, gramatyka - postać Chomsky'ego i Greibach, automat ze stosem, równoważność gramatyki bezkontekstowej i automatu ze stosem - algorytmy, lemat o pompowaniu, jednoznaczność
- Równania dla języków - algorytm rozwiązywania
- Języki kontekstowe i typu (0), automat liniowo ograniczony, maszyna Turinga, języki rekurencyjnie przeliczalne i rekurencyjne, teza Churcha
- Problemy rozstrzygalne i nierozstrzygalne w teorii języków
Literatura
- M.Foryś, W.Foryś, Teoria automatów i języków formalnych, AOW EXIT, Warszawa 2005
- J.Gruska, Foundations of computing, Thompson, 1997
- J.E.Hopcroft, J.D.Ulman, Introduction to automata theory, languages and computing, Addison-Wesley, 1979
- A.Salomaa, Computation and Automata, Cambridge Univ.Press, 1985
- M.Sipser, Introduction to the theory of computation, PWS Publishing Company, Boston 1997
Moduły
- Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne (ćwiczenia)
- Gramatyka jako model obliczen. Hierarchia Chomsky'ego (ćwiczenia)
- Automat skończenie stanowy (ćwiczenia)
- Wyrażenia regularne. Automat minimalny (ćwiczenia)
- Algorytmy konstrukcji automatu minimalnego (ćwiczenia)
- Automat niedeterministyczny. Lemat o pompowaniu (ćwiczenia)
- Twierdzenie Kleene'ego. Własności języków i gramatyk regularnych (ćwiczenia)
- Dalsze algorytmy dla języków regularnych. Problemy rozstrzygalne (ćwiczenia)
- Języki bezkontekstowe i ich gramatyki (ćwiczenia)
- Lemat o pompowaniu dla języków bezkontekstowych. Własności języków bezkontekstowych. Problemy rozstrzygalne (ćwiczenia)
- Automat ze stosem (ćwiczenia)
- Języki kontekstowe i automat liniowo ograniczony. Maszyna Turinga (ćwiczenia)
- Złożoność obliczeniowa. Języki maszyn Turinga i typu (0). Rozstrzygalność (ćwiczenia)