Историја рачунара

Тјурингове машине и теорија израчунавања

Тјурингове машине и теорија израчунавања

Тјурингова машина је централни теоријски конструкт у рачунарству. Тјурингова машина је апстрактни математички модел рачунања. Коришћење Тјурингових машина помаже да се објасни шта је рачунање разграничавањем такозваних „рачунских функција.”

Рано истраживање логике Алана Туринга усредсређено је на познати нерешени проблем познат као Ентсцхеидунгспроблем. Ентсцхеидунгспроблем (грубо преведен са немачког као проблем одлуке) предложио је филозоф и математичар Давид Хилберт 1928. Проблем је поставио питање да ли постоји алгоритам који ће одлучивати о свакој изјави на формалном језику.

Формални језик је систем аксиома и правила закључивања попут оних у аритметичкој или логици првог реда. Аксиоми могу бити било који симболи, а правила закључивања могу бити било која листа правила за манипулисање тим симболима.  „Одлучивање о свакој изјави“ значило је или изношење да ли је изјава истинита / нетачна или изношење да ли је изјава изведљива / недоступна. Теорема комплетности Курта Годела доказала је да је алгоритам који одлучује о ваљаности еквивалентан ефикасном поступку који доноси одлуку о изводљивости. Рад Алана Туринга „О рачунавим бројевима, са применом на проблем Ентсцхеидунгспроблем“ из 1936. године показао је негативан резултат, јер је било немогуће алгоритамски одлучити о свакој тврдњи у формалном систему.

Алан Туринг

Да би доказао негативан резултат за проблем Ентсцхеидунгс, Туринг је требао да формализује појам алгоритма. Тјурингова формализација алгоритма била је математички модел рачунања који је касније постао познат као Тјурингова машина. Тјурингова машина има коначан скуп стања у којима машина може бити. Тјурингова машина има бескрајно дугачку траку која је подељена на квадрате. На сваком квадрату на траци налази се симбол извучен из коначног скупа симбола. У било ком тренутку израчунавања, Тјурингова машина чита симбол на једном квадрату траке. Тјурингова машина може тај симбол заменити другим симболом и померити се на квадрат десно или квадрат лево. Радња коју Тјурингова машина предузима аутоматски се одређује стањем у коме је машина. Након што се догоди симбол замене и пређе на другу квадратну акцију, Тјурингова машина може да пређе у друго стање. Свака различита држава има различит скуп правила о томе како заменити симболе и у ком правцу се кретати.

Ретка физичка примена дизајна Тјурингове машине (без бесконачне траке)

Канонска формулација Тјурингове машине обично се састоји од бинарне абецеде од искључиво 0с и 1с. Ова формулација одговара интуицији модерних рачунарских програмера, с обзиром на то да сви модерни рачунари користе бинарни систем. У ствари, Тјурингове машине су неутралне у погледу величине абецеде симбола. Тјурингова машина такође може да користи било који симбол, било нумерички или извучен из било које друге врсте абецеде, као што су сликовни симболи или латинична абецеда. Било која формулација сваке могуће коначне абецеде доказиво се своди на бинарну Тјурингову машину.

Тјурингове машине претпостављају да је на располагању бесконачна количина меморије. Ниједна стварна физички инстанцирана машина не може испунити овај захтев да буде Тјурингова машина. Тјурингова машина такође претпоставља потенцијално бесконачно много времена које може бити потрошено рачунајући функцију. Ове претпоставке су направљене да би се створила најопсежнија класа могућих функција за Тјурингову дефиницију израчунатих функција. Тјурингове прорачунате функције су било које функције које може израчунати Тјурингова машина. Многе од ових израчунатих функција можда никада неће моћи израчунати ниједна физички инстанисана машина јер захтевају превише времена или меморије.

Цхурцх-Турингова теза тврди да је еквивалентност израчунатих функција и функција које могу израчунати Тјурингова машина. То подразумева да се све функције које Турингове машине не могу израчунати не могу израчунати било којом другом методом. Давид Хилберт очекивао је позитиван одговор на проблем Ентсцхеидунгс, што би значило да су сви проблеми израчунати. Тјурингов резултат довео је до открића многих неуобичајених проблема.

Најпознатији неуобичајени проблем је проблем заустављања. Проблем заустављања је проблем стварања алгоритма који може, у општем случају, да одлучи да ли ће се рачунарски програм са његовим улазом зауставити или наставити заувек. Иако постоје специфични случајеви у којима се проблем Халтинг може решити, он се не може решити за сваки рачунарски програм са било којим улазом. Овај резултат имао је важне последице за рачунарско програмирање, јер рачунарски програмери морају бити свесни могућности бесконачних петљи и немогућности откривања свих бесконачних петљи пре покретања својих програма.

Још једна импликација Тјурингове машине је могућност универзалних Тјурингових машина. Имплицитни у Туринговом дизајну је концепт чувања програма који модификује податке заједно са подацима које модификује. То сугерише могућност рачунара опште намене и програмабилних програма. Савремени рачунари су обично универзалне Тјурингове машине у смислу да се могу програмирати за покретање било ког алгоритма. Ово је елиминисало потребу за различитим хардвером за сваки потенцијални рачунарски програм и увело разлику између хардвера и софтвера.

Модел Тјурингове машине директно је довео до проналаска рачунара, али то није исти нацрт који се користи за пројектовање савремених рачунара. Вон Неуманнова архитектура која се користи као нацрт модерних рачунара користи концепт ускладиштеног програма имплицитно у Туринговом моделу машине, али се разликује од остатка Туринговог модела машине на неколико важних начина. Највеће разлике су у томе што вон Неуманнова архитектура не користи главу за читање и писање и уместо тога укључује вишеструке регистре, меморију са случајним приступом, магистрале података, мали скуп основних машинских упутстава и могућности обраде више битова. Вон Неуманнова архитектура такође изричито омогућава специјализоване уређаје за улаз и излаз као што су тастатуре и монитори.

Модел Тјурингове машине био је први математички модел рачунања. Довело је директно до проналаска физичких рачунара. Физички рачунари имају исте могућности које имају Тјурингове машине, под претпоставком ограничених меморије и временских ограничења стварних прорачуна. Тјурингова формулација и даље игра централну улогу у проучавању рачунања. Рачунарски научници и даље су активно укључени у истраживање да ли су одређене функције Турингове машине израчунате.

Најпопуларније лабораторијске игре Оцулус Апп
Ако сте власник Оцулус слушалица, онда морате бити упознати са бочним учитавањем. Бочно учитавање је поступак инсталирања не-продавничког садржаја на ...
10 најбољих игара за играње на Убунту-у
Виндовс платформа је била једна од доминантних платформи за играње игара због огромног процента игара које се данас развијају да би подржале Виндовс. ...
5 најбољих аркадних игара за Линук
У данашње време рачунари су озбиљне машине које се користе за игре на срећу. Ако не успете да добијете нови високи резултат, знаћете на шта мислим. У ...