Turing-gép

Entscheidungsproblem azaz eldönthetőségi probléma[1] lehetséges-e általános algoritmust adni a matematikai problémák megoldására, vagy egyáltalán létezhet-e elvileg ilyen algoritmus?[2]

A Turing-gép fogalmát Alan Turing angol matematikus dolgozta ki az 1936-ban megjelent On Computable Numbers, with an Application to the Entscheidungsproblem című cikkében[3][4] a matematikai számítási eljárások, algoritmusok precíz leírására, tágabb értelemben pedig mindenfajta „gépies” problémamegoldó folyamat, automatikusan végrehajtható számítás, például az akkoriban még nem létező számítógépek működésének modellezésére. Erre az időszakra, a második világháború környékére tehető az ilyesfajta, a számítási eljárásokat azok különféle modelljein keresztül vizsgáló kutatások fellendülése, melyek végül a valódi számítógépek fejlesztésének máig tartó folyamatát elindították (Turing maga is részt vett egy valódi gép, a Colossus megépítésében).[5]

A Turing-gép úgynevezett absztrakt automata: a valóságos digitális számítógépek nagyon leegyszerűsített modellje (részletesebben ld. következő fejezet). További jelentőségét az ún. Church–Turing-tézis adja, amely szerint a Turing-gép egy univerzális algoritmikus modell (ld. lentebb). Az ilyen egyszerű számítógépmodellek matematizált elméleteivel a matematika számítástudománynak nevezett eléggé fiatal tudományágának olyan részterületei foglalkoznak, mint például a számításelmélet.

A fogalom értelmezései, modelljei

Egy Turing-gép művészi ábrázolása. A Turing-gép egy absztrakt automata, ami egy végtelen nagy tárolókapacitással rendelkező, bármilyen hosszú ideig futni tudó »célszámítógép« , mellyel egyetlenegy beépített program hajtható végre[6]

Ha elfogadjuk igaznak azt a kijelentést, hogy a Turing-gép nem más, mint az egyszerű számítógépek modellje, a Turing-gép kifejezésen még mindig két különféle, bár szorosan összetartozó dolgot is érthetünk, és általában szokás az is, hogy a kifejezésbe mindkét értelmet egyszerre belelássuk (de ez nem szükséges és nem is minden szerző teszi):

  • A nem formális informatikai modell: A Turing-gép jelentheti az egyszerű számítógépek informatikai modelljét. Ebben a felfogásban a Turing-gépet olyan fizikailag is megvalósítható egyszerű automata formájában szokás interpretálni, mely három, fizikailag létező tárgyként elképzelt, hardveres egységből áll: a szalagtárból (memória és input-output-perifériák), a vezérlőegységből (CPU) és az író-olvasó fejből (buszrendszer). Itt látszik, hogy a Turing-gép mennyire hasonlít a számítógépek felépítéséhez.
  • Matematikailag a Turing-gépet mint egy öt-tíz elemből álló halmazrendszert szokás definiálni. Ebben az esetben a „hardveres” interpretáció elhagyható, és a Turing-gép és a vele kapcsolatos fogalmak elmélete formális elméletként közölhető (a részleteket ld. később).

A matematikai modell és egy valós gép között az a lényeges különbség van, hogy a fizikai gépek memóriája véges. Egy érdekes lehetőség, hogy a fizikai és az absztrakt modell is szimulálható akár egyszerű PC-k segítségével is.

A klasszikus Turing-gép informatikai modellje

A Turing-gépnek rengetegféle változata van, e szócikk az ún. klasszikus változattal (teljes nevén szalagtáras, egyszalagos, egyfejes, relatív címzésű, három címes, statikus programozású, véges ábécéjű, véges (állapotú) determinisztikus absztrakt automata) foglalkozik. Bizonyított matematikai tételek szerint a többi változat nagy része ekvivalens a klasszikus változattal – legalábbis ama tekintetben, hogy mit tud kiszámolni.

Ahogy fentebb mondtuk, e felfogásban a Turing-gépet fizikailag is megvalósítható egyszerű automata formájában képzeljük el, mely

  • három nagyobb fizikai egységből („hardver”) áll:
  1. egy cellákra osztott végtelenített papírszalag formában létező memóriából (szalagmemória, szalagtár, társzalag); minden cellában a gép által megértett nyelv betűi, azaz a Tár-abc egy-egy betűje van írva;
  2. egy vezérlőegységből, mely a gép programját tartalmazza; a vezérlőegység különböző időpillanatokban különféle belső állapotokban létezhet;
  3. egy író-olvasó fejből (I/O-fej), mely szimbólumokat ír vagy olvas a szalag celláira (ahogy a valóságos számítógépek betűket írnak ki a monitorra vagy a nyomtatóban lévő papírívre).
  • továbbá egy „szoftveregységből”, ez az átmenettábla, ami vezérli a gép működését, megadva, hogy adott szimbólum beolvasásának hatására adott állapotban mit tegyen: hogyan mozogjon, milyen szimbólumot írjon a tárra, és milyen belső állapotba kerüljön.
