• Nie Znaleziono Wyników

Teza Churcha-Turinga

N/A
N/A
Protected

Academic year: 2021

Share "Teza Churcha-Turinga"

Copied!
54
0
0

Pełen tekst

(1)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Algorytmika - wykªad 3

dr Anna Sasak-Oko«

Uniwersytet Marii Curie-Skªodowskiej w Lublinie

14.10.2019

(2)

Ró»norodno±¢ zada« stawianych przed maszyn¡ Turinga postawiªo pytanie:

Jakie problemy mo»na rozwi¡za¢ odpowiednio zorganizowan¡

Maszyn¡ Turinga?

Otó» okazuje si¦, »e:

Maszyny Turinga potra¡ rozwi¡za¢ ka»dy efektywnie rozwi¡zywalny problem algorytmiczny.

(3)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Mówi¡c inaczej,ka»dy problem algorytmiczny dla którego mo»emy znale¹¢ algorytm daj¡cy si¦ zaprogramowa¢ w pewnym dowolnym j¦zyku, wykonuj¡cy si¦ na pewnym dowolnym

komputerze, nawet na takim, którego jeszcze nie zbudowano, ale mo»na zbudowa¢, nawet na takim, który wymaga niesko«czonej ilo±ci czasu i pami¦ci dla coraz wi¦kszych danych,jest tak»e rozwi¡zywalny przez maszyn¦ turinga.

To stwierdzenie jest jedn¡ z wersji tzw. tezy Churcha-Turinga, którzy doszli do niej niezale»nie w poªowie lat 30-tych. Jest to hipoteza okre±laj¡ca mo»liwo±ci komputerów i innych maszyn obliczeniowych.

(4)

Teza Churcha-Turinga

Ka»dy problem, dla którego przy nieograniczonej pami¦ci oraz zasobach istnieje EFEKTYWNY algorytm jego rozwi¡zania, da si¦

rozwi¡za¢ na Maszynie Turinga.

Uwaga!

Powy»sze sformuªowanie to TEZA, a nie twierdzenie.

Oznacza to, »e nie da si¦ jej ±ci±le sformuªowa¢ w j¦zyku

matematyki, a zatem i dowie±¢, poniewa» ª¡czy w sobie zarówno

±cisªe, jak i nieprecyzyjne sformuªowania (jak np. efektywna obliczalno±¢.)

Uwaga!

Przez ponad 70 lat nie udaªo si¦ te» wykaza¢ jej faªszywo±ci.

(5)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Teza zrównuje matematycznie precycyjne poj¦cie 'rozwi¡zywalny przez Maszyn¦ Turinga' z nieformalnym, intuicyjnym poj¦ciem 'efektywnie rozwi¡zywalny', które nawi¡zuje do wszystkich rzeczywistych komputerów i wszystkich j¦zyków programowania, tych o których wiemy obecnie, jak równie» tych o których nie wiemy. Brzmi to zatem bardziej jak fantastyczna spekulacja ni» to czym na prawd¦ jest  gª¦bokim i dalekowzrocznym stwierdzeniem wysuni¦tym przez dwóch z najbardziej powa»anych pionierów informatyki teoretycznej.

(6)

Dlaczego zatem powinni±my wierzy¢ tej tezie, szczególnie je»eli nie mo»na jej udowodni¢?

(7)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Ju» od wczesnych lat 30tych badacze proponowali ró»ne modele komputera absolutnego, wszechpot¦»nego, lub uniwersalnego.

Chciano bowiem sprecyzowa¢ ulotne poj¦cie 'efektywnej obliczalno±ci'. Na dªugo przedtem nim wymy±lono pierwszy

komputer, Turing zaproponowaª swoj¡ maszyn¦, a Church wymy±liª matematyczny fundalizm funkcji zwany rachunkiem lambda

(podstawa j¦zyka programowania Lisp).

Mniej wi¦cejw tym samym czasie Emil Post zdeniowaª pewien typ systemu produkcji do manipulowania symbolami, a Stephen Kleene zdeniowaª klas¦ obiektów zwanych funkcjami rekurencyjnymi.

(8)

