maszyna turinga

37
Maszyna Turinga Mikołaj Olszewski Michał Żelazowski

Upload: mikolaj-olszewski

Post on 24-Jun-2015

342 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: Maszyna Turinga

Maszyna Turinga

Mikołaj Olszewski

Michał Żelazowski

Page 2: Maszyna Turinga

Cele prezentacjiPrzybliżenie postaci Alana TuringaPrzypomnienie modelu MTPrzedstawienie modyfikacji modelu

podstawowegoOmówienie zagadnień

nierozstrzygalności

Page 3: Maszyna Turinga

Korzyści dla słuchaczy Informacje przydatne do egzaminu

dyplomowego Interesujące zastosowania MTNieznane szczegóły biografii Alana

Turinga

Page 4: Maszyna Turinga

Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT

Page 5: Maszyna Turinga

Alan Turing

Urodzony w 1912 w domu opiekiStudent Cambridge University oraz

Princeton UniversityMatematyk, kryptolog, neurolog,

wizjonerPrekursor sztucznej inteligencji

Page 6: Maszyna Turinga

Alan TuringZnakomity biegacz, członek

Walton Athletic ClubPogromca kodu EnigmySamobójstwo w 1954

Page 7: Maszyna Turinga

Walton Athletic Club 1946

Page 8: Maszyna Turinga

Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX

wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT

Page 9: Maszyna Turinga

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

Page 10: Maszyna Turinga

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

Page 11: Maszyna Turinga

Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT

Page 12: Maszyna Turinga

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

Page 13: Maszyna Turinga

Model podstawowy MT (1936)

Procedura w postaci dyskretnych kroków M = (Q, Σ, Γ, δ, q0, B, F) wyjaśnienie

Page 14: Maszyna Turinga

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

Page 15: Maszyna Turinga

Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT

Page 16: Maszyna Turinga

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

Page 17: Maszyna Turinga

Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT

Page 18: Maszyna Turinga

Proste modyfikacje MTPrzechowywanie informacji w

sterowaniu skończonymTaśmy wielościeżkowe

Page 19: Maszyna Turinga

Triki z MT „Odfajkowywanie symboli”Przesuwanie symboliPodprogramy

pokaz

Page 20: Maszyna Turinga

Nietrywialne modyfikacje MTTaśma dwustronnie nieskończonaWielotaśmowa MTNiedeterministyczna MTWielowymiarowa MTWielogłowicowa MTWsadowa MT

Page 21: Maszyna Turinga

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

Page 22: Maszyna Turinga

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

Page 23: Maszyna Turinga

Niedeterministyczna MTSkończone sterowaniePojedyncza i jednostronnie

nieskończona taśmaSkończona liczba opcji następnego

ruchuAkceptacja wejścia dla ciągu opcji

Page 24: Maszyna Turinga

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

Page 25: Maszyna Turinga

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

Page 26: Maszyna Turinga

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

Page 27: Maszyna Turinga

Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT

Page 28: Maszyna Turinga

Języki akceptowane przez MTJęzyki rekurencyjnie przeliczalneRozwiązanie problemu należenia w

sposób mechaniczny nie dla wszystkichObliczenia nieskończoneJęzyki rekurencyjne

Page 29: Maszyna Turinga

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

Page 30: Maszyna Turinga

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

Page 31: Maszyna Turinga

Plan prezentacjiPrzedstawienie osoby Alana TuringaWyzwania logiki na początku XX wiekuModel podstawowy MTZastosowania MTModyfikacje MTPerełki MTNierostrzygalność a MT

Page 32: Maszyna Turinga

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?

Page 33: Maszyna Turinga

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

Page 34: Maszyna Turinga

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

Page 35: Maszyna Turinga

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

Page 36: Maszyna Turinga

Dziękujemy za uwagę

Page 37: Maszyna Turinga

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