A Turing-gép sémája
A Turing-gép sémája

A Turing-gép működése: A Turing-gépnek minden időben van egy aktuális pozíciója a memóriaszalagon, amely pozíciónál az aktuális cella helyezkedik el. Minden időben van egy állapota, amely az aktuális állapot. Az aktuális állapotok definiálása része a gép programozásának.

A gép minden lépésben beolvas egy szimbólumot a társzalag aktuális cellájából, ezután a program attól függően, hogy az aktuális állapota milyen és a beolvasott szimbólum a gép ábécéjének melyik betűje, a következő három lehetőség közül az egyiket írja elő:

  • 1). az aktuális cellába beír egy meghatározott szimbólumot,
  • 2). az olvasófej a társzalagon balra vagy jobbra lép, esetleg helyben marad,
  • 3). a gép (vezérlőegysége) átvált az éppen aktuális állapotból (amelyben éppen van) egy másikra (az új állapot persze lehet ugyanaz, mint az aktuális). Egy speciális állapot a „stop-állapot”, amely után a Turing-gép a programozása szerint megáll.

Az időbeli lefutást leírva a gép beolvas, változtat, mozog, és aztán ez a ciklus újra kezdődik: azon a cellán, amelyre mozgott, ismét beolvas, változtat, majd lép. Így megy ez, s eme folyamatnak a gép programozásától és az elvégzendő feladattól függően kétféle kimenetele lehet:

  1. Szabályos megállás (terminálás): a gép leálló belső állapotba („stop-állapot”) kerül;
  2. Elszállás”: a gép végtelen ideig fut. A legegyszerűbb módon ez úgy lehetséges, hogy egy végtelen ciklusba kerül, de más módon is futhat végtelen ideig, mert egyszerűen sosem kerül stop állapotba.

A formális, matematikai modell

Alapelemek

Matematikailag a klasszikus Turing-gép, Turing-program vagy Turing-algoritmus egy □,  elemkilencessel (matematikai nevén egy kilenctagú elemrendszerrel) írható le, ahol

  1. a (külső) input-abc; az input-tárjelek halmaza;
  2. a (külső) output-abc; az output-tárjelek halmaza;
  3. az állapothalmaz vagy belső abc;
  4. a címek (címjelek) halmaza, melyek azt írják le, a gép a szalagon merre lép. Mindegy, hogy jelöljük őket, például legyen ;
  5. a startjel vagy kezdőszimbólum (esetleg startszimbólum), ;
  6. az üres szimbólum, ami a szalag memóriacelláinak üres, szimbólummentes állapotát jelképezi, ; ezt nyomdatechnikai okok miatt néha -val jelöljük;
  7. a kezdőállapot;
  8. egy parciális (néha totális) függvény,
  9. az elfogadó vagy végállapotok halmaza.

Kötelezően feltesszük, hogy ha egy felhasznált szimbólum állapotjel, akkor nem lehet tárjel vagy címjel, és viszont, azaz hogy .

Nyugodtan feltehető viszont (nem kötelezően, de megszorítást vagy lényegi, matematikai különbséget csak ritkán okoz), és az egyszerűség kedvéért általában fel is szokás tételezni, hogy egyrészt az input ábécé és az output ábécé megegyezik – a Turing gép „homogén”, mégpedig háromelemű: az „üres szimbólumot”, és mondjuk a 0-t és az 1-et tartalmazza. Az ilyen gépeket bináris bemenetű Turing-gépeknek nevezzük. Matematikailag ez azt jelenti, hogy . A legtöbb esetben azonban még célszerűbb a bővített bináris bemenetű Turing-gépeket vizsgálni: ezek ábécéje a fenti szimbólumokon kívül még egy * „elválasztójelet” is tartalmaz.

A gép működésének formális leírása

A kétváltozós és háromértékű átmenetfüggvény biztosítja, hogy ha a gép valamely működési fázis elején adott állapotban adott szimbólumot olvas be az aktuális cellából, akkor egyértelműen rendelkezésére álljon egy cellacím, egyértelműen kiírhasson egy outputszimbólumot abba cellába, ahová a cím szól, és egyértelműen átválthasson egy másik állapotba, tehát tényleg az átmenetfüggvény vezérli a gépet, hisz ez szabja meg a viselkedését, hogy milyen bemenetre milyen kimenetet ad.

A formális Turing-gép működésének matematikai lényege, hogy az egyes elemi működési fázisok mindegyikében, a kiinduló fázistól kezdve egészen a végső fázisig (ha van ilyen), a gép egy véges elemrendszerrel jellemezhető, ti. minden fázisban a gép egyértelműen jellemezhető az általunk megadott állapotjellemzőkkel, ezek:

  • az aktuális cella tartalma, az aktuális szimbólum;
  • az aktuális állapot;
  • az előbbi kettő hatására (ti. függvényében) létrejövő output-szimbólum;
  • az első kettő hatására létrejövő címzés;

