Изменения

Перейти к: навигация, поиск

Busy beaver

963 байта убрано, 18:17, 16 января 2016
Нет описания правки
|proof=
В данной задаче существует функция Существует программа длины <tex>\Sigma(n)+ 1</tex>, которая делает столько же шагов: надо просто в зависимости от числа состояний <tex>n</tex> возвращает максимальное число единиц, которое может быть записано на ленту машиной-чемпионом. Именно машина-чемпион является усердным бобромпредыдущую добавить один незначащий символ. Из смысла задачи следуетНапример, что функция <tex>\Sigma(n)</tex> не убываетпробельный. <br>Теперь покажемЗначит, что <tex>\forall n \ BB(n) > \Sigma(n).</tex> Для того, чтобы поместить одну единицу существует программа длины на лентуодин больше, требуется совершить хотя бы 1 шаг. Из этого следует, что <tex>BB(n)</tex> растет быстрее, чем <tex>\Sigma(n)</tex>которая делает не меньше шагов. Следовательно, <tex>BB(n)</tex> не убывает. Значит, переход является корректным и наше утверждение доказано.
}}
----
Каждая такая программа делает как минимум <tex>f(n) + 1</tex> шагов.
Так как мы рассматриваем <tex>n</tex> в десятичной записи, то длина <tex>p_n</tex> будет равна <tex> \lg n + const </tex>, где <tex>const</tex> {{---}} длина кода без десятичной записи <tex>n</tex>. Пусть <tex>n_0</tex> {{---}} решение уравнения <tex>\lg n + const = n</tex>. Тогда для всех натуральных <tex> n > \left \lceil n_0 \right \rceil </tex> будет выполнено неравенство: <tex> n > len(p_n) \Rightarrow BB(n) \geqslant BB(len(p_n)) > m = f(n) </tex>. Для того, чтобы увидеть, что переход корректный, рассмотрим программу длины <tex>n</tex>, совершающую максимальное число шагов. Существует программа длины <tex>n + 1</tex>, которая делает столько же шагов: надо просто в предыдущую добавить один незначащий символ. Например, пробельный. Значит, существует программа длины на один больше, которая делает не меньше шагов. Следовательно, <tex>BB</tex> не убывает. Значит, переход является корректным и наше утверждение доказано.
}}
----
25
правок

Навигация