Визначення проблеми зупинки для недетермінованих автоматів


18

Основне визначення машини Тьюрінга (ТМ), принаймні в моєму власному довідковому підручнику (Hopcroft + Ullman 1979), є детермінованим.

Звідси моє власне розуміння проблеми зупинки стосується насамперед детермінованих ТМ, хоча я усвідомлюю, що це може розглядатися для інших типів автомати.

Я також зауважив, що детермінізм часто більш-менш неявний в тому, як люди часто звертаються до ТМ або до проблеми зупинки. Сторінка вікіпедії щодо проблеми зупинки - хороший приклад цього.

Але, схоже, немає причини для такого обмеження. Враховуючи сімейство автоматів, які можуть бути недетермінованими, проблема зупинки для F може бути визначена як:ЖЖ

Чи існує така уніфікована процедура прийняття рішення, що, з огляду на автомат та вхід x , він може вирішити, чи є обчислення зупинки A на вході x .АЖхАх

(Це не зовсім те саме, що говорити про те, що обчислення з введенням x закінчиться.)Ах

Дійсно, це здається єдиним способом надати певного сенсу дискусіям щодо проблеми зупинки для лінійних обмежених автоматів (LBA), які є в першу чергу недетермінованими автоматами.

Отже, моє запитання полягає в тому, чи я прав, і чи є причина (і яка причина) для цього, очевидно, другого класу лікування проблеми зупинки для недетермінованих автоматів.


Якщо ви думаєте, що в цьому питанні щось не так, ви будете так люб'язно сказати, що це таке, щоб ми могли отримати користь від ваших знань та покращити публікацію для всіх користувачів. Дякую.
babou

Відповіді:


12

Є кілька причин, на які я думаю, що ми докладаємо менше зусиль для проблеми зупинки для недетермінованих моделей.

Перша полягає в тому, що насправді існують дві актуальні проблеми зупинки для ND-моделі. Дано вхід та недетерміновану машину M :хМ

  • Чи існує дійсний запуск на x, який зупиняється?Мх
  • Чи існує дійсний запуск на x, який не зупиняється? тобто всі дійсні запуски зупиняються?Мх

Для детермінованих машин вони ідентичні, оскільки існує точно один дійсний пробіг на вході x . Але для недетермінованих машин може бути кілька запусків. Який із вас цікавиться, залежить від вашої заявки.Мх

По-друге, недетерміновані моделі вже нереалістичні: вони припускають, що у вас є або магічна скринька, яка говорить вам, який шлях слід пройти, або що у вас є якась форма нескінченного паралелізму. Оскільки недетерміновані та детерміновані машини Тюрінга є еквівалентними за потужністю, у більшості випадків ви просто перетворите машину на визначальну, перш ніж турбуватися про зупинку.

Як розширення цього, нас не хвилює, оскільки довести щось про недетерміновану машину як мінімум настільки ж важко, як довести щось про рівноцінну детерміновану машину. Ми вже знаємо, що вирішення детермінованої проблеми зупинки немає, тому все, для чого це дійсно корисно, - це довести інші проблеми, які не можна визначити за допомогою скорочень. І завжди буде менше працювати над тим, щоб звести до детермінованої проблеми зупинки, оскільки це простіше, ніж це недетермінований аналог.


Ви заявляєте: " Але для недетермінованих машин може бути кілька запусків. Який із вас зацікавлений залежить від вашої програми. " Чи можете ви проілюструвати це твердження прикладом? Потім ви заявляєте, що " ви просто перетворите машину на детерміновану, перш ніж турбуватися про зупинку ". Як це робиться для LBA?
babou

LBA - це підмножина недетермінованих машин Тьюрінга, тому їх завжди можна перетворити на детерміновані машини Тьюрінга за допомогою звичайного методу. Я підозрюю, що існує спеціальна конструкція, яка може бути використана для перетворення на машину з певними властивостями, тому ми можемо зберегти додаткові можливості міркування, які ми отримуємо від LBA. Я думаю, це буде схоже на алгоритм зворотного відстеження, де використовується лінійний простір, за винятком того, що стек виклику може бути потенційно великим (я не впевнений, що мені доведеться його шукати).
jmite

Для кількох шляхів розглянемо дві машини , таку, яка завжди зупиняється на вході x , і та, яка ніколи не робить для x . Ми можемо створити нову LBA M, яка починається з недетермінованого вибору булевого значення. Якщо він вибере вірно, він запускає M 1 на вході x. Якщо він обрав помилковий, він запускає M 2 на х . Кожен вибір істинного та хибного є різним "пробігом". Ця машина зупиняється на x ? Існує шлях, де він зупиняється на x , але він не зупиняється на всіх шляхах читання x . М1,М2ххММ1М2хххх
дміти