Wszyscy oni próbowali u»y¢ tych modeli do rozwi¡zania wielu problemów algorytmicznych, do których znane byªy 'efektywnie wykonalne' algorytmy. Przeªomowym zdarzeniem istotnym dla wsystkich tych modeli staªo si¦ udowodnienie, i» s¡ one równowa»ne w kategoriach problemów algorytmicznych, które rozwi¡zuj¡.

Ten fakt jest dzi± nadal prawdziwy nawet dla najsilniejszych modeli, jakie mo»na sobie wyobrazi¢.

(9)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Z tezy Churcha-turinga wynika, »e najpot¦»niejszy superkomputer z wieloma najwymyslniejszymi j¦zykami programowania,

interpretatorami, kompilatorami nie jest pot¦»niejszy od domowego komputera z jego uproszczonym j¦zykiem programowania.

Maj¡c nieograniczon¡ ilo±¢ czasu i pami¦ci mog¡ obydwa rozwi¡za¢

te same problemy algorytmiczne, jak równie» »aden z nich nie mo»e rozwi¡za¢ problemów nierozstrzygalnych (nieobliczalnych).

(10)

Rozstrzygalno±¢ problemów

Problem algorytmiczny, do którego nie ma »adnego algorytmu jest nazywany NIEOBLICZALNYM, je±li jest to problem decyzyjny - NIEROZSTRZYGALNYM.

Dla problemów tego typu w »aden sposób nie mo»na skonstruowa¢

algorytmu wykonywanego na dowolnym komputerze, bez wzgl¦du na ilo±¢ dost¦pnego czasu i pami¦ci.

(11)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Dziaªanie Maszyny Turinga mo»na ograniczy¢ na wiele sposobów nie zmniejszaj¡c klasy problemów, które rozwi¡zuje. Mo»na np.

»¡da¢ »eby dane wej±ciowe pozostaªy nienaruszone i »eby przy zatrzymaniu ta±ma zawieraªa tylko dane i wyniki otoczone symbolami pustymi.

Mozna zdeniowa¢ MT z tasm¡, która jest niesko«czona tylko z prawej strony, a dane s¡ zapisywane na tasmie od lewego skraju.

Obie maszyny maoga rozwi¡zywa¢ dokªadnie te same problemy co model podstawowy i wobec tego nie s¡ od niego sªabsze.

(12)

Podobnie dodanie maszynom dowolnie silnej wªasno±ci nie

powoduje »adnego rozszerzenia klasy rozwi¡zywalnych problemów.

W ›ADNYM z rozszerze« nie da si¦ rozwi¡za¢ problemu nie rozwi¡zywalnego.

(13)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Istniej¡ ograniczenia, które narzucone na maszyn¦ Turinga nie pomniejszaj¡ uniwersalno±ci modelu.

Jedn¡ z najbardziej interesuj¡cych degeneracji modelu otrzymuje si¦

ograniczaj¡c poruszanie sie gªowicy po ta±mie tylko do jednego kierunku np. w prawo.

Wynikiem jest urz¡dzenie zwane AUTOMATEM SKO‹CZENIE STANOWYM lub AUTOMATEM SKO‹CZONYM.

(14)

Automat sko«czony rozwi¡zuj¡cy problem decyzyjny dziaªa nast¦puj¡co: przechodzi wzdªu» podanej sekwencji symbol po symbolu zmieniaj¡c stan w wyniku stanu bie»¡cego i nowego symbolu z ta±my. Po osi¡gni¦ciu ko«ca sekwencji zatrzymuje si¦, a odpowied¹ zale»y od tego, czy automat zatrzymaª si¦ w stanie TAK czy NIE.

Automat sko«czony przedstwia sie jako diagram przej±¢ mi¦dzy stanami, tak jak klasyczn¡ MT jednak bez cz¦±ci kierunek w etykiecie. Przej±cie jest etykietowane jedynie symbolem który je wyzwala.

(15)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

przykªad automatu sko«czonego

Automat, który ma za zadanie bada¢ czy liczba binarna jest podzielna przez 3.

Jaka cecha oznacza liczb¦ binarn¡ podzieln¡ przez 3?

 Ró»nica bitów parzystych i nieparzystych musi byc podzielna przez 3.

S00 S0 S01 S1 S10 S2 S11 S0 S20 S1 S21 S2

0 1

S0 S0 S1 S1 S2 S0 S2 S1 S2

1100(12), 1110(14), 111110010(498)?

