Post on 24-Jun-2015
Maszyna Turinga
Mikołaj Olszewski
Michał Żelazowski
Cele prezentacjiPrzybliżenie postaci Alana TuringaPrzypomnienie modelu MTPrzedstawienie modyfikacji modelu
podstawowegoOmówienie zagadnień
nierozstrzygalności
Korzyści dla słuchaczy Informacje przydatne do egzaminu
dyplomowego Interesujące zastosowania MTNieznane szczegóły biografii Alana
Turinga
Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT
Alan Turing
Urodzony w 1912 w domu opiekiStudent Cambridge University oraz
Princeton UniversityMatematyk, kryptolog, neurolog,
wizjonerPrekursor sztucznej inteligencji
Alan TuringZnakomity biegacz, członek
Walton Athletic ClubPogromca kodu EnigmySamobójstwo w 1954
Walton Athletic Club 1946
Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX
wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT
Idea Hilberta Przekonanie o
niesprzeczności i zupełności matematyki
Znaleźć skończony zbiór reguł i aksjomatów, pozwalający rozstrzygnąć dowolny problem matematyczny
Mechaniczna procedura dowodzenia – algorytm decyzyjny całej matematyki
Cios Kurta Gödla Pewnych zdań
matematycznych nie sposób rozstrzygnąć
Nieuchronność paradoksów typu „to zdanie jest fałszywe”
Nie można wykazać niesprzeczności danego systemu formalnego
Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT
Maszyna Turinga (MT)Pierwszy krok w kierunku realizacji
maszyny określającej prawdziwość zdań matematycznych
Uniwersalna maszyna Turinga – może wykonać instrukcje innej MT – prototyp programu
Model podstawowy MT (1936)
Procedura w postaci dyskretnych kroków M = (Q, Σ, Γ, δ, q0, B, F) wyjaśnienie
Model podstawowy MTKrok maszyny w zależności od
bieżącego stanu i obserwowanego symbolu: Zmień stan Wydrukuj symbol w obserwowanej
komórce Przesuń głowicę o 1 komórkę w lewo lub w
prawo
pokaz
Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT
Zastosowania MT Urządzenie obliczające funkcje na liczbach
naturalnych - zapis unarny Jeśli MT zatrzyma się z taśmą zawierającą k
symboli ”0”, wartością funkcji jest k Funkcje obliczane przez MT to funkcje
częściowo rekurencyjne Jeśli funkcja jest określona dla całej
dziedziny, jest funkcją całkowicie rekurencyjną (np. n!, 2n, mnożenie)
pokaz
Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT
Proste modyfikacje MTPrzechowywanie informacji w
sterowaniu skończonymTaśmy wielościeżkowe
Triki z MT „Odfajkowywanie symboli”Przesuwanie symboliPodprogramy
pokaz
Nietrywialne modyfikacje MTTaśma dwustronnie nieskończonaWielotaśmowa MTNiedeterministyczna MTWielowymiarowa MTWielogłowicowa MTWsadowa MT
Taśma dwustronnie nieskończona
Nieskończona ilość komórek w każdą stronę MT nie może „spaść” z lewego końca Zapis taki, jak w modelu pierwotnym
Wielotaśmowa MT k głowic taśmowych k taśm dwustronnie
nieskończonychW każdym ruchu: zmiana stanu nowy symbol w
każdej komórce przesunięcie każdej
głowicy niezależnie od pozostałych
Niedeterministyczna MTSkończone sterowaniePojedyncza i jednostronnie
nieskończona taśmaSkończona liczba opcji następnego
ruchuAkceptacja wejścia dla ciągu opcji
Wielowymiarowa MT
Taśma – k wymiarowa tablica komórek, nieskończona we wszystkich 2 k kierunkach
Ruch głowicy możliwy w każdym z 2k kierunków Skończona liczba rzędów zawierających
niepuste symbole
Wielogłowicowa MTk głowicRuch zależy od stanu i symbolu
obserwowanego przez każdą z głowicNiezależny ruch głowic w każdym kroku
Wsadowa MTWielotaśmowaTaśma wejściowa tylko do czytaniaZnaczniki końców: ¢ i $ „Uwięziona” głowica taśmy wejściowejSzczególny przypadek wielotaśmowej
MT
Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT
Języki akceptowane przez MTJęzyki rekurencyjnie przeliczalneRozwiązanie problemu należenia w
sposób mechaniczny nie dla wszystkichObliczenia nieskończoneJęzyki rekurencyjne
Teza Churcha funkcja obliczalna ≡ funkcja
częściowo rekurencyjna Inne formalizmy: rachunek λ,
systemy Posta, uogólnionefunkcje rekurencyjne
Abstrakcyjny model komputera:maszyna o dostępie swobodnym (RAM)
Generacja funkcji częściowo rekurencyjnych
Inne zastosowania MT
Generator języków – wielotaśmowa MTz taśmą wyjściową
Maszyna wielostosowa – wielotaśmowa MT z wejściem tylko do czytania
Maszyna licznikowa – wsadowa MTz Γ={Z, B}; Z – znacznik spodu stosu
Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT
ProblemWystąpieniem jakiegoś problemu
nazywamy listę argumentów, zawierającą po jednym argumencie dla każdego parametru problemu
Łańcuchy – kody konkretnych wystąpień pewnych problemów
czy istnieje algorytm? → czy język jest rekurencyjny?
Problemy rozstrzygalnei nierozstrzygalneProblem → język rekurencyjny ⇒
problem rozstrzygalny Inaczej ⇒ problem nierozstrzygalnyNierozstrzygalny, gdy nie istnieje
algorytm przyjmujący jako wejście wystąpienie tego problemu i rozstrzygający, czy odpowiedzią na to wystąpienie jest TAK, czy też NIE
Tw. Gödla o niepełności Dowolny system
formalny o mocy wystarczającej do objęcia teorii liczb musiałby zawierać stwierdzenia, które byłyby prawdziwe, ale nie dałyby się udowodnić w tym systemie
BibliografiaJ. Hopcroft, J. Ullman „Wprowadzenie
do teorii automatów, języków i obliczeń”, PWN 1994
A. Aho, J. Hopcroft, J. Ullman „Projektowanie i analiza algorytmów komputerowych”, PWN 1983
P. Coveney, R. Highfield „Granice złożoności”, Prószyński i S-ka 1997
www.turing.org.uk
Dziękujemy za uwagę
Maszyna Turinga - symbole M = (Q, Σ, Γ, δ, q0, B, F)
Q – zbiór stanów maszyny Σ – zbiór symboli wejściowych Γ – zbiór symboli taśmowych, Γ ⊂ Σ δ – funkcja przejść q0 – stan początkowy B – symbol pusty (blank) F – zbiór stanów końcowych, F ⊆ Q
powrót