В математической логике диагональная лемма (также известная как лемма диагонализации, лемма о самореференции или теорема о неподвижной точке ) устанавливает существование самореализации. - ссылочные предложения в некоторых формальных теориях натуральных чисел - особенно те теории, которые достаточно сильны для представления всех вычислимых функций. Предложения, существование которых обеспечивается диагональной леммой, могут затем, в свою очередь, использоваться для доказательства фундаментальных ограничивающих результатов, таких как теоремы Гёделя о неполноте и теорема Тарского о неопределенности.
Пусть - набор натуральных чисел. A теория T представляет вычислимую функцию , если существует " граф "предикат на языке T такой, что для каждого , T доказывает
Здесь - это число, соответствующее натуральному числу , которое определяется как закрытый термин 1+ ··· +1 (единиц) и - это число, соответствующее .
Диагональная лемма также требует, чтобы существовал систематический способ присвоения каждой формуле θ натурального числа # (θ) назвал свое число Гёделя. Формулы затем могут быть представлены в рамках теории цифрами, соответствующими их числам Гёделя. Например, θ представлен как ° # (θ)
Диагональная лемма применяется к теориям, способным представить все примитивно-рекурсивные функции. К таким теориям относятся арифметика Пеано и более слабая арифметика Робинсона. Общая формулировка леммы (приведенная ниже) делает более сильное предположение, что теория может представлять все вычислимые функции.
Пусть T первого порядка теория на языке арифметики и способна представить все вычислимые функции. Пусть F - формула языка с одной свободной переменной, тогда:
Лемма - существует предложение такое, что доказуемо в T.
Интуитивно - это референциальное предложение, в котором говорится, что имеет свойство F. Предложение также можно рассматривать как фиксированную точку операции, присваиваемой каждой формуле предложение . Выражение , построенное в доказательстве, не совсем то же самое, что , но доказуемо эквивалентен ему в теории T.
Пусть f: N→N- функция, определяемая:
для каждой T-формулы θ в одной свободной переменной, и f (n) = 0 в противном случае. Функция f вычислима, поэтому существует формула Γ f, представляющая f в T. Таким образом, для каждой формулы θ, T доказывает
то есть
Теперь определим формулу β (z) как:
Тогда T доказывает, что
то есть
Теперь возьмем θ = β и ψ = β (° # (β)), а предыдущее предложение переписывается в ψ ↔ F (° # (ψ)), что является желаемым результатом.
(Тот же аргумент в разных терминах приводится в [Raatikainen (2015a)].)
Лемма называется «диагональной», потому что она имеет некоторое сходство с Диагональный аргумент Кантора. Термины "диагональная лемма" или "неподвижная точка" не встречаются в статье 1931 года Курта Гёделя или в статье 1936 года Альфреда Тарски .
Рудольф Карнап (1934) был первым, кто доказал общую самореференциальную лемму, которая гласит, что для любой формулы F в теории T, удовлетворяющей определенным условиям, существует формула ψ такая, что ψ ↔ F (° # (ψ)) доказуемо в работе Т. Карнапа было сформулировано на альтернативном языке, поскольку концепция вычислимых функций еще не была разработана в 1934 году. Мендельсон ( 1997, p. 204) полагает, что Карнап был первым, кто заявил, что нечто вроде диагональной леммы подразумевается в рассуждениях Гёделя. Гёдель знал о работе Карнапа к 1937 году.
Диагональная лемма тесно связана с теоремой рекурсии Клини в теории вычислимости, и их соответствующие доказательства аналогичны.