mașină Turing

Curs 13.Mashina Turing. Calculabil funcție (recursiv). Funcții recursive universale.

Încercările de a formaliza noțiunea de algoritm a dus la crearea unei mașini Turing. ca unele aparate de imaginat întruchipând algoritmul. Presupunem că algoritmul trebuie să se confrunte cu un set numărabilă de obiecte este de a alege una dintre ele, care îndeplinesc condițiile specificate. Astfel, algoritmul poate identifica funcția (în general, parțial)

mașină Turing
Să ne amintim că o funcție parțială numită „funcția“
mașină Turing
care nu poate fi definit pentru toate valorile argumentelor. multe
mașină Turing
Presupunem o numărabil ca pe un set finit are întotdeauna un algoritm pentru rezolvarea oricărei probleme matematice (de exemplu, ea poate fi rezolvată prin căutare exhaustivă a tuturor variantelor posibile), precum și pentru un set de nenumărat de greu să se gândească la un dispozitiv mecanic care convertește datele brute și lucrează în timp discret (moderne calculatoare, producând o acțiune pe numere reale, de fapt, să opereze cu aproximări lor de mașină). exemple care ilustrează aceste argumente evidente yavlyayutsyaalgoritm Euclid găsi cel mai mare divizor comun a două numere întregi algoritm numere de multiplicare „într-o coloană“ diviziune „zonă,“ n-lea calcularea unui număr prim, etc. - toate aceste probleme sunt rezolvate de către o mașină Turing, care va fi dedicat la secțiunea următoare.

Un alt pas în dezvoltarea unei teorii a apariției funcțiilor recursive. ca funcții de formalizare a conceptului de algoritm și de punere în aplicare noțiunea intuitivă de calculabilitate. Sa stabilit în curând că setul de funcții recursive este setul de funcții de calcul de mașini Turing. Apar apoi noi concepte care pretind să explice conceptul algoritmului sunt funcții echivalente calculabile de mașini Turing, și, prin urmare funcțiile recursive. Rezultatul discuției despre ceea ce este algoritmul, este afirmația numită acum teza lui Church.

Teza bisericii. Conceptul de algoritm, calculabilitate sau un dispozitiv mecanic, coincide cu noțiunea de calculabilitate pe mașini Turing (ceea ce înseamnă că noțiunea unei funcții recursive).

Această afirmație nu poate fi considerată o teoremă matematică. Ea are unele teze naturale-știință, acceptată de majoritatea cercetătorilor.

mașină Turing la fel ca o mașină de stat, dispozitiv discret este informația de conversie. Să ne da o definiție precisă, și apoi interpretarea operei sale.

mașină Turing se numește maparea parțială

aici

mașină Turing
înseamnă „stânga“, „dreapta“. Faptul că maparea
mașină Turing
mijloace parțiale
mașină Turing
Acesta nu poate fi determinată pentru toate seturile de argumente. mașină Turing
mașină Turing
operează cu o bandă fără sfârșit pe ambele părți, împărțit în celule, fiecare dintre acestea fiind scrise de unul dintre simbolurile 0 și 1. Cap citire Mașina trece cu vederea la fiecare punct de timp și una dintre celule într-un ciclu, se înlocuiește cu două puncte succesive de timp, poate fi mutat la stânga sau dreapta. Turing mașină la fiecare punct de timp stocat într-unul din statele
mașină Turing
și în momentul următor timpului merge într-o stare diferită sau rămâne aceeași. În plus, aparatul poate schimba caracterul, în picioare în celulă observată. Toate aceste schimbări - schimbare de stat, informația de pe banda, direcția de mișcare sunt complet determinate de afișaj
mașină Turing
Și anume, eslito când aparatul se află într-o stare
mașină Turing
și pe simbolul celulei scrise in prezent au realizat studii
mașină Turing
aparatul trebuie să fie scrise în celulă
mașină Turing
în loc de
mașină Turing
du-te să declare
mașină Turing
și pentru a muta o yacheykuvlevo. În cazul în care aceeași procedură va fi urmat sdvigomvpravo. De exemplu, egalitatea înseamnă că, într-o stare
mașină Turing
și cu vedere la celula în care simbolul scris 1, aparatul ar trebui să fie stocate în acest simbol locatie 1, muta spre dreapta și du-te în starea
mașină Turing
În cazul în care, cu toate acestea,
mașină Turing
nu este definit, atunci aparatul este într-o stare
mașină Turing
și cu vedere la celula cu simbolul
mașină Turing
se închide fără a schimba starea lor, informații pe bandă și să nu se deplaseze.

