170 likes | 330 Vues
Neformalni opis Tjuringove mašine. Tjuringova mašina se sastoji od : b eskona čne trake koja je podeljena na ćelije; sadržaj svake ćelije može biti 0 ili 1
E N D
Neformalni opis Tjuringove mašine • Tjuringova mašina se sastoji od: • beskonačne trake koja je podeljena na ćelije; sadržaj svake ćelije može biti 0 ili 1 • glave koja se nalazi nad tačno jednom ćelijom; glava može čitati sadržaj svake ćelije, upisivati 1 ili 0 u ćeliju, pomerati se jednu ćeliju levo ili desno • indikatora stanja
Neformalni opis Tjuringove mašine • Tjuringova mašina se u svakom trenutku nalazi u jednom od konačno mnogo stanja • Skup svih stanja se obeležava sa: S={q0, q1, ...} • Mašinom upravlja program koji je sačinjen od konačnog niza naredbi oblika: qi s o qj • s je znak nad kojim se nalazi glava • o je oznaka operacije
Neformalni opis Tjuringove mašine • Operacije Tjuringove mašine: • o = 1, u ćeliju nad kojom se nalazi glava upisuje se 1 • o = 0, briše se sadržaj ćelije nad kojom se nalazi glava • o = L, glava se pomera jednu ćeliju ulevo • o = R, glava se pomera jednu ćeliju udesno
Neformalni opis Tjuringove mašine • primer: q5 0 1 q17q1 0 0 q2q0 1 R q0
Neformalni opis Tjuringove mašine • Da bi mašina radila deterministički, program ne sme sadržati više od jedne naredbe za svaku kombinaciju stanja qi i sadržaja s ćelije • primer: q1 1 1 q2 q1 1 L q3 • Kod nedeterminističkih mašina ovaj zahtev ne postoji
Neformalni opis Tjuringove mašine • Konvencije Tjuringove mašine: • stanje q0zovemo početno stanje; inicijalno se mašina uvek nalazi u početnom stanju • traka sadrži konačno mnogo ćelija u koje je upisan znak 1; ostale ćelije su prazne (sadrže znak 0) • reč se na traci prikazuje kao neprekidan niz ćelija koje sadrže znak 1; sa obe strane reči postoji bar po jedan blanko znak • na početku i na kraju programa, glava se nalazi iznad prve ćelije koja sadrži znak 1 • završno stanje se obeležava sa qz
Neformalni opis Tjuringove mašine • Konfiguracija Tjuringove mašine: • opis sadržaja trake, položaja glave, stanja mašine • Standardna konfiguracija: • traka je prazna ili sadrži konačno mnogo nepraznih reči razdvojenih sa po jednim blanko simbolom • glava je iznad prve ćelije trake koja sadrži znak 1 • na početku izvršavanja mašina se nalazi u stanju q0 • mašina prestaje sa radom kada dođe u stanje qz
Neformalni opis Tjuringove mašine • primer: • q0 1 R q0 • q0 0 1 q1 • q1 1 R q2 • q2 0 1 q3 • q3 1 L q3 • q3 0 R qz
Neformalni opis Tjuringove mašine • Šta se dešava ukoliko se glava nađe iznad ćelije za čiji sadržaj ne postoji naredba? • Moguće je program dopuniti naredbama koje ne menjaju ni stanje, ni poziciju glave, ni sadržaj ćelije • primer: q0 0 0 q0 • Ova naredba predstavlja beskonačnu petlju
Tjuringove mašine i funkcije • Aritmetička f-ja je preslikavanje za koje je: • Dom(f) Nk, k>0 • Im(f) N • Ako je k>0i Dom(f)=Nk, f je totalna f-ja • Ako je k>0, Dom(f) Nk i Dom(f)≠Nk, f je parcijalna f-ja • Unarna reprezentacija prirodnog broja n je reč koja sadrži n+1 znak 1
Tjuringove mašine i funkcije • Neka je f aritmetička f-ja, f:X→N, X N; f je Tjuring-izračunljiva ako postoji program P za Tjuringovu mašinu tako da za svako mєX važi: • pre početka izvršavanja programa P, Tjuringova mašina je u standardnoj konfiguraciji, na traci je zapisana jedino unarna interpretacija broja m • po završetku rada programa P, Tjuringova mašina je u standardnoj konfiguraciji, na traci je zapisana jedino unarna reprezentacija broja f(m)
Tjuringove mašine i funkcije • Sa P(x1, x2, ..., xk)↓y obeležavamo program P za koji važi: • polazi od standardne konfiguracije u kojoj traka sadrži unarne reprezentacije brojeva x1, x2, ..., xk • završava rad i mašina se nalazi u standardnoj konfiguraciji u kojoj traka sadrži unarnu reprezentaciju broja y • Oznaka P(x1, x2, ..., xk)↑ znači da ne važi P(x1, x2, ..., xk)↓
Tjuringove mašine i funkcije • Za program P kažemo da konvergira za ulaz x1, x2, ..., xk, ako važi P(x1, x2, ..., xk)↓ • Program P divergira za ulaz x1, x2, ..., xk ako je ispunjeno P(x1, x2, ..., xk)↑
Tjuringove mašine i funkcije • primer: Program za izračunavanje f-je f(x) = 0: • q0 1 0 q1 • q0 0 1 qz • q1 0 R q0 Program konvergira, t.j. P(x)↓0
Tjuringove mašine i funkcije • primer: Program za računanje sledbenika, f(x) = x´: • q0 1 L q0 • q0 0 1 qz Program konvergira, t.j. P(x)↓ x´
Tjuringove mašine i funkcije • primer: Program koji za fiksno k izračunava i-tu projekciju, f(x1, x2, ..., xk) = xi, 1 ≤ i ≤ k: • q0 1 0 q1 briše se • q0 0 R q2 zapis • q1 0 R q0 broja x1 ∙ ∙ ∙ • qj 1 0 qj+1 briše se • qj 0 R qj+2 zapis • qj+1 0 R qj broja xi-1 • qj+2 1 R qj+2 preskače se • qj+2 0 R qj+3 zapis broja xi • qj+3 1 0 qj+4 briše se • qj+3 0 R qj+5 zapis • qj+4 0 R qj+3 broja xi+1 ∙ ∙ ∙ • ql 1 0 ql+1 briše se • ql 0 L qs zapis • ql+1 0 R ql broja xk • qs 0 L qs vraća se • qs 1 L qs+1 na početak • qs+1 1 L qs+1 zapisa • qs+1 0 R qz broja xi
Tjuring-neizračunljive funkcije • Tjuring-izračunljivih f-ja ima prebrojivo mnogo • svaki program je konačan niz naredbi • svaka naredba je konačan niz simbola iz nekog prebrojivog skupa • postoji prebrojivo mnogo programa • Postoje f-je koje nisu Tjuring-izračunljive • aritmetičkih f-ja ima neprebrojivo mnogo