Kas yra Turingo užbaigtumas?

Tiuringo užbaigtumas yra tada, kai programavimo kalba gali atlikti Tiuringo mašinos funkcijas. Tai labai paprasto mechaninio kompiuterio koncepcija, kartais apibūdinama kaip paprasčiausia mašina, kurią galima laikyti kompiuteriu. Beveik visos šiandien naudojamos programavimo kalbos ir teoriškai jas valdantys kompiuteriai turi Turingo išsamumą.

Tiuringo užbaigtumo samprata kilo iš britų kompiuterių mokslininko Alano Turingo, kurio darbas apėmė užkoduotų pranešimų iššifravimą Antrojo pasaulinio karo metu. Vienas iš jo darbų kompiuterijos srityje buvo filosofijos, ką kompiuteris iš tikrųjų gali padaryti, sukūrimas. Tai apėmė koncepciją, kad kompiuteriai veikia tiesiog vykdydami algoritmus. Tai reiškia, kad jie laikosi nustatytų taisyklių, kad apdorotų duomenis ir savo ruožtu spręstų problemas. Tai reiškia, kad kompiuteris „negalvoja“ ir nepriima sprendimų taip, kaip gali žmogus.

Siekdamas iliustruoti koncepciją, Turingas aprašė hipotetinę mašiną, kurią pavadino „a-mašina“, o „a“ reiškia automatinį; kiti vėliau ją pavadino Tiuringo mašina. Aparatas apdorotų juostos ritę, kuri galėtų judėti atgal arba į priekį ir kurioje būtų simbolių eilutė. Bet kuriuo metu aparatas gali apdoroti vieną simbolį ir, jei reikia, jį pakeisti. Koncepcijos tikslais juostos ritė gali būti be galo ilga, o tai reiškia, kad kompiuterio atmintis nebuvo savaime apribota. Tai yra analogija idėjai, kad kai kompiuteris turi instrukcijų rinkinį, kurio reikia laikytis, duomenų kiekis, kuriam jis gali pritaikyti šias instrukcijas, priklauso tik nuo fizinių apribojimų.

Ironiška, bet dauguma kompiuterių šiandien iš tikrųjų neturi Turingo išbaigtumo. Taip yra todėl, kad jiems yra ribotos vietos saugykloje, taigi ir duomenų, kuriuos jie gali apdoroti, apribojimai. Jie taip pat turi fizinių apribojimų, ypač tai, kad ilgainiui jie susidėvės. Iš tikrųjų tai yra programavimo kalba, kuri turi Turingo išsamumą. Dėl šios priežasties kompiuteris, kuriame veikia tokia programa, nėra Turingo kompiuteris, bet gali būti naudojamas jį imituoti.

Tiuringo išsamumo nereikėtų painioti su Tiuringo testu. Tai buvo Turingo sukurtas eksperimentas, skirtas išsiaiškinti, ar kompiuteriai gali kalbėti natūralia kalba. Testo principas yra tas, kad jei žmogus negali atskirti teksto pokalbio su kompiuteriu ir kitu žmogumi, kompiuteris testą išlaiko. Nors kai kurie kompiuteriai išlaikė testą, kai pokalbio temų diapazonas yra ribojamas, nė vienas to neišlaikė neribotame pokalbyje.