В логике , теории конечных моделей и теории вычислимости теорема Трахтенброта (принадлежащая Борису Трахтенброту ) утверждает, что проблема действительности в логике первого порядка на классе всех конечных моделей неразрешима . Фактически, класс истинных предложений над конечными моделями не является рекурсивно перечислимым (хотя он является ко-рекурсивно перечислимым ).
Теорема Трахтенброта подразумевает, что теорема Гёделя о полноте (которая является фундаментальной для логики первого порядка) не выполняется в конечном случае. Также кажется нелогичным, что быть валидным над всеми структурами «легче», чем только над конечными.
Теорема была впервые опубликована в 1950 году: «Невозможность алгоритма для проблемы разрешимости на конечных классах». [1]
Мы следуем формулировкам Эббингауза и Флума [2]
Пусть σ — реляционный словарь с хотя бы одним бинарным символом отношения.
Замечания
Это доказательство взято из главы 10, раздела 4, 5 «Математической логики» Г.-Д. Эббингауза.
Как и в наиболее распространенном доказательстве первой теоремы Гёделя о неполноте с использованием неразрешимости проблемы остановки , для каждой машины Тьюринга существует соответствующее арифметическое предложение , эффективно выводимое из , такое, что оно истинно тогда и только тогда, когда останавливается на пустой ленте. Интуитивно утверждается, что «существует натуральное число, которое является кодом Гёделя для записи вычисления на пустой ленте, которая заканчивается остановкой».
Если машина останавливается за конечное число шагов, то полная запись вычислений также конечна, то есть конечный начальный сегмент натуральных чисел, такой, что арифметическое предложение также истинно на этом начальном сегменте. Интуитивно это происходит потому, что в этом случае доказательство требует арифметических свойств только конечного числа чисел.
Если машина не останавливается за конечные шаги, то это ложно в любой конечной модели, поскольку не существует записи конечного вычисления, которое заканчивается остановкой.
Таким образом, если останавливается, является истинным в некоторых конечных моделях. Если не останавливается, является ложным во всех конечных моделях. Таким образом, не останавливается тогда и только тогда, когда является истинным для всех конечных моделей.
Множество машин, которые не останавливаются, не поддается рекурсивному перечислению, поэтому множество допустимых предложений над конечными моделями не поддается рекурсивному перечислению.
В этом разделе мы представляем более строгое доказательство Либкина. [3] Обратите внимание на то, что в приведенном выше утверждении следствие также влечет за собой теорему, и это направление мы здесь доказываем.
Теорема
Доказательство
Согласно предыдущей лемме, мы на самом деле можем использовать конечное число символов бинарных отношений. Идея доказательства похожа на доказательство теоремы Фейгина, и мы кодируем машины Тьюринга в логике первого порядка. Мы хотим доказать, что для каждой машины Тьюринга M мы строим предложение φ M словаря τ такое, что φ M конечно выполнимо тогда и только тогда, когда M останавливается на пустом входе, что эквивалентно проблеме остановки и, следовательно, неразрешимо.
Пусть M= ⟨Q, Σ, δ, q 0 , Q a , Q r ⟩ — детерминированная машина Тьюринга с одной бесконечной лентой.
Поскольку мы имеем дело с проблемой остановки на пустом входе, мы можем предположить wlog, что Δ={0,1} и что 0 представляет пробел, а 1 представляет некоторый символ ленты. Мы определяем τ так, чтобы мы могли представлять вычисления:
Где:
Предложение φ M утверждает, что (i) <, min , T i и H q интерпретируются как указано выше и (ii) что машина в конечном итоге останавливается. Условие остановки эквивалентно утверждению, что H q∗ (s, t) выполняется для некоторых s, t и q∗ ∈ Q a ∪ Q r и после этого состояния конфигурация машины не меняется. Конфигурации останавливающейся машины (неостанавливающаяся не является конечной) можно представить как τ (конечное) предложение (точнее, конечную τ-структуру, которая удовлетворяет предложению). Предложение φ M имеет вид: φ ≡ α ∧ β ∧ γ ∧ η ∧ ζ ∧ θ.
Разберем по компонентам:
Где θ 2 равно:
И:
Где θ 3 равно:
s-1 и t+1 — это определяемые в первом порядке сокращения для предшественника и преемника в соответствии с упорядочением <. Предложение θ 0 гарантирует, что содержимое ленты в позиции s изменится с 0 на 1, состояние изменится с q на q', остальная часть ленты останется прежней и что головка переместится в s-1 (т. е. на одну позицию влево), предполагая, что s не является первой позицией на ленте. Если это так, то все обрабатывается θ 1 : все то же самое, за исключением того, что головка не перемещается влево, а остается на месте.
Если φ M имеет конечную модель, то такая модель, которая представляет вычисление M (которое начинается с пустой ленты (т. е. ленты, содержащей все нули) и заканчивается в состоянии остановки). Если M останавливается на пустом входе, то множество всех конфигураций останавливающихся вычислений M (закодированных с помощью <, T i и H q ) является моделью φ M , которая конечна, поскольку множество всех конфигураций останавливающихся вычислений конечно. Отсюда следует, что M останавливается на пустом входе тогда и только тогда, когда φ M имеет конечную модель. Поскольку остановка на пустом входе неразрешима, то и вопрос о том, имеет ли φ M конечную модель (эквивалентно, является ли φ M конечно выполнимым), также неразрешим (рекурсивно перечислимым, но не рекурсивным). Это завершает доказательство.
Следствие
Доказательство
Перечислите все пары , где конечно и .
Следствие
Доказательство
Из предыдущей леммы следует, что множество конечно выполнимых предложений рекурсивно перечислимо. Предположим, что множество всех конечно допустимых предложений рекурсивно перечислимо. Поскольку ¬φ конечно допустимо тогда и только тогда, когда φ не конечно выполнимо, мы заключаем, что множество предложений, которые не являются конечно выполнимыми, рекурсивно перечислимо. Если и множество A, и его дополнение рекурсивно перечислимы, то A рекурсивно. Из этого следует, что множество конечно выполнимых предложений рекурсивно, что противоречит теореме Трахтенброта.