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
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.
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.
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.
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.
Dlaczego zatem powinni±my wierzy¢ tej tezie, szczególnie je»eli nie mo»na jej udowodni¢?
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.
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¢.
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).
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.
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.
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.
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 SKOCZENIE STANOWYM lub AUTOMATEM SKOCZONYM.
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.
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.
S0 →0 S0 S0 →1 S1 S1 →0 S2 S1 →1 S0 S2 →0 S1 S2 →1 S2
0 1
S0 S0 S1 S1 S2 S0 S2 S1 S2
1100(12), 1110(14), 111110010(498)?
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.
S0 →0 S0 S0 →1 S1 S1 →0 S2 S1 →1 S0 S2 →0 S1 S2 →1 S2
0 1
S0 S0 S1 S1 S2 S0 S2 S1 S2
1100(12), 1110(14), 111110010(498)?
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.
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.
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óª.
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.
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.
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.
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.
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
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, →)
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¦
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, −)
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.
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.
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.
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.
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)
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
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.
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.
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.
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
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.
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.
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.
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.
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.
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 {←, →, −})
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.
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.
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)
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«.
przykªad
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¡.
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.
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
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.
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.
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)