Чому ми використовуємо односмугові машини Тьюрінга за часовою складністю?


18

Як відомо, існує багато аномалій для односмугових машин Тюрінга, коли час : багатосмуговий моделювання ТМ, моделювання більшого алфавіту стрічки з просто { 0 , 1 , b } , час конструктивності, нещільність теорема ієрархії часу, ...о(н2){0,1,б}

Також є такі результати, як , і дуже конкретні для конкретних задач O ( n 2 ) часові межі для простих задач (які не перекладаються на навіть суперлінійні нижні межі на двох стрічкових ТМ).DТiме(о(нlgн)=RегО(н2)

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

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

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

Чи є якась причина, чому складність у часі все ще визначається з точки зору односмугових ТМ? (крім історичних причин)


7
Я ніколи не бачив складності в часі, визначеної односмуговими ТМ. Я бачив лише надійні класи складності в часі, визначені односмуговими ТМ.

@ Ricky, я мав на увазі часову складність проблеми визначається з точки зору складності в часі ТМ однієї стрічки, яка може її вирішити.
Каве

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

7
але чи справді це звичайне визначення? те, що я бачив у підручниках, це: 1) визначити одну стрічкову машину Тьюрінга (адже вона простіша); 2) покажіть, як поширитись на інші варіанти, зокрема мульти-стрічки та випадковий доступ; 3) показати, що всі вони можуть імітувати один одного, максимум уповільнення поліномів; 4) негайно забудьте про модель здебільшого, принаймні, поки нам не знадобляться більш тонкі речі, такі як машини oracle та скорочення простору журналу; тому, як @RickyDemer, я б оскаржив твердження, що це дійсно звичайне визначення.
Сашо Ніколов

1
У мене немає відповіді на це, але я просто хочу вказати на цю роботу вам Yamakami ( springerlink.com/content/u844854721p83870 ). У цьому документі йдеться про те, що відбувається, коли ви додаєте поради до невеликої машини (тобто однолінійної TM з лінійним часом). Це доводить кілька розділів класу, але це робиться за допомогою цих односмугових ТМ. Ці розділення не спрацювали, якби у вас був інший вид ТМ. Я думаю, що це приємний приклад, коли ви можете довести круті речі за допомогою однієї стрічки і, мабуть, не можете з іншою моделлю. Мораль - це "односмугові питання, коли ти маєш справу з тонкими речами".
Маркос Вільягра

Відповіді:


13

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

Я думаю, що Тьюрінг, можливо, віддав перевагу одній стрічці TM через фізичну правдоподібність.

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

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

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

к


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

Я очікував теоретичних причин (незрозумілості моделей), але вважаю цю відповідь дуже цікавою, тому приймаю її. Знову дякую.
Каве

Утримуючи головки стрічки на місці, схоже, ми можемо зробити загальну енергетичну лінію або, сподіваємось, не гіршу, ніж квазілінійна в часі, створивши форму конструкції Hennie-Stearns. Я уявляю, як стрічки згортаються у все більші петлі, коли вони поширюються в будь-якому напрямку ... Або, більш образно, на котушках стрічок, 100 стрічок на котушку, 100 котушок на стійку, 100 стійок на склад, і на і на. Звичайно, для обмеженої енергії за ітерацію нам знадобиться загальна енергія лінійна у часі. Але квазілінійний кращий за наївний квадратик, тому я думав, що це згадаю.
Dan Brumleve

14

f(н)

Є чітко зрозуміла педагогічна причина, чому Сіпсер робить це, а саме курс, природно, протікає таким чином, оскільки:

  • Вам слід ввести машину з однією стрічкою перед багатоступеневою машиною, інакше посилює криву навчання.

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

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

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


Ні, IIRC, моя перша зустріч з ТМ була першим виданням Хопкрофта та Улмана. Але причина, по якій я задаю це питання, насправді пов’язана із приємним підручником Сіпсера, я викладав теорію складності на основі Сіпсера, і я вважав, що вона буде простішою та чистішою (без жодного істотного матеріалу, втраченою) для мене та студентів, якщо вона базуватиметься на мульти -смугальні ТМ. Усі ці невеликі технічні деталі щодо обмеженого доступу до односмугових ТМ можна було б уникнути, і я міг би висвітлити більш цікаві матеріали за обмежений час, який я мав. Сіпсер розслаблено використовує дисертацію Церкви Тьюрінга,
Каве

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

2
Я не бачу, як можна було б мати сенс підлінійних просторів без окремої вхідної стрічки.

Так, я припускаю, що SPACE робиться по-іншому, частково тому, що ви будете робити підлінійні межі, чого, ймовірно, не будете TIME. Я б заперечував, щоб підписатися на TIME або зробити все, що робить Sipser для SPACE, якщо ви хочете зробити це так, звичайно, я хотів би поговорити про TIME або TIME_1 або що завгодно, перш ніж мульти-стрічкові машини.
Джефф Бердджес

1
Цікаво, що Сіпсер просто визначає "машину Тюрінга" при визначенні SPACE (f (n)), але пізніше змінює визначення під час обговорення підлінійних функцій f, призначаючи вправу на еквівалентність суперлінеру f. Я раніше викладав цей матеріал від Сіпсера. Я в той час не надто замислювався над цим, але мені зараз це приємно.
Джефф Бердджес

7

Оригінальна машина Тьюрінга була описана за допомогою однієї стрічки:

www.cs.ox.ac.uk/activities/ieg/e-library/sources/tp2-ie.pdf

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

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

Дивись також:

http://www.cs.utah.edu/~draperg/cartoons/2005/turing.html

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