Я прочитал страницу Википедии для правила 110 в клеточных автоматах, и я более или менее знаю, как они работают (набор правил решает, где рисовать следующие 1 или 0).
Я только что прочитал, что они завершены по Тьюрингу, но я даже не могу понять, как бы вы «запрограммировали» «правило 110»?
Ответы:
Универсальность - это несколько неформальное понятие. Это примерно означает, что для каждой вычислимой функции в модели есть «программа» так что «запуск» на любом входе всегда «останавливает» и «выводит» правильный ответ. (Обратите внимание, что машины Тьюринга здесь не появляются: они являются лишь одним примером универсальной вычислительной модели.)P P xf P P x
Процитированные слова - это те слова, которые необходимо определить. Для машин Тьюринга:
Правило 110, как вычислительная модель, должно быть определено формально таким же образом. Определение является разумным, если можно вычислить вычислительную модель вычислительной модели в следующем смысле: существует вычислимая функция такая, что для каждой программы и ввода (оба кодируются как натуральные числа) останавливается тогда и только тогда, когда останавливается на , и если останавливается, то его вывод идентичен выводу на .P x S ( P , x ) P x S ( p , x ) P xS P x S(P,x) P x S(p,x) P x
Если вас интересует конкретная настройка правила 110 в качестве вычислительной системы, я предлагаю вам взглянуть на статью Мэтью Кука, в которой доказывается универсальность правила 110 (точнее, вычислительной системы, построенной на основе правила 110).
Что касается других правил, таких как правило 30 и правило 90, мы не знаем, что они не являются универсальными. Вокруг них могут быть построены убедительные вычислительные системы, которые являются универсальными, но мы просто не знаем ни о каких.
источник
Из доказательства Мэтью:
Сначала автор доказывает, что «система тегов», которая удаляет 2 символа на каждом шаге, является универсальной путем компиляции машинной программы Тьюринга с 2 состояниями. После этого он доказывает, что система планеров действительно может реализовать систему тегов. Это пошаговый процесс. Затем он изучает космическое время CA-110, чтобы найти планеры и правильно привязать их к системе планеров.
Теперь на ваш вопрос: как бы вы «запрограммировали» «правило 110»?
Найдите простейшую машину Тьюринга с двумя состояниями и найдите ленты с основными операциями ИЛИ, И, XOR, НЕ .
Скомпилируйте их в систему тегов.
Скомпилируйте реализацию системы тегов в реализацию планера.
Правильно адаптируйте его к планерам CA-110, и вы получите базовые операции в клеточных автоматах.
Шаги с 1 по 4 выполняются только один раз. Оттуда вычисление сводится к сумме чисел с использованием логических элементов.1+1=2
Примечание в сторону. Планеры - это особые конструкции. Операции будут рассматриваться как частицы, движущиеся и сталкивающиеся (планеры), генерирующие различный выходной сигнал в зависимости от того, как эти планеры начинаются или сталкиваются.
источник