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


19

Нехай . Мені потрібно вирішити, чи F є рішучим чи рекурсивно перелічуваним. Я думаю, що це вирішимо, але я не знаю, як це довести.F={M:M is a TM which stops for every input in at most 50 steps}

Мої думки

Ця частина «50 кроків» негайно повертає знак R для мене. Якби це було для конкретного введення, воно було б вирішальним. Однак ось це для кожного введення. Перевірка його на нескінченні введення змушує мене думати, що проблема є ко-RE , тобто її доповнення є прийнятним.

Можливо, я можу перевірити конфігурації та побачити, що всі конфігурації після 50 кроків не призводять до прийняття стану - як це зробити?

Відповіді:


21

NN1

Як зауваження Свджі в попередній відповіді, якщо машина зупиняється після не більше кроків, то значні лише клітинки на стрічці. Тоді досить змоделювати машину на всіх вхідних рядках форми x \ in \ Sigma ^ N , яких існує кінцеве число.N0,1,,N1MxΣN

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

І - Чи припускаю, що таке, що його довжина більше N , автоматично відхиляється? xN
Юзеф

Чому не можна переходити на N далі, ніж N комірки, протягом N кроків обчислення?
Юзеф

@Jozef: Моделювання просто перебрати всі можливі вхідні рядки довжиною N . Ви можете переглядати більше рядків, але нічого більше не дізнаєтесь, оскільки все-таки важливі лише перші N символів. Причина, чому він не може йти далі, ніж N комірок, полягає в тому, що машини Тьюрінга (або стандартне визначення їх все одно) рухають лише одну клітинку за крок.
Ніль де Бодорап

Правильно, я зрозумів. тож ви пам’ятаєте лише перші N символів кожного слова, таким чином ви перевіряєте всі їх поєднання. чому ви видалили опис конфігурацій?
Юзеф

Це все ще видно, якщо ви подивитесь на попередні зміни. Я переглянув його до цього , тому що в той час як інший відповідь , може бути , цікаво, багато того , що зробив це «цікаво» тільки служив , щоб приховати той факт , що процедура прийняття рішення нічого більш-менш імітуючи на всіх можливих входах довжини N . Я подумав, що краще переглянути відповідь на щось набагато простіше, що в основному дійшло до кореня того, що робить проблему вирішуваною. MN
Ніль де Бодорап

4

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

Нехай - множина станів M , F Q - множина приймаючих станів і Γ - алфавіт. Тоді ми будуємо безліч станів Q ' з М ' наступним чином : Q ' = { п , д , їв , р , QMFQΓQM де p - положення голови читання / запису над стрічкою. Ми можемо обмежити позицію { - 50 , . . . , 50 }, оскільки кількість дозволених обчислювальних кроків обмежує кількість доступних позицій.Q={n,q,s,p,a|n{0,...,50}qQ,sΓ,p{50,...,50},aqF}p{50,...,50}

Маючи стан кінцевого автомата М ' тоді означає , що ми на державному д вихідного автомата, з ї на стрічці в положенні р , де також / записує головка читання позиціонується , після n -го кроку обчислення. Держава є прийнятною, якщо a t r u e .n,q,s,p,aMqspnatrue

Трансформація перехідного відношення бетонної машини для твердіння - це трохи більше роботи, але це не потрібно для початкового питання, оскільки достатньо показати, що простір стану є кінцевим (і таким чином ми можемо просто перевірити кожен вхід довжиною не більше 50 символи на кожному такому автоматі). Ідея полягає в тому, щоб побудувати новий перехідний ставлення , яке йде від стану в стан п + 1 , д ' , ево ' , р ' , а ' в пn,q,s,p,an+1,q,s,p,an-й крок тоді і тільки тоді перехід обчислення було в первісному щодо переходу.q,s,pq,s,p


Як ви моделюєте сховище на стрічці, тобто можливість перегляду символів, які ви вже прочитали, на обмеженому автоматі?
Ніль де Бодорап

@NieldeBeaudrap: Ви перераховуєте весь простір станів, тобто ви робите модельну перевірку кінцевої стрічки та автомата управління машиною Turing.
swegi

1
З огляду на те, що ОП задає основні запитання щодо обчислювальної техніки для машин Тьюрінга, ви, можливо, захочете розпакувати цей ескіз на щось більш повне. (Я раніше ніколи не чув фразу "перевірка моделі" в обчислювальному контексті.) У контексті я б типово припускав, що під "обмеженим автоматом" ви означатимете DFA або подібне, якщо ви не вказали інше, і мені незрозуміло, що відповідав би вкладенню ДФА в таку конструкцію. Якщо ви просто маєте на увазі графік, що представляє можливі траєкторії ТМ, то я згоден.
Ніль де Бодорап

Під час перевірки моделі кінцевої частини стрічки я маю на увазі те, що ви написали у своїй відповіді: просто протестуйте кожен вхід розміром не більше 50 і перевірте, чи досягнуто прийнятного стану.
swegi

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