Języki, automaty i obliczenia: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Gracja (dyskusja | edycje)
Rogoda (dyskusja | edycje)
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: Gramatyki - modele obliczeń, hierarchia  Chomsky' ego|Gramatyki - modele obliczeń, hierarchia  Chomsky' ego]] ([[Języki, automaty i obliczenia/Ćwiczenia 2: Gramatyki - modele obliczeń, hierarchia  Chomsky' ego|ćwiczenia]])
# [[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, 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 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; lemat o pompowaniu|Automat niedeterministyczny; lemat o pompowaniu]] ([[Języki, automaty i obliczenia/Ćwiczenia 6: Automat niedeterministyczny; lemat o pompowaniućwiczenia|ćwiczenia]])
# [[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 Kleene’ego; gramatyki regularne|Twierdzenie Kleene’ego; gramatyki regularne]] ([[Języki, automaty i obliczenia/Ćwiczenia 7: Twierdzenie Kleene’ego; gramatyki regularne|ćwiczenia]])
# [[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: Gramatyka regularna i wyrażenia - algorytmy; rozstrzygalność|Gramatyka regularna i wyrażenia - algorytmy; rozstrzygalność]] ([[Języki, automaty i obliczenia/Ćwiczenia 8: Gramatyka regularna i wyrażenia - algorytmy; rozstrzygalność|ćwiczenia]])
# [[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 i gramatyki bezkontekstowe|Języki i gramatyki bezkontekstowe]] ([[Języki, automaty i obliczenia/Ćwiczenia 9: Języki i gramatyki bezkontekstowe|ćwiczenia]])
# [[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: Automat ze stosem|Automat ze stosem]] ([[Języki, automaty i obliczenia/Ćwiczenia 10: Automat ze stosem |ćwiczenia]])
# [[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: Lemat o pompowaniu dla języków bezkontekstowych; jednoznaczność|Lemat o pompowaniu dla języków bezkontekstowych; jednoznaczność]] ([[Języki, automaty i obliczenia/Ćwiczenia 11: Lemat o pompowaniu dla języków bezkontekstowych; jednoznaczność|ćwiczenia]])
# [[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 typu 0; maszyna Turinga |Języki kontekstowe i typu 0; maszyna Turinga]] ([[Języki, automaty i obliczenia/Ćwiczenia 12: Języki kontekstowe i typu 0; maszyna Turinga|ćwiczenia]])
# [[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: Problemy rozstrzygalne i nierozstrzygalne w teorii języków|Problemy rozstrzygalne i nierozstrzygalne w teorii języków]] ([[Języki, automaty i obliczenia/Ćwiczenia 13: Problemy rozstrzygalne i nierozstrzygalne w teorii języków|ćwiczenia]])
# [[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

  1. M.Foryś, W.Foryś, Teoria automatów i języków formalnych, AOW EXIT, Warszawa 2005
  2. J.Gruska, Foundations of computing, Thompson, 1997
  3. J.E.Hopcroft, J.D.Ulman, Introduction to automata theory, languages and computing, Addison-Wesley, 1979
  4. A.Salomaa, Computation and Automata, Cambridge Univ.Press, 1985
  5. M.Sipser, Introduction to the theory of computation, PWS Publishing Company, Boston 1997

Moduły

  1. Słowa, katenacja - elementy teorii półgrup, półgrupy i monoidy wolne (ćwiczenia)
  2. Gramatyka jako model obliczen. Hierarchia Chomsky'ego (ćwiczenia)
  3. Automat skończenie stanowy (ćwiczenia)
  4. Wyrażenia regularne. Automat minimalny (ćwiczenia)
  5. Algorytmy konstrukcji automatu minimalnego (ćwiczenia)
  6. Automat niedeterministyczny. Lemat o pompowaniu (ćwiczenia)
  7. Twierdzenie Kleene'ego. Własności języków i gramatyk regularnych (ćwiczenia)
  8. Dalsze algorytmy dla języków regularnych. Problemy rozstrzygalne (ćwiczenia)
  9. Języki bezkontekstowe i ich gramatyki (ćwiczenia)
  10. Lemat o pompowaniu dla języków bezkontekstowych. Własności języków bezkontekstowych. Problemy rozstrzygalne (ćwiczenia)
  11. Automat ze stosem (ćwiczenia)
  12. Języki kontekstowe i automat liniowo ograniczony. Maszyna Turinga (ćwiczenia)
  13. Złożoność obliczeniowa. Języki maszyn Turinga i typu (0). Rozstrzygalność (ćwiczenia)