Кіріспе

Компьютерлік ғылымдағы шешілмейтін міндет

Математика мен компьютерлік ғылымда ; ) – Дэвид Гилберт пен Вильгельм Акерман 1928 жылы қойған қиын мәселе. Мәселе бір мәлімдемені кіріс ретінде қарастырып, мәлімдеме әмбебап түрде дұрыс па, яғни барлық құрылымдарда дұрыс па, соған қарай "иә" немесе "жоқ" деп жауап беретін алгоритмді табуды талап етеді.

Толықтық теоремасы

Бірінші реттік логиканың толықтық теоремасы бойынша, бір мәлімдеме жалпыға бірдей жарамды егер және тек қана ол логикалық ережелер мен аксиомалар арқылы шығарыла алса. Сондықтан, Entscheidungsproblem мәселесін берілген мәлімдемені логика ережелерін қолдана отырып дәлелдеуге болатынын анықтайтын алгоритмді табу туралы сұрақ ретінде де қарастыруға болады. 1936 жылы Алонзо Черч және Алан Тьюринг тәуелсіз зерттемелер жариялап, "нақты есептелетін" интуитивті ұғымы Тьюринг машинасымен есептелетін функциялармен (немесе эквивалентті түрде, лямбда-есептеуде берілетіндермен) сипатталса, онда Entscheidungsproblem-нің жалпы шешімі болмайтынын көрсетті. Бұл болжам қазір Черч-Тьюринг тезисі деп белгілі.

Проблеманың тарихы

Entscheidungsproblem мәселесінің бастауы Готфрид Лейбницке дейін жетеді, ол XVII ғасырда сәтті механикалық есептеу машинасы құрастырғаннан кейін, математикалық тұжырымдардың дұрыстығын анықтау үшін символдармен жұмыс істейтін машина жасау армандады. Ол алғашқы қадамның нақты формалды тіл болуы керектігін түсінді, ал оның кейінгі еңбектерінің көп бөлігі осы мақсатқа бағытталды. 1928 жылы Дэвид Гильберт және Вильгельм Аккерман мәселені жоғарыда көрсетілгендей қойды. Өзінің "бағдарламасын" жалғастыра отырып, Гильберт 1928 жылы халықаралық конференцияда үш сұрақ қойды, олардың үшіншісі "Гильберттің Entscheidungsproblem" деп белгілі болды. 1929 жылы Мозес Шёнфинкель Пол Бернейс дайындаған шешім мәселесінің арнайы жағдайлары туралы бір мақала жариялады. 1930 жылға дейін Гильберт шешілмейтін мәселелердің бола қоймауына сенді.

Жоқ жауап

Бұл сұраққа жауап беру үшін "алгоритм" ұғымын ресми түрде анықтау қажет болды. Бұл 1935 жылы Алонзо Черч өзінің λ-саны негізінде "тиімді есептеу" концепциясымен, ал келесі жылы Алан Тьюринг өзінің Тьюринг машиналары концепциясымен іске асырылды. Тьюринг бұл есептеудің эквивалентті модельдер екенін бірден мойындады. Ессектюнгс проблемасына теріс жауапты 1935–36 жылдары Алонзо Черч (Черч теоремасы) және одан кейін көп ұзамай 1936 жылы Алан Тьюринг (Тьюрингтің дәлелі) берді. Черч екі λ-сандық өрнектің тең немесе тең емес екенін анықтайтын есептелетін функцияның жоқтығын дәлелдеді. Ол Стивен Клиннің бұрынғы еңбектеріне көп сүйенді. Тьюринг Ессектюнгс проблемасын шеше алатын "алгоритм" немесе "жалпы әдіс" бар ма деген мәселені, кез келген Тьюринг машинасының тоқтауы немесе тоқтамауы туралы шешім қабылдайтын "жалпы әдіс" бар ма деген сұраққа дейін тоғыстырды (тоқтау мәселесі). Егер "алгоритм" Тьюринг машинасы түрінде бейнеленетін әдіс ретінде түсінілсе және соңғы сұраққа жауап теріс болса (жалпы алғанда), Ессектюнгс проблемасы үшін алгоритмнің болуы туралы сұрақ та теріс болуы керек (жалпы алғанда). 1936 жылғы мақаласында Тьюринг былай деді: "Әр есептеу машинасына 'ол' сәйкес формула 'Un(ол)' құрастырылады және егер 'Un(ол)' дәлелденетінін анықтаудың жалпы әдісі болса, онда 'ол' ешқашан 0-ді басып шығаратынын анықтаудың жалпы әдісі бар екенін көрсетеміз". Черч пен Тьюрингтің жұмысына Курт Гёдельдің өзінің толық еместік теоремасы бойынша бұрынғы еңбектерінің, әсіресе логиканы арифметикаға дейін тоғыстыру үшін логикалық формулаларға сандарды (Гёдель нөмірлеуі) тағайындау әдісінің үлкен әсері тиді. Ессектюнгс проблемасы Хилберттің оныншы проблемасымен байланысты, ол Диофанти теңдеулерінің шешімі бар ма, жоқ па, оны анықтау үшін алгоритмді сұрайды. Мұндай алгоритмнің жоқ екендігі, Юрий Матиясевич, Джулия Робинсон, Мартин Дэвис және Хилари Путнамның жұмысымен, 1970 жылы дәлелдеудің соңғы бөлігімен расталды, сонымен қатар Ессектюнгс проблемасына теріс жауап береді.