E négy jellemző összessége (matematikailag természetesen egy négytagú elemrendszer, azaz rendezett elemnégyes) a Turing-gép aktuális konfigurációja. A gép működése során egy véges vagy végtelen, megszámlálható tagú konfigurációsorozat jön létre. Míg a Turing-gép, azaz egy algoritmus a Turing-gépek elméletében matematikailag egy formális elemnyolcas, addig a gép működése, vagyis egy-egy számítási eljárása, azaz az algoritmus egy konkrét megvalósulása semmi más, mint ez a megszámlálható tagú konfigurációsorozat.

Irodalmi megjegyzések, elnevezésváltozatok

A rövidítések és jelek szinte szerzőről szerzőre változnak, a mi motivációink a következők: a nagy „lambda” görög betűk az angol letters (=betű) szó kezdőbetűjére utalnak; a nagy „szigma” görög betű az angol state (=állapot) szó kezdőbetűjére, az -beli szimbólumok a leolvasófej lehetséges mozgásirányaira ( jelöli a helybenmaradást), a kis „szigma” görög betű pedig arra, hogy ez a startállapot; a görög „nagy fí” betű pedig a „final state” (=végállapot) angol kifejezés kezdőbetűjére. Az átmenetfüggvényt néha vezérlőfüggvénynek, állapotfüggvénynek is nevezik, és a legtöbb szerző a külső abc-t nem lambda-, hanem nagy szigmával (symbols) jelöli.

Példák

Összeadás az egyes számrendszerben

Az egyes számrendszerben minden pozitív egész számot felírhatunk egyesek (vonások, vagy valamilyen rögzített egyéb szimbólum) segítségével úgy, hogy annyi egyest írunk, ahányadik a szám a pozitív egészek 1, 2, 3, … sorozatában. Pl. érvényes.

Könnyű azt a formális Turing-gépet és átmenetfüggvényét elkészíteni, amely kettő vagy több egyes számrendszerbeli számot összead a következőképp: a gép szalagjára fel van írva két szám mint egyesek sorozata, úgy, hogy őket néhány * elválasztó szimbólum választja el. A gép „összeadja” ezeket a számokat egyszerűen úgy, hogy „egyesíti” a sorozatokat, kitörölve a köztük lévő elválasztójeleket.

Összeadó algoritmus megvalósítására több konkrét lehetőség is van. Egy ilyen Turing-gépet a következőképp tervezhetünk meg:

A következő feltevésekkel élünk: a gép leolvasófeje kezdetben mindig a szalagon balról az első nem üres, azaz 1-est tartalmazó cellán álljon, a számokat mindig egy * karakter válassza el, és az utolsó számot az jelzi, hogy utolsó 1-ese után csupa üres szimbólum következik, a legbaloldalibb és legjobboldalibb 1-esek közt pedig csupa egyes vagy * álljon, üres cella ne legyen. Ilyen tehát az input.

A gép a kezdőállapotban () megkeresi az első elválasztójelet (*), ha megtalálja, átvált a állapotba, átírja 1-essé, és visszalép a számsorozat első 1-ese előtti üres celláig. Ekkor állapotba lép, törli az első 1-est. Tehát az egész összeadandó sorozat eddig a legbaloldalibb egyessel csökkent, de közben az első csillag 1-esre változott, így az első két számot összeadtuk. A gép lépjen eggyel jobbra: ott szükségképp 1-est talál. Most majdnem ugyanaz a helyzet, mint kezdetben: az összeadandó számsor legbaloldalibb egyesén állunk, és össze kell adnunk a még összeadandókat (csak két szám már össze van adva, ennyivel közelebb a megoldás). Mivel ez tulajdonképp majdnem megint a kiinduló helyzetünk, „menjünk vissza alfába”, keressük meg a következő *-ot, ezt „bétában” írjuk felül 1-essel, „gammában” pedig töröljünk egy egyest a számsorozatunk elejéről. Ez a ciklus addig folytatódik, amíg az utolsó csillag el nem fogy: ezt a gép úgy tudja érzékelni, hogy az állapotban jobbra lépkedve nem csillagba, hanem a sorozat végén lévő üres cellába ütközik. Ekkor váltsunk állapotba, mely a befejezendő állapot. Összeadtuk az összes számot.

Tehát Turing-gépünk, kereszteljük UNAD-1 névre, matematikailag egy nyolcas, ahol , ,

A gép átmenetfüggvényét táblázat alakban ábrázolva:

1 *
α (□, ω, ↓) (1, α, →) (*, β, ↓)
β (□, γ, →) (1, β, ←) (1, β, ←)
γ (□, α, →)
ω STOP