Există diferite modificări ale mașinii Turing (o mașină de Postul Mare, mașină Minsky, etc). Unele modificări includ simbolurile de pe banda nu este 0 sau 1, iar literele unui alfabet finit Unele definiții sunt permise, nu numai la trecerea de la stânga sau la dreapta a capului mașinii, dar lăsând în aceeași poziție. Cu toate acestea, diferite modificări ale mașini Turing sunt echivalente, în sensul că clasele de funcții calculabile pe aceste mașini sunt aceleași.

Este clar că nici un dispozitiv fizic nu poate fi o bandă fără sfârșit. Prin urmare, este mai bine să te cred că banda de mașină Turing ca potențial infinit. și anume ca la sfârșitul anului la care se poate „lipici“, pe de o parte și pe celelalte piese de câte ori este necesar.

Definiția unei mașini Turing, la începutul acestei secțiuni, este incomod de utilizat. Mai convenabil pentru a înregistra un program. care conține toate informațiile cu privire la funcționarea mașinii (stabilind astfel aparatul utilizând afișajul și utilizarea programului sunt echivalente). Să ne descrie pregătirea programului. Pentru fiecare ecuație a formei în care

mașină Turing
condiția camerelor,
mașină Turing
direcție și
mașină Turing
simbolurile de pe bandă, scrie șirul
mașină Turing
și apel eokomandoy. Totalitatea tuturor echipelor - acesta este programul. dacă
mașină Turing
nu este definit, programul nu are nici o comandă care începe cu
mașină Turing
În plus, pentru orice
mașină Turing
programul nu are mai mult de o echipă, începând cu
mașină Turing

Exemplu. Am construi o mașină Turing care, cu două rețele de unități separate de zerouri pe bandă, umple aceste zerouri și cele oprește la ultima unitate de-a doua matrice.

Algoritmul poate fi scris cu cuvintele:

Pasul 1: Se trece primul șir de unități, găsi o serie de zerouri, merge după ea și să înlocuiască primul zero al unității;

Pasul 2: du-te printr-o serie de zerouri, înlocuindu-le cu unități, atâta timp cât a doua matrice de unități vor fi afișate;

Al treilea pas: pentru a trece oa doua serie de unități și se opresc la sfârșitul anului.

mașină Turing de punere în aplicare a algoritmului are următorul program:

mașină Turing

mașină Turing

Având în vedere a mașinii de Turing bandă fără sfârșit a puterii sale de calcul cu mult dincolo de capacitatea unei mașini de stare finită. În special, deoarece aparatul are o memorie finită, atunci secvența de ieșire este întotdeauna periodică în cazul în care intrarea este periodică. În schimb, nu este dificil de a veni cu o mașină Turing, care începe să lucreze pe bandă goală, va genera o secvență (adică, pe bandă, toate celulele ale căror zerouri sunt scrise) (matrici de unități sunt de lungime 1, 2, 3), iar acest lucru secvență nu este periodică.

Vom apela numere naturale acest capitol numere întregi nenegative, adică Numărul acceptat 0 este un număr natural. Astfel, N set de numere naturale. Ca pe un număr întreg de marcaj bandă

mașină Turing
O modalitate (si o vom folosi aici) este că numărul de
mașină Turing
codificată de secvența de
mașină Turing
unități (și anume
mașină Turing
și nu
mașină Turing
nu trebuie confundat cu numărul 0 lipsa de informații). Astfel de informații pe bandă vor fi notate
mașină Turing
De exemplu, set ordonat
mașină Turing
numere naturale vor fi codificate după cum urmează: acum Definim sensul funcțiilor calculabile
mașină Turing
mașină Turing
mașină Turing

Noi spunem că o mașină Turing

mașină Turing
calcularea functiei
mașină Turing
în cazul în care pentru orice set
mașină Turing
mașină de numere întregi
mașină Turing
Suntem capabili să
mașină Turing
și cu vedere la unitatea restabilește stânga dacă și numai dacă valoarea
mașină Turing
determinată la sfârșitul lucrărilor pe bandă care urmează să fie înregistrate. 0
mașină Turing
0 și capul de citire al aparatului este de a sta în fața celei din stânga.

Astfel, dacă, de exemplu,

mașină Turing
noi trebuie să avem

și dacă

mașină Turing
nu există, atunci aparatul se execută pe munca lentedolzhna pe termen nelimitat (presupunând că starea inițială
mașină Turing
Iar la previzibil momentul inițial celula - cea mai din stânga unul.

Dacă informațiile de pe banda nu arata sau nu starea inițială

mașină Turing
sau examinat celule - nu cel mai din stânga unul, comportamentul mașinii poate fi orice.

Exemplu. Mașină, setați următoarele calculează de program

mașină Turing

articole similare