Жалпылау

Дедукция теоремасын қолдана отырып, Entscheidungsproblem берілген бірінші реттік сөйлемнің, берілген шекті жиын сөйлемдерден логикалық түрде туындайтынын анықтаудің көбірек жалпылама проблемасын қамтиды, бірақ шексіз көп аксиомасы бар бірінші реттік теориялардағы дұрыстықты тікелей Entscheidungsproblem-ге келтіруге болмайды. Дегенмен, мұндай көбірек жалпылама шешу проблемалары практикалық тұрғыдан маңызды. Кейбір бірінші реттік теориялар алгоритмдік тұрғыдан шешіледі; мысалы, Пресбургер арифметикасы, нақты жабық өрістер және көптеген бағдарламалау тілдерінің статикалық типтік жүйелері. Ал, Пеано аксиомаларымен берілген қосу және көбейту операциялары бар натурал сандардың бірінші реттік теориясы алгоритм арқылы шешілмейді.

Фрагменттер

Әдетте, бөлімдегі сілтемелер Пратт Хартманнан (2023). Классикалық Entscheidungsproblem бірінші реттік формула берілген кезде, оның барлық модельдерде ақиқат екенін сұрайды. Шектеулі мәселе барлық шекті модельдерде ақиқат екенін сұрайды. Трахтенброт теоремасы бұл да шешілмейтінін көрсетеді. Кез келген үшін EXPTIME-толық (5.4.1-бөлім). Кез келген үшін NEXPTIME-толық (5.4.2-бөлім). Бұл нәтижені бірінші болып Акерманн жариялаған. Кез келген және PSPACE-толық (5.4.3-бөлім). Börger және авторлар (2001) квантор префиксі, функцияның аргумент саны, предикаттың аргумент саны және теңдік/теңсіздіктің барлық мүмкін комбинациялары бар әрбір мүмкін фрагмент үшін есептеу күрделілігінің деңгейін сипаттайды.

Шешім қабылдаудың практикалық тәртібі

Логикалық формулалардың кластары үшін практикалық шешімдерді анықтау процедуралары бағдарламалық қамтамасыздылықты тексеру және схемаларды тексеру үшін маңызды. Таза Буль логикалық формулалары көбінесе DPLL алгоритміне негізделген SAT шешу техникаларын қолдану арқылы шешіледі. Бірінші реттік теориялардың күрделі шешім мәселелері үшін сызықтық нақты немесе рационал арифметикадағы конъюнкциялар симплекс алгоритмі арқылы, ал сызықтық бүтін арифметикадағы (Пресбургер арифметикасы) формулалар Купер алгоритмі немесе Уильям Пьюгтың Омега тесті арқылы шешіледі. Жоқтаулар, конъюнкциялар және дизъюнкцияларды қамтитын формулалар қанағаттандырылатындығын тексеру қиындықтарын конъюнкцияларды шешу қиындықтарымен біріктіреді; қазіргі таңдағы олар көбінесе SMT шешу техникаларын қолдану арқылы шешіледі, бұл SAT шешуді конъюнкциялар үшін процедуралармен және тарату техникаларымен біріктіреді. Нақты жабық өрістер теориясы деп те аталатын нақты полиномдық арифметика шешімді; бұл Тарски-Сейденберг теоремасы, ол цилиндрлік алгебралық декомпозицияны пайдалану арқылы компьютерлерде іске асырылған.