(16)

przykªad automatu sko«czonego

Automat, który ma za zadanie bada¢ czy liczba binarna jest podzielna przez 3.

Jaka cecha oznacza liczb¦ binarn¡ podzieln¡ przez 3?  Ró»nica bitów parzystych i nieparzystych musi byc podzielna przez 3.

S00 S0 S01 S1 S10 S2 S11 S0 S20 S1 S21 S2

0 1

S0 S0 S1 S1 S2 S0 S2 S1 S2

1100(12), 1110(14), 111110010(498)?

(17)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Automat synchronizuj¡cy

Denicja

Automat synchronizuj¡cy nad alfabetem A to automat (S, f ) o nast¦puj¡cej wªasno±ci: istnieje stan t ∈ S oraz sªowo w ∈ A takie, »e dla ka»dego stanu s tego automatu f (s, w) = t.

Istnieje wi¦c pewne uniwersalne sªowo w, pod wpªywem którego wszystkie stany przechodz¡ w jeden, ustalony stan automatu t ∈ S.

Mówimy, »e nast¦puje wtedy synchronizacja wszystkich stanów automatu.

(18)

przykªad (D. S. Ananichev, M. V. Volkov, Synchronizing Monotonic Automata, Lecture Notes in Computer Science, 2710(2003), 111-121)

Pewna fabryka produkuje detale w ksztaªcie kwadratu z 'wypustk¡' na jednym boku.

Po wyprodukowaniu detale nale»y umie±ci¢ w opakowaniach w ten sposób, by wszystkie byªy w tej samej orientacji -

mianowicie 'wypustk¡' w lewo.

Detale mog¡ przyjmowa¢ jedn¡ z czterech orientacji:

'wypustk¡' w gór¦, w dóª, w lewo lub w prawo.

(19)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

przykªad  c.d.

Skonstruowa¢ urz¡dzenie (orienter), które b¦dzie ustawiaªo wszystkie detale w »¡danej orientacji (mo»liwie proste i tanie).

Sposób: umieszczanie detali na pasie transmisyjnym z zamontowan¡ wzdªu» niego pewn¡ ilo±ci¡ przeszkód dwojakiego rodzaju: niskich (low) oraz wysokich (HIGH).

Wysoka przeszkoda ma t¦ wªasno±¢, »e ka»dy detal, który j¡

napotka, zostanie obrócony o 90 stopni w prawo (zakªadamy,

»e elementy jad¡ od lewej do prawej strony).

Przeszkoda niska obróci o 90 stopni w prawo tylko te detale, które s¡ uªo»one "wypustk¡"w dóª.

(20)

przykªad  c.d.

Sªowem, które synchronizuje ten automat, jest:

low-HIGH-HIGH-HIGH-low-HIGH-HIGH-HIGH-low

Niezale»nie od orientacji pocz¡tkowej, po przej±ciu przez ni¡ detal zawsze b¦dzie uªo»ony 'wypustk¡' w lewo.

(21)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Chocia» dodanie kolejnych ta±m nie powoduje rozszerzenia klasy rozwi¡zywalnych problemów to znacznie uªatwia konstruowanie algorytmów i mo»e zmienia¢ ich efektywno±¢.

Denicja

Maszyna Turinga z k ci¡gami, dla liczby caªkowitej k ≥ 1 jest czwórk¡ M = (Q, Σ, δ, s) gdzie Q i σ maj¡ takie samo znaczenie jak w zwykªej MT, natomiast δ jest programem, który b¦dzie odzwierciedlaª zªo»ono±¢ maszyny maj¡cej wiele ci¡gów.

Intuicyjnie δ jak poprzednio okre±la kolejny stan maszyny, ale tym razem wyznacza tak»e pisany symbol i kierunek ruchu kursora dla ka»dego ci¡gu obliczone na podstawie bie»¡cego stanu i bie»¡cych symboli we wzystkich ci¡gach.

(22)

Formalnie: δ jest funkcj¡:

Qx Σk → (Q ∪ {h,0tak0,0nie0})x(Σx{←, →, −})k h  stan ko«cowy oznaczaj¡cy »e wynik jest gotowy Intuicyjnie: δ(q, σ1, ...σk) = (p, ρ1, D1, ...ρk, Dk)