1
@HendrikJan Схоже, що зупинка NLBA скоріше стосується теореми Савича . Але вона змінює лінійну зв'язану на квадратичну.
babou

1
@Raphael, що я маю на увазі під цим, це те, що, щоб показати проблему undecidable, ви показуєте, що ви можете використовувати P для імітації іншої невирішеної проблеми. Оскільки існує тривіальне ін'єкційне відображення від DTM до NTM, будь-яке зменшення від зупинки NTM також є зменшенням від зупинки DTM. Зазвичай, це буде менше роботи, щоб зменшити від зупинки DTM, оскільки це менш складна проблема, яку ви намагаєтеся імітувати. ПП
jmite

4

Проблема зупинки - це квінтесенціальна -повна проблема, оскільки її можна констатувати як:Σ1

.H(P,x)c s. t. c is a halting computing of P on x

Це говорить про те, що ваше визначення є правильним. Загалом, кожне -повне визначення є "правильним".Σ1


На жаль, я майже нічого не знаю про арифметичну ієрархію. Чи правильно я розумію, що є напіврозв'язними проблемами? Як щодо: K ( P , x ) c , c  - обчислення  P  на  xΣ1. Я запитую, оскільки екзистенціальні та універсальні кількісні показники, здається, закінчуються в різних класах, але це все для мене туманно. Kтакож є напіврозв'язним. K(P,x)c,c is a computing of P on xc is halting.К
бабу

Це я боявся відповісти. Я запитав, бо вважаю, що у мене є процедура напівприйняття рішення. Отже, або моє доказ неправильне, або я неправильно формалізував свою проблему. В основному це припущення jmite, що недетерміновані зупинки на вході можна визначити, вимагаючи, щоб усі обчислення на x зупинилися. І я вірив, що до цього часу я мав напівприйняття рішення. xx
бабу

Насправді ваше визначення не добре з іншої причини: що ви маєте на увазі під " припиняється"? Або ви маєте на увазі, що c , яке є апріорі лише неповним обчисленням, насправді є повним. У цьому випадку K ( P , x ) ніколи не відповідає дійсності, оскільки ви можете взяти c за порожнє обчислення. У будь-якому іншому випадку не ясно, що опис c є кінцевим, і також не ясно, що предикат " c зупиняється" обчислюється. ccK(P,x)ccc
Yuval Filmus

Тож насправді проблема є у але, ймовірно, не є Π 1 -повною. Π1Π1
Yuval Filmus

Дякую і вибачте за моє наївне читання. Я думав, що ви використовували, означає "повне" обчислення, що, очевидно, помилка в домені кількісно визначена. Я здогадуюсь, що можна використовувати лише лічильні домени, і набір обчислень, що не зупиняються, недетермінованих ТМ не підлягає. Також я гадаю, що кількісні показники говорять нам, наскільки поганою може бути обчислюваність, але не пропонуйте жодних гарантій, що це так погано. Тож здається, що пропозицію jmite не легко висловити прямо в необхідному "форматі", але моя процедура напівприйняття рішення може бути правильною. c
бабу

2

Ви кажете, що існує "очевидне лікування другого класу" проблеми зупинки для недетермінованих машин. виявляється, що недетермінізм не розглядався історично до довгого часу після створення Творцем детермінованої ТМ, і це може мати щось спільне з фокусом дослідження в цій галузі. Однак головний момент тут полягає в тому, що недетерміновану проблему можна легко звести до детермінованої проблеми, тому потрібно лише вивчити детерміновану проблему "без втрати загальності".

крім того, для протидії ідеї "2-го класу" тут є хоча б одна довідка / стаття, яка вивчає проблему зупинки для недетермінованих машин і знаходить корисні / глибокі зв'язки. деякі непрямі докази того, що дослідження КС настільки великі / спеціалізовані, іноді деякі початкові дослідження проводилися в більшості областей, навіть, здавалося б, вузьких, і це може наблизитись до безглуздого чи розрізання волосся, щоб класифікувати різні проблеми за своєю важливістю. і навпаки, недетермінізм здається дуже глибокою / всюдисущою / перехресною концепцією в CS (ключові відкриті питання, такі як P проти NP), і цей аспект, ймовірно, триватиме довго в майбутньому.