A gép ábécéje tehát három szimbólumból áll, és négy állapotot használ. Valójában sem időkihasználás, sem összetettség tekintetében nem ez a legjobb algoritmus, de nem foglalkozunk a javításával. Egyébként elvileg nem nehéz jobb algoritmust keresni: az ezen háromelemű ábécé feletti legfeljebb négy állapotú „nem-izomorf” Turing gépek (azaz a definiálható átmenetfüggvények) száma mindenképp véges, tehát „pusztán” az összes definiálható átmenetfüggvényt kell végignézni, hogy működik-e a fenti inputfeltételek mellett (egy durva becslés: a megvizsgálandó Turing-gépek száma biztosan kisebb mint


, tehát kb. százbillió Turing-gépnél többet biztosan nem kell megvizsgálnunk.

A Turing-algoritmusok megszámlálhatóak és felsorolhatóak

Az előbbi kiszámolt eredményre a következőképp lehet jutni: adott véges n elemű ábécé feletti 1<k-állapotú Turing-gép egyértelműen megadható egy átmenetfüggvénnyel. Ez olyan táblázat, melynek n oszlopa és k sora van, tehát n×k cellája. Minden cellában az átmenetfüggvény egy lehetséges értéke áll, egy elemhármas, mely egy külső, egy belső és egy címszimbólumból álló rendezett elemhármas, ilyen pedig n×k×3 db. van. Mármost bármely cellába elvileg bármely lehetséges elemhármas beírható (persze az így kapott átmenetfüggvények többsége olyan gépet eredményez, ami semmi értelmeset nem csinál, például ha minden kimenő állapot stop-állapot, de bizony ez is egy Turing-gép), tehát n×k×3 elem n×k-adosztályú variációjáról van szó. Ezek száma pedig (n×k×3)n×k. A becslés javítható, ha a stop-állapotot nem számítjuk külön sornak (mert ha a gép stop-állapotba kerül, akkor már nem számít ki több átmenetfüggvény-értéket, az stopnak megfelelő táblázatsor üres), az így kapott eredmény n×k×3n×(k-1). Azért is érdemes ezt részletesen taglalni, mert észre lehet venni mindebből, hogy az adott ábécé feletti izomorf Turing-gépek (ti. ezek osztályai) felsorolhatóak, vagyis adott ábécé felett megszámlálhatóan végtelen sok nem-izomorf (Turing-) algoritmus létezik!

A klasszikus Turing-algoritmusok matematikai osztályzása

Formális ekvivalencia

Két

és

Turing algoritmust izomorfnak nevezünk, ha léteznek olyan

,

és

bijektív függvények, melyekre tetszőleges , , , , , , esetén teljesül .

A formalizmust félretéve, itt arról van szó, hogy ugyanúgy programoztuk a Turing-gépet, csak az állapotokat és esetleg az I/O szimbólumokat máshogy neveztük el.

Egyéb osztályzási módszerek

Rengeteg másféle ekvivalencia is definiálható, alapjául szolgálva a gépek további osztályzásának. Például vizsgálható, hogy az inputjelekből képezett összes véges sorozatok közül melyek azok, melyeket egy véges automata elfogad (ti. inputként adva ezt a sorozatot a gépnek, az szabályosan terminálni fog-e). Az ilyen véges ábécé betűiből álló betűsorozatok (nem biztosan véges) halmazát az automata által elfogadott nyelvnek nevezzük a ábécé felett, két Turing-automatát pedig ekvivalensnek nevezhetünk, ha ugyanazt a nyelvet fogadják el (sőt, nem is kell mindkettőnek klasszikus Turing-gépnek lennie, például lehet az egyik egy Neumann-automata, a másik egy nemdeterminisztikus Turing-gép is stb.). A számításelmélet ezen kívül foglalkozik a gépek időigény, tárigény vagy egy véletlenszám-generátor-igénybevétel szerinti osztályzásával is.

A Church–Turing-tézis

A Church–Turing-tézis egy, az 1930-as években megfogalmazott sejtés, miszerint minden formalizálható probléma, ami megoldható algoritmussal, az megoldható Turing-géppel is; azaz a Turing-gép a feladatmegoldó eljárások legáltalánosabb és a fenti értelemben legerősebb példája. A sejtést azért nem tételnek, hanem csak (hipo)tézisnek nevezik, mert nem matematikai tétel, ugyanis a „feladatmegoldó eljárás” nem mint definiált matematikai fogalom szerepel. Ugyanakkor szintén a harmincas években a „feladatmegoldó eljárás” fogalmát számtalan alakban sikerült formálisan megfoghatóvá tenni, de kiderült, hogy ezek a megfogalmazások is ekvivalensek a Turing-gépre épülő eljárásfogalommal. Ez azt jelenti, hogy a Turing-gép egy univerzális algoritmikus modell. Maga a Turing-gép tekinthető az algoritmus egy definíciójának. A tézis összefügg az erős mesterséges intelligencia elvi létével ill. lehetetlenségével is (vagyis, hogy az olyan szellemi minőségek, mint pl. az értelem, érzelem, gondolkodás; vajon csupán az algoritmusok tulajdonságai és elválasztható a hardvertől, vagy sem.)

Nem ismerünk olyan algoritmikus rendszert, amelyről tudnánk, hogy erősebb a Turing-gépnél, és a legtöbb algoritmikus rendszerre bizonyított, hogy gyengébb, vagy ekvivalens.

A bizonyítottan Turing-ekvivalens algoritmikus rendszerek a következők:

Avagy a Parciálisan rekurzív függvény szócikk alatt:

A Church–Turing-tézis vagy Church-tézis az az állítás, hogy a parciálisan rekurzív függvények pontosan az (algoritmussal) kiszámítható függvények. Ez matematikailag ellenőrizhető állítássá válik, ha az algoritmussal „kiszámíthatóság” homályos fogalma helyett bármilyen más matematikailag precízen megadott függvényosztályt vizsgálunk, így igazolható például, hogy a parciálisan rekurzív és a Turing-géppel kiszámítható függvények egybeesnek.

Történelem

A múlt…

Turing 1936-ban dolgozta ki a Turing-gép fogalmát egy cikkében (On computable numbers, with an application to the Entscheidungsproblem). Az algoritmusok matematikai leírásán túl, e problémát általánosítva a logikai és a fizikai folyamatok, gondolkodás és cselekvés szintézisére törekedett. E célt szolgálta az úgynevezett (egyetemes vagy) univerzális Turing-gép teóriája. Ekkor merült fel az a máig nagy vitákat kiváltó kérdés, lehet-e hűen szimulálni, modellezni, sőt esetleg reprodukálni számítógép segítségével az emberi gondolkodást. Ha a gép társzalagja(i) elegendő hosszúságú(ak), bármi kiszámolható; az összes (jól meghatározott) feladat egyetlen (a szükséges programokkal ellátott) géppel. De hogyan rendszerezhetők, milyen szabályok alapján működnek a valóság matematikailag rendkívül nehezen vagy egyáltalán nem modellálható (uncomputable) szegmensei, például az emberi intuíció? E kérdésekre egy 1938-as esszében (Ordinal Logics) próbált választ adni, a későbbiekben viszont soha többé.

A második világháború táján több más, Turingtól függetlenül dolgozó szerző (például S. C. Kleene, A. Church, A. A. Markov, G. H. Mealy, Neumann János) is hasonló gondolatok kidolgozásán fáradozott. Máig Turing koncepciója a leginkább kutatott és oktatott, legalapvetőbbnek tekintett algoritmusmodell. A negyvenes években, elektronikai ismeretekkel felvértezve, Turing az elméleti számítógép gyakorlati megvalósításán, a Colossus megtervezésében és építésében munkálkodott, az angol titkosszolgálat kötelékében. Ez időszakban egyébként többen is építettek már számítógépet (az első digitális gépet Vincent Atanasoff és Clifford Berry, ill. az első programozható digitális gépet Konrad Zuse).

Ekkoriban már nem elsősorban az foglalkoztatta, hogy mire képtelen a Turing-gép, hanem a benne rejlő lehetőségeket tanulmányozta. „Mintha egy agyat építenénk” – nyilatkozta. Elképzelhetőnek tartotta, hogy a jövőben (az ezredfordulóig bezárólag) mesterséges intelligenciát (MI) hozzunk világra, amely átmenne a Turing-teszten. A korabeli neurológia eredményeire támaszkodva a mai neuronhálózatokat előlegező elméletet vázolt fel: ha egy mechanikus rendszer kellően komplex, akár a tanulás képességével is bírhat.

Egy automata Post és Turing szerint nem más, mint egy feketedoboz, amely véges sok állapottal rendelkezik. Számukra az volt a fontos, hogy leírják, milyen módon megy át az automata egy i-edik állapotából a j-edik állapotába. Az állapotváltozás a környezettel való kölcsönhatás révén jön létre, amelyet egy szalag reprezentál, amelyen a gép a fentebb már leírt módon lépked, olvas és ír. Turing bináris számjegyekből álló végtelen sorozatokat vizsgált, s arra a kérdésre keresett választ, hogy mely sorozatok állíthatóak elő. Az előállító szabálysor véges hosszúságú, az automata futási ideje végtelen, így állítva elő a végtelen jelsort. A Turing által bizonyított eredmény érdekes és váratlan volt. Egyrészt kiderült, hogy létezik univerzális automata, amely minden speciális géppel előállított sorozatot szintén képes előállítani, másrészt megmutatta, hogy minden speciális automata leírható véges hosszúságú utasítássorozattal. Ez az eredmény Neumann Jánost nagyon izgatta és 1947-ben erejét két területre kezdte el koncentrálni: egyrészt az önreprodukálásra képes berendezésre, másrészt a hibás alkatrészekből előállítható berendezések optimalizálására.

A jövő?…

A jövőben a Turing-gépek eszméje esetleg különféle matematikai és informatikai kiszámíthatósági paradigmák (például az algoritmusok párhuzamosítása) konkrét és gyors megvalósításához is használható lesz – elvben – mivel az információhordozó DNS- és RNS-molekulák mint négybetűs társzalag, az őket kezelő enzimrendszer mint leolvasófej, és maga a sejt mint CPU tekinthetőek akár egy iszonyatosan gyorsan működő, és párhuzamosan kapcsolható (több sejt együtt) Turing-gépnek is. Elvben, mivel a géntechnológia és nanotechnológia nem áll azon a színvonalon, hogy tetszőleges összetételű és mennyiségű polinukleinsav-molekulákat, azaz tetszőleges inputot könnyen előállítsunk.

Változatok

  • A Turing-féle automaták lehetnek determinisztikusak (DTG: determinisztikus Turing-gép) és indeterminisztikusak (N(D)TG: nem-determinisztikus Turing-gép). Az első esetben az átmenetfüggvény valódi függvény (balról jobbra egyértelmű reláció); a második esetben viszont egy általánosabb reláció. Megjegyezzük: annak ellenére, hogy az indeterminisztikus Turing-gépet már Turing is említi dolgozatában („non automatic” machine), később nem tekintették Turing-gépnek, és azt mondták, egy absztrakt automata alapértelmezés szerint véges állapotú és determinisztikus, de az utóbbi időben, a számításelmélet indeterminisztikus gépekre vonatkozó ágai olyan fejlődésnek indultak, hogy újabban az absztrakt automata fogalmába megint szokás beleérteni azt is, hogy az nem feltétlen determinisztikus.
  • A klasszikus modell programozása statikus: ez azt jelenti, hogy működés közben nem módosul. A mesterséges intelligencia kutatói azonban vizsgáltak már dinamikusan programozott (azaz önmódosító) Turing-gépeket is, ezek helyett azonban később inkább a LISP nyelven programozott valódi gépekre összpontosítottak. A helyzet ugyanaz, mint előbb: a Turing-gép fogalmába szinte mindenkor automatikusan beleértjük azt, hogy statikusan programozott.
  • A véges automata kifejezés azt jelenti, hogy az automatának véges sok állapota lehetséges.
  • a Turing-gép jelentéktelennek látszó, valójában azonban egyik leglényegesebb eleme, hogy címzése relatív és háromcímes, legalábbis ez különbözteti meg a többi véges determinisztikus automatatípustól: a Neumann-osztályú vagy egyéb többdimenziós sejtautomatáktól, a Markov-, Moore- és Mealy-gépektől, az abszolút címzésű regisztergépektől és RAM-gépektől stb.
  • A szakemberek vizsgáltak egy helyett több szalagot vagy leolvasófejet tartalmazó nem-klasszikus Turing-gépeket is. Ezekről azonban kiderült, hogy lényegében „ugyanazt tudják”, mint a klasszikus gép (u.is minden ilyen értelemben véve nem klasszikus modellhez mindenféle előképzettség nélkül is szerkeszthető egy velük „izomorf” klasszikus gép).
  • Több szalagos gép esetén némely társzalag lehet pusztán olvasható (read-only, RO) vagy csak pusztán írható (write-only, WO), és az automaták (ti. a szalagok) lehetnek korlátozott címzésűek, például ha a gép elért egy cellát, előfordulhat, hogy az attól jobbra vagy az attól balra lévő cellákat már soha nem tudja olvasni; az ilyen szalagot egyirányúnak vagy unidirekcionálisnak nevezik (UD); a „normális” három című szalagot pedig kétirányúnak vagy bidirekcionálisnak (BD). Bebizonyítható, hogy a bidirekcionális és unidirekcionális szalagú, de egyéb tekintetben ugyanolyan automaták „ugyanazt képesek kiszámolni”, kiszámíthatóságelméleti értelemben ekvivalensek (noha az idő- és tárigény szempontjából némi eltérés lehetséges).

Kapcsolódó szócikkek

Jegyzetek

Források

  • Dömösi Pál, Falucskai János, Horváth Géza, Mecsei Zoltán, Nagy Benedek: Formális nyelvek és automaták
  • Trahtenbrot: Algoritmusok és absztrakt automaták (1978)
  • J.I.Manyin: Bevezetés a kiszámíthatóság matematikai elméletébe. Budapest, 1986, Műszaki Könyvkiadó
  • Demetrovics–Denev–Pavlov: A számítástudomány matematikai alapjai. Budapest, 1999, Nemzeti Tankönyvkiadó
  • Papadimitriou, Christos H.: Számítási bonyolultság (Computational complexity). Győr, 1999, Novadat Bt. ISBN 963-9056-20-0.
  • Rónyai–Ivanyos–Szabó: Algoritmusok. 1999, Typotex
  • Czirkos Zoltán: Turing gépei és a Brainfuck nyelv

További információk

Commons:Category:Turing Machine
A Wikimédia Commons tartalmaz Turing-gép témájú médiaállományokat.

Read other articles:

Julie GonzaloGonzalo pada 2013LahirJulieta Susana Gonzalo09 September 1981 (umur 42)Buenos Aires, ArgentinaPekerjaanAktrisTahun aktif2001–sekarang Julieta Susana Gonzalo (pengucapan bahasa Spanyol: [ˈʝuli ɣonˈsalo]; lahir 9 September 1981) adalah seorang aktris Argentina-Amerika.[1] Dia terkenal karena bermain sebagai Pamela Rebecca Barnes dalam opera sabun televisi berjudul Dallas (2012-2014). Dia juga muncul dalam film-film seperti Freaky Friday (2003), A Cinder...

 

Cet article est une ébauche concernant le Trentin-Haut-Adige. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Madruzzo Administration Pays Italie Code postal 38076 Préfixe tel. 0461 Démographie Population 2 886 hab. (1er janvier 2018[1]) Densité 100 hab./km2 Géographie Coordonnées 46° 03′ 00″ nord, 10° 59′ 00″ est Superficie 2 893 ha =...

 

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Desember 2022. Rumah Sakit Umum Tapak Tuan (RSU Tapak Tuan) adalah salah satu rumah sakit yang berada di dalam wilayah administratif dari Kabupaten Aceh Selatan, Aceh. Rumah Sakit Tapak Tuan digunakan sebagai tempat pelayanan kesehatan bagi masyarakat Kabupaten Aceh...

Lord-Lieutenant of Greater LondonIncumbentSir Kenneth Olisa OBEsince 25 May 2015AppointerKing Charles IIITerm lengthUntil the incumbent reaches the age of 75.Inaugural holderHarold, Earl Alexander of Tunis KGFormation1965DeputyColonel Jane Davis OBE QVRM TD DLSalaryNil (pro bono)Websitehttp://greaterlondonlieutenancy.org.uk This article is part of a series onPolitics of the United Kingdom Constitution Magna Carta Bill of Rights Treaty of Union (Acts of Union) Parliamentary sovereignty Ru...

 

American heiress, socialite, and philanthropist Sunny von BülowBornMartha Sharp Crawford(1932-09-01)September 1, 1932Manassas, Virginia, U.S.DiedDecember 6, 2008(2008-12-06) (aged 76)Manhattan, New York City, New York, U.S.OccupationSocialiteSpouses Prince Alfred von Auersperg ​ ​(m. 1957; div. 1965)​ Claus von Bülow ​ ​(m. 1966; div. 1987)​ Children3, including Cosima von Bülow PavoncelliP...

 

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (يناير 2022) هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. ...

Canadian-American game show host (1921–2017) Not to be confused with Monty Halls, British marine biologist and TV presenter. Monty HallOC OMMonty Hall in 1976BornMonte Halparin(1921-08-25)August 25, 1921Winnipeg, Manitoba, CanadaDiedSeptember 30, 2017(2017-09-30) (aged 96)Beverly Hills, California, U.S.Resting placeHillside Memorial Park CemeteryAlma materUniversity of Manitoba (BS)Occupation(s)Game show host, producerYears active1946–2017Spouse Marilyn Plottel ​&...

 

Robert FicoPerdana Menteri SlowakiaPetahanaMulai menjabat 25 Oktober 2023PresidenZuzana ČaputováPendahuluĽudovít ÓdorMasa jabatan4 April 2012 – 22 Maret 2018PresidenIvan Gašparovič Andrej KiskaPendahuluIveta RadičováPenggantiPeter PellegriniMasa jabatan4 Juli 2006 – 8 Juli 2010PresidenIvan GašparovičPendahuluMikuláš DzurindaPenggantiIveta Radičová Informasi pribadiLahir15 September 1964 (umur 59)Topoľčany, CekoslowakiaPartai politikDemokratik So...

 

Arms of Jean IV de Rieux 18th century engraving of Jean IV de Rieux by Alexis Loir after Noël Hallé Jean IV de Rieux (June 27, 1447 – February 9, 1518), was a Breton noble and Marshal. He was the son of Jean III de Rieux and Béatrice de Rohan-Montauban (1385–1414). He ruled Brittany as regent of Anne of Brittany. He is best known for being the commander of the Breton army against King Charles VIII of France, which ended in a crushing defeat at the Battle of Saint-Aubin-du-Cormier (1488...

Het kasteel van BataviaArtistAndries BeeckmanYearc. 1662-1663CatalogueSK-A-19MediumOil on canvasDimensions108 cm × 151.5 cm (43 in × 59.6 in)LocationRijksmuseum Amsterdam, Amsterdam Het kasteel van Batavia is a 17th-century painting by the Dutch painter Andries Beeckman. The painting depicts the Batavia Castle, the headquarter of the Dutch East India Company located in what is now Kota Tua in Jakarta, Indonesia. The painting is currently displayed i...

 

Political party in Saint Vincent and the Grenadines Unity Labour Party LeaderRalph GonsalvesFounded16 October 1994; 29 years ago (1994-10-16)IdeologyDemocratic socialism[1]Left-wing nationalism Socialism of the 21st centuryAnti-imperialism[2]RepublicanismPolitical positionLeft-wingRegional affiliationCOPPPAL (observer)[3]Foro de São Paulo (affiliate)International affiliationSocialist International (1994–2014)[4]Seats in the House of As...

 

2016 AFC Futsal Championship qualificationTournament detailsHost countries Malaysia (West) Thailand (ASEAN) Tajikistan (Central) Mongolia (East)Dates1–3 October 2015 (West)8–16 October 2015 (ASEAN)14–16 November 2015 (Central)14–19 November 2015 (East)Teams26 (from 1 confederation)Tournament statisticsMatches played49Goals scored414 (8.45 per match)Attendance78,651 (1,605 per match)Top scorer(s) Ahmed Abdelalrhman (West) (4 goals)[1] Dan...

Indonesian actress (born 1995) Anya GeraldineAnya Geraldine in 2019BornNur Amalina Hayati[1] (1995-12-15) 15 December 1995 (age 27)Jakarta, IndonesiaNationalityIndonesiaEducationSMA Negeri 4 JakartaAlma materKalbis InstituteOccupations Celebrity Model Internet celebrity Years active2016–presentHeight177 cm (5 ft 10 in) Nur Amalina Hayati (born 15 December 1995), known as Anya Geraldine, is an Indonesian actress, internet celebrity, and model. Her career...

 

Extinct genus of trilobites LioboleTemporal range: 360–341 Ma PreꞒ Ꞓ O S D C P T J K Pg N Visian Liobole Glabra Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Arthropoda Class: †Trilobita Order: †Proetida Family: †Proetidae Genus: †LioboleRichter and Richter, 1949 Species and subspecies Liobole Owens and Tilsley, 1995 Liobole is a lower Carboniferous proetid trilobite. Etymology Liobole was described from material found in the Moravian Karst.[1 ...

 

1928 film The Weekend BrideFrench-language posterGermanDie Wochenendbraut Directed byGeorg JacobyWritten byMax EhrlichFriedrich SteinStarringElga BrinkOssi OswaldaPaul HörbigerCinematographyEduard HoeschMusic byWalter UlfigProductioncompanyOrplid-FilmDistributed byMesstro-FilmRelease date 25 November 1928 (1928-11-25) CountryGermanyLanguagesSilentGerman intertitles The Weekend Bride (German: Die Wochenendbraut) is a 1928 German silent comedy film directed by Georg Jacoby and s...

2018 Centrobasket Women21st Central American and Caribbean Basketball Championship for WomenTournament detailsHost nation Puerto RicoDates20–24 AugustTeams7Venues1 (in 1 host city)Champions Puerto Rico (2nd title)MVP Jennifer O'NeillTournament leaders PlayersTeamsPoints O'Neill (19.0)  Puerto Rico (86.8)Rebounds Matamoros (11.0)  Dominican Republic (48.5)Assists Martínez (5.3)  Puerto Rico (21.2) Official websiteOfficial website< 2017 2021...

 

Shining RomancePoster promosi untuk Shining RomanceGenreDramaRomansaOpera sabunDitulis olehSeo Hyun-jooSutradaraShin Hyung-chan Jung Ji-inPemeranLee Jin Park Yoon-jae Jo AnNegara asalKorea SelatanBahasa asliKoreaJmlh. episode122ProduksiProduser eksekutifKim Kyung-heeLokasi produksiKorea SelatanDurasi40 menit pada hari Senin hingga Jumat pukul 19:15 (WSK)Rilis asliJaringanMunhwa Broadcasting CorporationFormat gambar1080i (HDTV)Rilis23 Desember 2013 (2013-12-23) –20 Juni 2014 (...

 

«Someday My Prince Will Come»Canción de Adriana CaselottiPublicación 1937Género música infantilCompositor Frank ChurchillLetrista Larry MoreyIdioma original inglésPaís de origen Estados Unidos[editar datos en Wikidata] «Someday My Prince Will Come» (en español: Mi príncipe vendrá) es una canción de la película de Walt Disney, Blancanieves. Fue escrita por Larry Morey, musicada por Frank Churchill, y cantada por Adriana Caselotti (poniendo también la voz a los diálog...

هذه المقالة بحاجة لصندوق معلومات. فضلًا ساعد في تحسين هذه المقالة بإضافة صندوق معلومات مخصص إليها. هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (نوفمبر 2018) الاستقرار السياسي هو قدرة حكومة الشعب على المشاركة أو ال...

 

Yahudi Austria עסטרײַכישע ייִדן יהדות אוסטריה Österreichische JudenLokasi Austria (hijau tua) di EropaJumlah populasi9,000[1]Daerah dengan populasi signifikanBahasaJerman Austria, Yiddi, IbraniAgamaYahudiKelompok etnik terkaitYahudi lain (Ashkenazi, Sephardic, Mizrahi), Yahudi Jerman, Yahudi Ceko, Yahudi Polandia, Yahudi Hungaria, Yahudi Rusia, Yahudi Ukraina Sejarah orang Yahudi di Austria dimulai dengan eksodus orang Yahudi dari Yudea di bawah pendudukan ...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!