Доведіть, що булева функція, яку можна обчислити в T (n) машиною оперативної пам'яті, знаходиться в DTIME (T (n) ^ 2)


10

Питання - вправа 1.9 з книги "Арора-Барак" Обчислювальна складність - сучасний підхід :


Визначте машину ОЗУ Тьюрінга як машину Тьюрінга, яка має пам'ять з випадковим доступом. Ми формалізуємо це так: Машина має нескінченний масив A, який ініціалізується на всі заготовки. Доступ до цього масиву здійснюється наступним чином. Одна з робочих стрічок машини позначена як адресна стрічка. Також машина має два спеціальні символи алфавіту, позначені R і W, і додатковий стан, який ми позначаємо q_access. Щоразу, коли машина вводить q_access, якщо її адресна стрічка містить 'i'R (де' i 'позначає двійкове представлення i), то значення A [i] записується в комірку поруч із символом R. Якщо його стрічка містить 'i'Wa (де a є деяким символом в алфавіті машини), тоді A [i] встановлюється значення a.

Покажіть, що якщо булева функція обчислюється протягом часу (деякий час, який можна сконструювати ) оперативною пам'яттю TM, то вона знаходиться в .T ( n ) T D T I M E ( T ( n ) 2 )fТ(н)ТDТЯМЕ(Т(н)2)


Тривіальне рішення за допомогою додаткової пари запису на стрічку (адреса, значення) виявляється в , оскільки ця стрічка може мати розмір з парами тоді як адреса кожної пари може мати розмір .O ( T ( n ) 2 ) O ( T ( n ) ) O ( T ( n ) )DТЯМЕ(Т(н)3)О(Т(н)2)О(Т(н))О(Т(н))


Як ви знаєте обмежений розмір адреси? Не можу моє перше записування бути ? І якщо ви можете прив’язати його до , то розмір адреси - , а не . 22Т(н)Т(н)журнал(Т(н))Т(н)
Xodarap

1
Оскільки адреса повинна бути записана на стрічку машиною Тюрінга , розмір (тобто довжина рядка) адреси не може перевищувати O ( T ( n ) ) , доступним адресним простором є O ( 2 T ( п ) ) . Т(н)О(Т(н))О(2Т(н))
cc

3
Зауважте, що Арора та Барак прямо в своєму вступі просять інших, хто не публікує відповіді на свої запитання. Дивіться також політику щодо домашніх завдань .
Каве

Вибачте за це. Я просто вивчаю книгу сам і заважаю в цьому питанні. Я не знаю, чи таке моделювання насправді існує чи це просто помилка друку. Якщо ви знаєте відповідь, будь ласка, надішліть мені приватне повідомлення на адресу ccqmpux@gmail.com, і тоді я закрию це питання. О(Т(н)2)
cc

Більше можна знайти в першій главі посібника з теоретичних інформатик.
Каве

Відповіді:


2

Ви пишете в коментарях :

Оскільки адреса має бути записаний в стрічці з допомогою -time машини Тьюринга, розмір (тобто довжини рядка) адреси не може перевищувати O ( T ( п ) ) .Т(н)О(Т(н))

Чи можете ви використовувати подібний аргумент для поліпшення меж

[Стрічка] може мати розмір з парами O ( T ( n ) ), тоді як адреса кожної пари може мати розмір O ( T ( n ) ) .О(Т(н)2)О(Т(н))О(Т(н))

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


Я сподіваюся, що цей натяк є достатньо розпливчастим, щоб поважати побажання авторів книги, але також був дещо корисним. (Евристичний: Я б сказав студенту стільки, якби проблема була поставлена ​​як вправа. Мабуть, не на іспиті.)
Рафаель
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.