Анотація Параметризована задача p-Halt приймає за вхід недетерміновану машину Тюрінга M і натуральне число n, розмір M є параметром. Він запитує, чи приймає кожен пробіг M на порожній вхідній стрічці більше n кроків. Ця проблема полягає в класі XPuni, класі "рівномірний XP", якщо існує алгоритм, що вирішує його, який для нерухомої машини M працює в поліномій часу в n. Виявляється, різні відкриті проблеми різних областей теоретичної інформатики пов'язані або навіть еквівалентні p-Halt ∈ XPuni. Таким чином, це твердження утворює міст, який дозволяє отримати еквівалент між твердженнями різних областей (теорія доказів, теорія складності, описова складність, ...), які на перший погляд здаються не пов'язаними. Як показує наша презентація,


2

Коротко

Здається, немає вагомих причин нехтувати проблемою зупинки в налаштуваннях, які не є класичною детермінованими машинами Тюрінга, крім того, що класична проблема зупинки відповідає на деякі основні математичні питання (наприклад, проблема Entscheidungsproblem ), тоді як варіанти є лише цікаві (?) технічні питання, але з меншим впливом на основи.

Ах . Потім це може послужити основою для визначення проблеми зупинки на недетермінованих автоматах.

Відповідно до відповіді jmite, це недетерміноване зупинення може бути визначене як відповідне існуванню щонайменше одного обчислення зупинки ( екзистенціальне зупинення ) або альтернативно тому, щоб вимагати припинення всіх можливих обчислень ( універсальної зупинки ). Ці два визначення відповідають двом різним визначенням недетермінованої проблеми зупинки.

Я показую, що для машин Тьюрінга два визначення відповідають двом різним способам визначення машини за допомогою деталізації. З цього випливаю, що два варіанти недетермінованої проблеми зупинки є Тюрінгом еквівалентними класичній задачі детермінованого зупинки .

Однак я також показую, що кожне з цих визначень зупинки безпосередньо пов'язане з відповідним визначенням мови, визнаної машиною Тюрінга, і це відношення може бути просто виражено за умови вибору послідовних визначень.

Отже, враховуючи звичайне визначення мови, визнаної недетермінованим автоматом, природним визначенням недетермінованого зупинки є екзистенційне зупинення, як було запропоновано в первісному питанні.

Більшість цього аналізу, природно, поширюється на інші типи автоматів, хоча конструкції з підшивки часто не доступні для менш потужних сімей, ніж машини Тюрінга.

Вступ

Я пишу це як відповідь, оскільки він частково відповідає на моє запитання після більшого розмірковування з цього приводу з урахуванням існуючих відповідей. Крім того, редагування мого запитання після трьох відповідей може в цьому випадку заплутати питання, і я вважаю за краще залишити це питання як спочатку написане, щоб уникнути цього.

Я спочатку обговорюю деякі мої незгоди з даними відповідями. Справа не в тому, щоб зневажати справедливі спроби відповісти на моє запитання (дякую за всі відповіді), а дійти до низу питань, обговоривши або спростуючи технічні моменти.

Я думаю, що оригінальне питання навряд чи потребує контексту чи мотивації. Проблема зупинки - це одне з головних питань, яке ми задаємо з приводу автоматичних машин, з одного боку, а недетермінізм - одна дуже поширена та корисна особливість багатьох автоматів з іншого. Крім того, недетермінізм - це не просто загальний теоретичний пристрій для спрощення доказів, а важлива особливість деяких сімей автоматів, таких як лінійно обмежений автомат (LBA), принаймні на час написання цього документа.

Отже, цілком природно дивуватися, чи має проблема зупинки значення чи переважне значення, яке і чому, у випадку недетермінованих автоматів.

Чи добре вирішена проблема недетермінованого зупинення?

Моє запитання задається питанням, чому проблема зупинки для недетермінованих автоматів, здається, отримує лікування другого класу , що генерує знищення та відповідь від vzn. Відповідь на ВЗН , що насправді більш довгий коментар, наполягає на тому, що " недетермінізм здається дуже глибокий / повсюдного / Crosscutting концепцію в CS", в чому я ніколи не сумнівався. Це також дає одне посилання на деякий дослідник зупинки для недетермінованих машин, що не дивно, але не дуже вирішує мою думку. Моя думка полягає в тому, що я не пригадую, щоб насправді я бачив визначення проблеми, що зупиняється, спрямованої. на недетермінованих машинах, хоч я читав деяку літературу в полі. Це не адресовано, AFAIK, у моєму довідковому підручнику (Hopcroft + Ullman 1979). У людських розумах часто мається на увазі те, що вони розглядають детерміновані автомати, зазвичай Тьюрінг машини, опорне визначення яких є детермінованим.

