Теорема о ёмкостной иерархии — различия между версиями
(→Формулировка) |
(→Формулировка) |
||
Строка 1: | Строка 1: | ||
== Формулировка == | == Формулировка == | ||
− | '''Теорема о емкостной иерархии''' утверждает, что для любых двух [[Конструируемая по памяти функция|конструируемых по памяти функций]] <tex>f</tex> и <tex>g</tex> таких, что <tex> \ | + | '''Теорема о емкостной иерархии''' утверждает, что для любых двух [[Конструируемая по памяти функция|конструируемых по памяти функций]] <tex>f</tex> и <tex>g</tex> таких, что <tex> \lim \limits_{n \rightarrow \infty} f(n)/g(n) = 0</tex>, выполняется <tex>DSPACE(g(n)) \ne DSPACE(f(n))</tex>. |
== Доказательство == | == Доказательство == |
Версия 17:49, 18 марта 2010
Формулировка
Теорема о емкостной иерархии утверждает, что для любых двух конструируемых по памяти функций и таких, что , выполняется .
Доказательство
Зафиксируем
и .Рассмотрим язык
не допускает, используя не более памяти .Пусть
, тогда для него есть машина Тьюринга такая, что .Рассмотрим
.Пусть
допускает . Тогда , но в по определению не может быть пары , которую допускает . Таким образом, получаем противоречие.Если
не допускает , то не принадлежит языку . Это значит, что либо допускает , либо не допускает, используя памяти больше . Но выбрана таким образом, что на любом входе она использует не более памяти. Получаем противоречие.Следовательно такой машины не существует. Таким образом,
., так как можно проэмулировать машину Тьюринга такую, что . Для каждой пары рассмотрим . Если завершила работу и не допустила, то допускает . В другом случае не допускает. Так как любая такая машина использует памяти не более , а , будет использовать памяти не более .
Получается, что и . Следовательно,
Теорема доказана.