Czyli, je»eli maszyna M jet w stanie q, to kursor pierwszego ci¡gu wskazuje symbol σ1, drugiego σ2 itd. Wówczas kolejnym stanem maszyny b¦dzie p, pierwszy kursor zapisze ρ1 i przesunie si¦ w kierunku D1 itd.

(23)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Pocz¡tkowo wszystkie ciagi zawieraj¡ symbol pusty 5, a pierwszy ci¡g zawiera sªowo wej±ciowe.

Wynik oblicze« maszyny T z k ci¡gami dla sªowa wej±ciowego x, jest taki sam, jak w zwykªych maszynach, ale odczytywany jest dopiero po zatrzymaniu maszyny z ostatniego, k-tego ciagu.

(24)

rozpoznawanie palindromów  MT z 1 ci¡giem

logika dziaªania:

w stanie startowym znajd¹ pierwszy symbol sªowa, zamie« go na symbol pusty, równocze±nie zapami¦tuj¡c jego warto±¢ w swoim stanie (q0 dla 0, q1 dla 1)

przejd¹ na koniec sªowa i przeczytaj ostatni symbol sªowa wej±ciowego

je»eli ostatni symbol zgadza si¦ z pierwszym, zamie« go na symbol pusty i powtórz procedur¦

w przeciwnym przypadku zako«cz z odpowiedzi¡ NIE je»eli ko«czymy ze sªowem pustym lub nie udaje nam si¦

znale¹¢ ostatniego symbolu, to aprobujemy sªowo wej±ciowe - zwró¢ odpowied¹ TAK

(25)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

p ∈ Q σ ∈ Σ δ(p, σ)

s 0 (q0, 5, →)

s 1 (q1, 5, →)

s 5 (s, 5, →)

s 5 (TAK , 5, −)

q0 0 (q0,0, →) q0 1 (q0,1, →) q0 5 (q00, 5, ←) q1 0 (q1,0, →) q1 1 (q1,1, →) q1 5 (q10, 5, ←)

p ∈ Q σ ∈ Σ δ(p, σ) q00 0 (q, 5, ←) q00 1 (NIE ,1, −) q00 5 (TAK , 5, →) q10 0 (NIE ,1, −) q10 1 (q, 5, ←) q10 5 (TAK , 5, →)

q 0 (q,0, ←)

q 1 (q,1, ←)

q 5 (s, 5, →)

(26)

rozpoznawanie palindromów - MT z 2 ci¡gami

logika dziaªania:

skopiuj sªowo wej±ciowe na drugi ci¡g maszyny

ustaw kursor pierwszego ci¡gu na pierwszym symbolu wej±cia ustaw kursor drugiego ciagu na ostatnim symbolu kopii wej±cia przesuwaj oba kursory w przeciwnych kierunkach, sprawdzaj¡c w ka»dym kroku czy symbole przez nie wskazywane s¡

identyczne i jednocze±nie kasuj¡c kopi¦

(27)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

p ∈ Q σ1 ∈ Σ σ2 ∈ Σ δ(p, σ1, σ2)

s 0 5 (s,0, →, 0, →)

s 1 5 (s,1, →, 1, →)

s 5 5 (q, 5, ←, 5, −)

q 0 5 (q,0, ←, 5, −)

q 1 5 (q,1, ←, 5, −)

q 5 5 (p, 5, →, 5, ←)

p 0 0 (p,0, →, 5, ←)

p 1 1 (p,1, →, 5, ←)

p 0 1 (NIE ,0, −, 1, −)

p 1 0 (NIE ,1, −, 0, −)

p 5 5 (TAK , 5, −, 5, −)

(28)

Konguracje MT z wieloma ciagami deniuje si¦ analogicznie jak w przypadku zwykªej MT.

Jest to (2k + 1) krotka (q, w1, u1, ..., wk, uk) gdzie q jest bie»¡cym stanem, wiui jest sªowem zawartym w i-tym ci¡gu, a i-ty kursor wskazuje na ostatni symbol wi.

Modelu MT z wieloma ciagami u»yjemy jako podstawy do zdeniowania poj¦cia czasu zu»ywanego przez obliczenia MT.

(29)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Denicja

Je»eli dla MT z k ci¡gami i dla sªowa wej±ciowego x zachodzi relacja:

(s, 5, x , 5, ∈, ...50 ∈) →Mt (H, w1, u1, ...wk, uk) gdzie H ∈ {h, TAK , NIE }to czas wymagany przez maszyn¦ M dla x wynosi t.

Oznacza to, »e wymagany czas jest po prostu liczb¡ kroków maszyny wykonanych do chwili zatrzymania.

(30)

Potrzeba teraz notacji, która umo»liwi ogólne opisanie czasu potrzebnego na rozwi¡zanie dowolnego przypadku problemu.

Niech wi¦c f b¦dzie funkcj¡ okre±lon¡ na liczbach naturalnych i o warto±ciach naturalnych.

Denicja

Powiemy, »e maszyna M dziaªa w czasie f(n), je»eli dla dowolnego slowa wej±ciowego x, czas wymagany przez M jest równy najwy»ej f(|x|) gdzie |x| to dªugo±¢ sªowa.

Funkcja f(n) jest OGRANICZENIEM CZASOWYM dla M.

(31)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Niech L ⊂ (Σ − {5}) b¦dzie j¦zykiem rozstrzygalnym przez MT z wieloma ciagami dziaªaj¡c¡ w czasie f(n).

Uwaga!

Poniewa» MT dziaªa na sªowach, dla algorytmów numerycznych s¡

to wci¡» sªowa o specycznie zdeniowanym alfabecie, zamiast rozwi¡zania problemu decyzyjnego, mówi si¦ o rozpoznaniu j¦zyka czyli odpowiedzi TAK/NIE → taki j¦zyk nazywamy

ROZSTRZYGALNYM.

(32)