Наприклад, у запитанні Чому проблема зупинки вирішується для LBA? Ювал Філімус у своїй відповіді забув, що LBA - це недетерміновані пристрої - але блискуче врятував свою відповідь коментарем у 4 слова .

Як останній свідок того, що це питання недостатньо добре вирішується (незважаючи на деякі спеціалізовані дослідження), я б назвав той факт, що це питання потрібно обговорити тут.

Відповідь від jmite є єдиним , що на насправді намагається пояснити , чому це не може бути добре вирішені. Його перший аргумент полягає в тому, що існують два можливі визначення, але я вважаю, що ця ситуація повинна скоріше заохочувати більше аналізу, щоб визначити, яке визначення було б найбільш підходящим. Я намагаюся зробити це нижче.

Він також припускає, що, оскільки недетермінований ТМ завжди може бути перетворений на еквівалентний детермінований, хвилюватися з приводу зупинки в недетермінованій справі немає особливого сенсу. Я не повністю переконаний, але це може сприйматись як хороший привід багатьма. Однак аргумент не стосується лінійних обмежених автоматів (LBA), оскільки це все ще залишається відкритою проблемою, чи детерміновані LBA еквівалентні недетермінованим LBA. І є інші сімейства автоматів, для яких детерміновані підсемейства слабкіші, ніж уся недетермінована сім'я (наприклад, КПК).

Я також не погоджуюся з останнім пунктом, стверджуючи, що ми не повинні стосуватися недетермінованих зупинок, оскільки докази простіші з детермінованими машинами. Рафаель заперечив проти цього в коментарі : " Зазвичай мені легше вважати скорочення складних проблем ". Дійсно, для багатьох типів автоматів недетермінована версія служить в основному для спрощення доказів, таких як скорочення до цього типу автомата. Крім того, дві форми зупинок, які можуть бути використані, як запропонував сам jmite, навіть можна вважати перевагою, оскільки це дає більше гнучкості для вирішення проблем.

Про визначення недетермінованої проблеми зупинки

Примітка: використання слова "універсальний" у наступному тексті стосується універсальної кількісної оцінки , а не універсальних машин Тьюрінга

Відповідь від jmite найбільш докладно.

Цей варіант відповіді передбачає, що недетерміновані автомати сприяють меншим зусиллям щодо проблеми зупинки, оскільки її можна визначити двома різними способами (термінологія моя):

  • Мх

  • Мх

Єдине визначення, яке я запропонував адекватним, - це екзистенціальна зупинка .

Пропозиція 1 : Коли недетермінований автомат універсально зупиняється на входіх

Доказ : Це легко довести з леммою Кеніга , оскільки кількість можливих недетермінованих варіантів на кожному кроці обмежена для заданого автомата. Якщо б було нескінченно багато обчислень, що зупиняються, ми могли б позначити кожну конфігурацію з кожним з обчислювальних шляхів, що ведуть до неї, що склало б обчислювальний графік з нескінченно багатьма вузлами, але лише обмеженими недетермінованими розгалуженнями на кожному вузлі. За лемією Кеніга це передбачає існування нескінченного обчислювального шляху, відповідного обчисленню, що не припиняється.

Випадок (недетермінованих) машин Тьюрінга

Отже, тепер розглянемо зупинку у випадку недетермінованої машини Тьюрінга (NTM).

Для аналізу двох визначень найпростіше насправді розглянути детерміновані версії недетермінованих машин, чого можна досягти, як нагадав Хендрік Ян , шляхом доопрацювання всіх можливих обчислень.

Але є (принаймні) два способи доопрацювання обчислень для визначення, хоча зазвичай розглядається лише один:

  • детермінація екзистенціальної доопрацювання, яка моделює всі обчислення паралельно і закінчується, коли одне з модельованих обчислень закінчується.

  • універсальна детермінація дотаулінгу, яка моделює всі обчислення паралельно і закінчується лише тоді, коли всі змодельовані обчислення закінчуються. Але він може певним чином перерахувати закінчені обчислення, або підрахувати їх.

Пропозиція 2 :

  • МхМх

  • МхМх .