Powiemy wówczas, »e L ∈ TIME(f (n) gdzie TIME(n) jest klas¡

zªo»ono±ci.

Jest to zbiór takich j¦zyków, których wspóln¡ wªasno±ci¡ jest mo»liwo±¢ ich rozstrzygni¦cia przy pewnych ograniczeniach naªo»onych na obliczenia maszyny (np. czas)

(33)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

przykªad - palindromy - MT z 1 ci¡giem

Ile kroków potrzebuje MT aby rozsztrzygn¡¢ czy sªowo dªugo±ci n jest palindromem?

dziaªanie maszyny obejmuje dn2eetapów

pierwszy etap to porównanie w 2n + 1 krokach pierwszego i ostatniego symbolu

nast¦pnie powtarzamy t¦ sam¡ procedur¦ dla sªow dªugo±ci n −2, n − 4 itd.

caªkowita liczba kroków wynosi co najwy»ej f (n) = (2n + 1) + (2n − 3) + ... = (n+1)(n+2)2

st¡d j¦zyk palindromów nale»y do klasy TIME((n+1(n+2)2 ), a

(34)

przykªad - palindromy - MT z 2 ciagami

MT z dwoma ciagami potrzebuje co najwy»ej f0(n) =3n + 3 (przepisanie, powrót gªowicy na pocz¡tek, porównanie) czasu co prowadzi do wniosku »e palindromy s¡ w klasie TIME(3n + 3) Z tych oblicze« mo»na wywnioskowa¢, »e wykorzystuj¡c maszyny Turinga z wieloma ci¡gami, mo»emy osi¡ga¢ kwadratowe

zmniejszenie czasu. Okazuje si¦, »e da si¦ wykaza¢ »e ta redukcja nigdy nie b¦dzie mniejsza.

(35)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Twierdzenie 1

Dla dowolnej maszyny Turinga z k ci¡gami dziaªaj¡cej w czasie f (n)mozna skonstruowa¢ jednota±mow¡ maszyn¦ M dziaªaj¡c¡ w czasie O(f (n2))tak¡, »e dla dowolnego sªowa wej±ciowego x zachodzi M(x) = M0(x ).

Twierdzenie to jest mocnym argumentem ±wiadcz¡cym o sile i stabilno±ci MT jako modelu oblicze«. Dodanie sko«czonej liczby ci¡gów nie zwi¦ksza ich mo»liwo±ci obliczeniowych i wpªywa jedynie wielomianowo na efektywno±¢.

Nawet wprowadzenie znacznych ulepsze«, odpowiadaj¡cych mo»liwo±ciom wspóªczesnych komputerów, tak»e nie pozwala istotnie zmieni¢ mo»liwo±ci podstawowego modelu MT.

(36)

Uwaga!

Nie wymy±lono »adnych realnych ulepsze« maszyny Turinga, które zwi¦kszyªyby dziedzin¦ rozstrzyganych przez nie j¦zyków czy wpªyn¦ªyby bardziej ni» wielomianowo na szybko±¢ ich dziaªania.

(37)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Liniowe przyspieszanie

Szacuj¡c czas dziaªania algorytmu zacz¦lismy u»ywa¢ notacji O.

Jest to znakiem naszego ograniczonego zainteresowania dokªadnymi staªymi wspóªczynnikami i skªadnikami funkcji ograniczaj¡cych czas i pami¦¢.

Poni»sze twierdzenie dotycz¡ce zªo»ono±ci oblicze« Maszyny Turinga stwierdza wªa±nie, »e staªe wspóªczynniki nie maj¡

znaczenia je»eli posªugujemy si¦ maszyn¡ Turinga z k ciagami jako urz¡dzeniem deniuj¡cym zªo»ono±¢ czasow¡.

Twierdzenie 2

Niech L ∈ TIME(f (n)). Wówczas dla dowolnego ε > 0 zachodzi

0 0

(38)

Jakie jest znaczenie tego twierdzenia?

Maszyny dziaªaj¡ce w czasie ograniczonym wielko±ci¡ mniejsz¡ ni»

n oczywi±cie istniej¡, ale tak na prawd¦ nie s¡ one interesuj¡ce, poniewa» MT potrzebuje n kroków na samo przeczytanie caªego sªowa wej±ciowego.

St¡d ka»de 'przyzwoite' ograniczenie czasowe b¦dzie spelniaªo zale»no±¢ f (n) ≥ n.

Je»eli f (n) jest ponadliniowa, np. 14n2+31n, wtedy staªy czynnik w najbardziej znacz¡cym wyrazie (tu 14) mo»e by¢ dowolnie zmniejszony, tzn. ograniczenie czasowe mo»e by¢ DOWOLNIE LINIOWO ZMNIEJSZONE.

Wyrazy ni»szego rz¦du, jak 31n w powy»szym przykªadzie, mog¡

by¢ caªkowicie pomini¦te.

(39)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Od tego momentu momentu mo»emy wi¦c swobodnie u»ywa¢

notacji O dla ogranicze« czasowych.

Ka»de wielomianowe ograniczenie czasowe b¦dziemy od tej pory reprezentowac przez najbardziej znacz¡cy wyraz (postaci nk, k ≥1).

Oznacza to, »e jezeli L jest j¦zykiem wielomianowo rozstrzygalnym to nale»y do klasy TIME(nk) dla pewnej liczby caªkowitej k > 0.

Uwaga!

Sum¦ wszystkich klas, czyli zbiór j¦zyków rozstrzygalnych w czasie wielomianowym przez Maszyn¦ Turinga, oznaczamy przez P!.

Wiemy ju», »e jest to najwa»niejsza klasa zªo»ono±ci obliczeniowej.

(40)

Ograniczenia pami¦ciowe

Mówimy, »e maszyna Turinga o k ta±mach z wyró»nion¡ ta±m¡

wyj±ciow¡ i wej±ciow¡ dziaªa w pami¦ci ograniczonej przez f (n), je»eli dla dowolnego sªowa wej±ciowego x wymaga pami¦ci:

Pk−1

i =2 |wiui| 6 f (|x|).

Je»eli L jest rozstrzygalny w pami¦ci f (n), mówimy »e L ∈ SPACE (f (n)

Inaczej mówi¡c jest to liczba komórek ta±my, które zostaªy odwiedzone przez gªowic¦ zanim maszyna si¦ zatrzymaªa.

(41)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Twierdzenie 3

Niech L b¦dzie j¦zykiem z klasy SPACE(f (n)). Wtedy dla dowolnego ε > 0 zachodzi L ∈ SPACE(2 + εf (n)).

Jest to twierdzenie analogiczne do poprzedniego, które stwierdza,

»e staªe sie nie licz¡ równie» w przypadku ogranicze« pami¦ciowych.

(42)

Maszyny niedeterministyczne

Najciekawszym i istotnym dla dalszych rozwa»a« rozszerzeniem modelu Maszyny Turinga jest wprowadzenie niedeterminizmu do funkcji przej±cia.

Niedeterministyczna Maszyna turinga to taka, dla której mechanizm steruj¡cy mo»e, przy konkretnym stanie i odczycie ta±my post¡pi¢

na kilka ró»nych sposobów.

(43)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Denicja

Niedeterministyczna Maszyna Turinga to czwórka:

N = (Q, Σ, ∆, q0) gdzie:

Q  zbiór stanów

Σ zbiór dopuszczalnych symboli q0  stan pocz¡tkowy

natomiast

∆ ozdwierciedla fakt, »e NMT nie ma jednoznacznie wyznaczonej kolejnej operacji do wykonania, lecz ma mozliwo±¢ wyboru mi¦dzy kilkoma akcjami. Nie jest to funkcja jak do tej pory dziaªaj¡ca z (Qx Σ) → (Q ∪ {h, tak, nie})x Σx {←, →, −})

(44)

Oznacza to, »e dla ka»dej kombinacji stanu i symbolu mo»e istnie¢

wi¦cej ni» jeden kolejny, dopuszczalny krok, albo nie istnieje »aden.

Denicja

Mówimy, »e NMT akceptuje sªowo w je»eli ISTNIEJE taki ci¡g przej±¢, który ko«czy si¦ sªowem akceptuj¡cym.

Taka denicja akceptacji powoduje, »e zamiast traktowa¢ NMT jak zachowuj¡c¡ sie losowo, lepiej patrze¢ na ni¡ jak na maszyn¦, która sprawdza wszystkie mo»liwo±ci post¦powania.

(45)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Jest to bardzo istotna denicja, która daje NMT zdecydowan¡

przewag¦ nad innymi modelami. Sªowo wej±ciowe jest akceptowane, je»eli istnieje PEWIEN ci¡g niedeterministycznych wyborów, który doprowadza do stanu 'TAK'. Inne wybory mog¡ dawa¢ w rezultacie odrzucenie. Wystarcza tylko jedno mo»liwe obliczenie akceptuj¡ce, a sªowo jest odrzucane tylko wtedy, kiedy »aden ci¡g wyborów nie prowadzi do akceptacji.

(46)

Denicja

Mówimy, »e NMT rozstrzyga j¦zyk L w czasie f (n), gdzie f jest funkcj¡ z liczb naturalnych w liczby naturalne je»eli NMT rozstrzyga L i ponadto, dla dowolnego x ∈ Z, je»eli:

(s, 5, x ) →NMTk (q, w , u)to k ≤ f (|x|)

To oznacza, »e wymagamy by NMT rozstrzygaªa L i nie miaªa

±cie»ek oblicze« dªu»szych ni» f (n)

(47)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Podsumowuj¡c:

Czas i pami¦¢ zu»yt¡ przez maszyn¦ M, która zatrzymuje si¦ na sªowie w deniujemy nast¦puj¡co:

Czas wykonania NTIME(f (n)) jako liczbe kroków najdªu»szego z mo»liwych oblicze«

Pami¦¢ potrzebn¡ do obliczenia NSPACE(f (n)) jako

maksimum z liczby komórek potrzebnych w ka»dym mo»liwym scenariuszu obliczenia.

Zauwa»my, »e czas wykonania odpowiada wysoko±ci drzewa mo»liwych wykona«.

(48)

przykªad

(49)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Zbiór j¦zyków rozstrzygalnych przez NDMT jest nowym wa»nym rodzajem klasy zªo»ono±ci oznaczonej przez NTIME(f (n))

Najwa»niejsz¡ klas¡ zªo»ono±ci niedeterministycznej jest NP  suma wszystkich klad NTIME(nk)

Zauwa»amy natychmiast, »e :

P ⊆ NP

Powodem, dla którego maszyny deterministyczne tworz¡ podklas¦

maszyn niedeterministycznych jest fakt, »e s¡ to dokªadnie takie maszyny niedeterministyczne, dla których ∆ (relacja) jest funkcj¡.

(50)

NDMT nie jest rzeczywistym modelem oblicze«. Poj¦cie to wynikªo z potrzeby zdeniowania ±cisªego modelu matematycznego dla tak trudnego do ogarni¦cia zjawiska, jak wszystkie obliczenia, które istniej¡ b¡d¹ mog¡ si¦ pojawi¢ w praktyce.

Typowy problem sztucznej inteligencji i optymalizacji

kombinatorycznej polega na poszukiwaniu rozwi¡zania o najni»szym koszcie lub speªniaj¡cego pewne skomplikowane zale»no±ci w gronie wykªadniczo wielu potencjalnych rozwi¡za«. Maszyna

niedeterministyczna mo»e przeszukiwa¢ takie wykªadniczo du»e przestrzenie bez wiekszego wysiªku.

(51)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Na razie wiemy tyle:

P  klasa problemów, dla których istnieje wielomianowy algorytm rozwi¡zania na Deterministycznej Maszynie Turinga. np sortowanie elementów, algorytm euklidesa

NP  wielomianowy algorytm rozwi¡zania istnieje jedynie na niedeterministycznej MT, a rozwi¡zanie nie jest mo»liwe w

(52)

Ró»nica:

P → znalezienie rozwi¡zania ma mie¢ zªo»ono±¢ wielomianow¡

NP → sprawdzenie podanego z zewn¡trz rozwi¡zania ma mie¢

zªo»ono±¢ wielomianow¡

Przykªadowy problem:

Czy jakikolwiek podzbiór zadanego zbioru {−2, 6, −3, 72, 10, −11}

sumuje si¦ do zera?

Algorytm sprawdzenia wszystkich mo»liwych podzbiorów ma zªo»ono±¢ wykªadnicz¡ ze wzgl¦du na liczebno±¢ zbioru. Nie wiadomo zatem czy problem ten jest klasy P.

Na pewno natomiast uzyskawszy z zewn¡trz kandydata na rozwi¡zanie (np. {−2, 6, −3, 10, −11}) mo»na w liniowym, czyli równie» wielomianowym, czasie sprawdzi¢ czy sumuje si¦ do zera.

Jest to zatem problem NP.

(53)

Teza Churcha-Turinga Odmiany modelu Maszyny Turinga Co nale»y wiedzie¢?

Ka»dy problem P jest NP, jednak nie wiadomo czy istnieje problem NP nieb¦d¡cy P.

Jest to jedno z wielkich nierozwi¡zanych dotychczas zagadnie«

informatyki.

(54)

Co nale»y wiedzie¢ po tym wykªadzie?

Zna¢ i rozumie¢ znaczenie tezy Churcha-Turinga Omówi¢ odmiany modelu Maszyny Turinga - automat sko«czony, automat synchronizuj¡cy, wielota±mowa MT,niedeterministyczna MT

Klasa zªo»ono±ci  poj¦cie, problemy klas P (TIME) i NP (NTIME)

Cytaty

Powiązane dokumenty

W sta- nie akceptującym aby zaakceptować dane słowo musi być spełniony dodatkowy warunek, aby stos był pusty lub na stosie znajdował się tylko symbol startowy stosu Z..

Możliwy zatem do przyjęcia jest taki maszynowy model umysłu, w którym byłby on wprawdzie maszyną operującą rachunkiem zdań (np. wypowiedziami), lecz maszyna

Maszyna Turinga M =< S, Q, P, q 0 , F > jest determin- istyczna, jeśli dla każdej pary (stan, litera) (konfiguracji zawierającej takie podsłowo) istnieje co najwyżej

● Maszyny Turinga, które zawsze się zatrzymują się na każdym wejściu nazywamy maszynami. rozstrzygającymi lub maszynami z

wejściowych obliczenie maszyny zatrzymuje się w stanie akceptującym to zakładamy, że wynik obliczenia zapisany jest na taśmie.. przeciwnym przypadku, gdy maszyna wykonuje

Zbudować maszynę Turinga o dwustronnie nieskończonej taśmie, która dla wejścia w postaci niepustego łańcucha binarnego o dowolnej długości traktowanego jako liczba

Da się również zapisać w AR następujące zdanie metamatematyczne: „ciąg wyrażeń x, jest dowodem wy- rażenia χ”, w postaci: Dow AR ([x], [χ]), również tutaj

A także nieco dalej w przypisie: „Jednakże fakt, iż dwa tak dalece różne i (w opinii autora) równie naturalne definicje efektywnej obliczalności okazały się być