Доказ : Доказ екзистенційної справи очевидний. Для універсального випадку визначення універсального доопрацювання припиняється, якщо воно імітує скінченну кількість обчислень, всі вони зупиняються. З огляду на недетерміновану ТММ, якщо він зупиняється на вході х, то, за пропозицією 1, вона має лише обмежену кількість різних обчислень, які всі зупиняються. Звідси і його універсальне визначення деталізаціїМ зупинки на вході х. Зворотне пряме.

Теорема 3 : Проблема зупинки детермінованих ТМ та екзистенціальні та універсальні проблеми зупинки для недетермінованих ТМ є еквівалентними Тьюрінгу.

Доведення : Це випливає з пропозиції 2 та того, що детерміновані ТМ є підмножиною недетермінованих ТМ, де і екзистенціальна, і універсальна зупинка зводяться до простої детермінованої зупинки.

Отже, з точки зору обчислюваності, і я спокушаюсь сказати з точки зору, що підштовхує символ, здається, що не важливо, яке визначення було обране, екзистенціальне чи універсальне, для недетермінованої проблеми зупинки.

Чому слід вибрати одне визначення зупинки NTM, і яке

Однак чи є багато сенсу процесу детермінації, який не зберігає мову, визнану оригінальним автоматом?

Суть використання недетермінізму в розпізнаванні мови полягає в тому, що він передбачає оракул, який повинен вгадувати правильний обчислювальний шлях, коли є такий, який призведе до прийняття, принципово екзистенційного погляду .

У недетермінованих обчисленнях немає різниці між відхиленням від зупинки та неприпинення. В обох випадках зробити висновок неможливо. Розпізнана мова не змінюється, якщо ви замінюєте відхилення під час зупинки нескінченним нескінченним циклом, що можна зробити для всіх недетермінованих автоматів, про які я можу придумати, включаючи NFA (просто додайте циклічний циклϵ-перехід на стани відмов). Це також стосується детермінованих автоматів за умови наявності спеціального символу, що позначає кінець вводу, як це зазвичай робиться для LBA.

Таким чином, прийняття шляхом зупинки може розглядатися як канонічна форма прийняття недетермінованих автоматів.

Враховуючи це канонічне уявлення, проблема зупинки також може бути виражена так само, як проблема розпізнавання :

Чи є єдиний порядок, який, даючи мову L визнаний машиною Тюрінга М, може зважитися на будь-яке слово х чи хL?

Це свідчить про тісний зв'язок між рекурсивною енумерабілізією та проблемою зупинки. Ця еквівалентність між рішенням про зупинку ТММ на вхід х і стримування х мовою М визнає, що це справедливо як для детермінованих ТМ, так і для недетермінованих, якщо ми враховуємо екзистенційне визначення недетермінованого зупинки.

Однак у випадку універсального припинення цей близький зв’язок втрачається. Подібне твердження можна зробити, але для іншої мови, ніж та, яку визнає NTM (або альтернативно для іншого, універсального визначення того, що є мовою, визнаною NTM).

Розробляючи теорію, важливо використовувати послідовні визначення, щоб підкреслити структури та відносини в їх найпростішій і найбільш виразній формі. Цілком зрозуміло, що в цьому випадку узгодженість з іншими визначеннями говорить про те, що екзистенційне зупинення є природним визначенням зупинки для недетермінованих машин Тьюрінга.

Звичайно, завжди можна зацікавити аналіз універсальної зупинки. Аналогічно, можна було б також розробити теорію універсального прийняття NTM, засновану на вимозі, що рядокх приймається, якщо всі розрахунки на вході хзупини і прийми. Але, мабуть, це не вважається головним питанням в теорії машин Тьюрінга.

Справа інших сімей автоматів

Частини вищевказаного аналізу не можуть поширюватися на більшість сімей недетермінованих автоматів. Наприклад, атомат (PDA), що висувається, може визначати мови, які не можуть бути розпізнані детермінованим КПК. Те ж саме може бути і щодо ЛБА. Інші частини можуть бути поширені на всі недетерміновані сім'ї.

Що стосується визначення недетермінованого зупинки, навіть незважаючи на те, що міркування, застосовані у справі машини Тюрінга, можуть бути непридатними, єдиним розумним вибором є прийняття визначення, яке відповідає тому, яке використовується для недетермінованих машин Тьюрінга, отже, екзистенційне визначення .

Визначення проблеми зупинки для цих сімей недетермінованих автоматів випливає і відповідає визначенню, запропонованому у цьому питанні.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.