В математической логике тавтология (от древнегреческого : ταυτολογία ) — это формула , которая истинна независимо от интерпретации ее составляющих терминов , при этом только логические константы имеют фиксированное значение. Например, формула, которая гласит: «мяч зеленый или мяч не зеленый», всегда истинна, независимо от того, что такое мяч и независимо от его цвета. Тавтология обычно, хотя и не всегда, используется для обозначения действительных формул пропозициональной логики .
Философ Людвиг Витгенштейн впервые применил этот термин к избыточности пропозициональной логики в 1921 году, заимствовав его из риторики , где тавтология — это повторяющееся утверждение. В логике формула выполнима, если она истинна хотя бы при одной интерпретации, и, таким образом, тавтология — это формула, отрицание которой невыполнимо. Другими словами, она не может быть ложной.
Невыполнимые утверждения, как через отрицание, так и через утверждение, формально известны как противоречия . Формула, которая не является ни тавтологией, ни противоречием, называется логически условной . Такая формула может быть сделана либо истинной, либо ложной на основе значений, присвоенных ее пропозициональным переменным.
Обозначение двойного турникета используется для указания того, что S является тавтологией. Тавтология иногда обозначается как "V pq " , а противоречие как "O pq ". Символ тройника иногда используется для обозначения произвольной тавтологии, при этом двойной символ ( falsum ) представляет произвольное противоречие; в любой символике тавтология может быть заменена на значение истины " true ", как, например, обозначается как "1". [1]
Тавтологии являются ключевым понятием в пропозициональной логике , где тавтология определяется как пропозициональная формула, которая истинна при любой возможной булевой оценке ее пропозициональных переменных . [2] Ключевым свойством тавтологий в пропозициональной логике является то, что существует эффективный метод проверки того, всегда ли выполняется данная формула (эквивалентно, является ли ее отрицание невыполнимым).
Определение тавтологии можно распространить на предложения в логике предикатов , которые могут содержать квантификаторы — особенность, отсутствующая в предложениях пропозициональной логики. Действительно, в пропозициональной логике нет различия между тавтологией и логически допустимой формулой. В контексте логики предикатов многие авторы определяют тавтологию как предложение, которое может быть получено путем взятия тавтологии пропозициональной логики и равномерной замены каждой пропозициональной переменной формулой первого порядка (одна формула на пропозициональную переменную). Набор таких формул является собственным подмножеством набора логически допустимых предложений логики предикатов (т. е. предложений, которые истинны в каждой модели ).
Слово тавтология использовалось древними греками для описания утверждения, которое считалось истинным просто потому, что одно и то же было повторено дважды, уничижительное значение, которое до сих пор используется для риторических тавтологий . Между 1800 и 1940 годами слово приобрело новое значение в логике и в настоящее время используется в математической логике для обозначения определенного типа пропозициональной формулы, без уничижительных коннотаций, которые оно изначально имело.
В 1800 году Иммануил Кант писал в своей книге «Логика» :
Тождество понятий в аналитических суждениях может быть как явным ( explicita ), так и неявным ( implicita ). В первом случае аналитические предложения являются тавтологичными.
Здесь аналитическое суждение относится к аналитической истине , утверждению на естественном языке, которое является истинным исключительно из-за используемых терминов.
В 1884 году Готтлоб Фреге в своих Grundlagen предположил , что истина является аналитической, если она может быть выведена с помощью логики. Однако он поддерживал различие между аналитическими истинами (т. е. истинами, основанными только на значениях их терминов) и тавтологиями (т. е. утверждениями, лишенными содержания).
В своем Tractatus Logico-Philosophicus в 1921 году Людвиг Витгенштейн предположил, что утверждения, которые могут быть выведены с помощью логической дедукции, являются тавтологичными (пустыми по смыслу), а также аналитическими истинами. Анри Пуанкаре сделал похожие замечания в Science and Hypothesis в 1905 году. Хотя Бертран Рассел сначала выступал против этих замечаний Витгенштейна и Пуанкаре, утверждая, что математические истины не только нетавтологичны, но и синтетически , позже он высказался в их пользу в 1918 году:
Все, что является предложением логики, должно быть в том или ином смысле похоже на тавтологию. Это должно быть что-то, что имеет какое-то особое качество, которое я не знаю, как определить, что принадлежит логическим предложениям, но не другим.
Здесь под логическим утверждением понимается утверждение, которое можно доказать с помощью законов логики.
Многие логики в начале 20-го века использовали термин «тавтология» для любой формулы, которая является универсально допустимой, будь то формула пропозициональной логики или логики предикатов . В этом широком смысле тавтология — это формула, которая истинна при всех интерпретациях , или которая логически эквивалентна отрицанию противоречия. Тарский и Гёдель следовали этому использованию, и оно появляется в учебниках, таких как учебник Льюиса и Лэнгфорда. [3] Такое широкое использование термина сегодня менее распространено, хотя некоторые учебники продолжают его использовать. [4] [5]
Современные учебники чаще ограничивают использование «тавтологии» действительными предложениями пропозициональной логики или действительными предложениями предикатной логики, которые могут быть сведены к пропозициональным тавтологиям путем подстановки. [6] [7]
Пропозициональная логика начинается с пропозициональных переменных , атомарных единиц, которые представляют конкретные пропозиции. Формула состоит из пропозициональных переменных, связанных логическими связками, построенными таким образом, что истинность общей формулы может быть выведена из истинности или ложности каждой переменной. Оценка — это функция, которая присваивает каждой пропозициональной переменной либо T (для истинности), либо F (для ложности). Таким образом, используя пропозициональные переменные A и B , бинарные связки и представляющие дизъюнкцию и конъюнкцию соответственно, и унарную связку, представляющую отрицание , можно получить следующую формулу: .
Оценка здесь должна назначить каждому из A и B либо T, либо F. Но независимо от того, как это назначение сделано, общая формула получится верной. Ибо если первый дизъюнкт не удовлетворяется конкретной оценкой, то A или B должно быть назначено F, что сделает один из следующих дизъюнктов назначенным T. В естественном языке либо оба A и B истинны, либо по крайней мере один из них ложен.
Формула пропозициональной логики является тавтологией, если сама формула всегда истинна, независимо от того, какая оценка используется для пропозициональных переменных . Существует бесконечно много тавтологий.
Во многих из следующих примеров A представляет утверждение «объект X связан», B представляет «объект X — книга», а C представляет «объект X находится на полке». Без конкретного референтного объекта X соответствует утверждению «все связанные вещи — книги».
Минимальная тавтология — это тавтология, которая не является примером более короткой тавтологии.
Проблема определения того, является ли формула тавтологией, является фундаментальной в пропозициональной логике. Если в формуле встречается n переменных, то для формулы существует 2 n различных оценок. Следовательно, задача определения того, является ли формула тавтологией, является конечной и механической: нужно только оценить истинностное значение формулы при каждой из ее возможных оценок. Один алгоритмический метод проверки того, что каждая оценка делает формулу истинной, заключается в создании таблицы истинности , которая включает все возможные оценки. [2]
Например, рассмотрим формулу
Существует 8 возможных оценок для пропозициональных переменных A , B , C , представленных первыми тремя столбцами следующей таблицы. Остальные столбцы показывают истинность подформул формулы выше, достигая кульминации в столбце, показывающем истинность исходной формулы под каждой оценкой.
Поскольку каждая строка последнего столбца показывает T , данное предложение подтверждается как тавтологическое.
Также возможно определить дедуктивную систему (т. е. систему доказательств) для пропозициональной логики как более простой вариант дедуктивных систем, используемых для логики первого порядка (см. Kleene 1967, Sec 1.9 для одной из таких систем). Доказательство тавтологии в соответствующей системе вывода может быть намного короче полной таблицы истинности (формула с n пропозициональными переменными требует таблицы истинности с 2 n строками, что быстро становится невозможным по мере увеличения n ). Системы доказательств также требуются для изучения интуиционистской пропозициональной логики, в которой метод таблиц истинности не может быть использован, поскольку закон исключенного третьего не предполагается.
Говорят, что формула R тавтологически подразумевает формулу S , если каждая оценка, которая делает R истинной, также делает S истинным. Такая ситуация обозначается . Это эквивалентно тому, что формула является тавтологией (Kleene 1967, стр. 27).
Например, пусть будет . Тогда не является тавтологией, потому что любая оценка, которая делает ложным, сделает ложным. Но любая оценка, которая делает истинным, сделает истинным, потому что является тавтологией. Пусть будет формулой . Тогда , потому что любая оценка, удовлетворяющая , сделает истинным — и, таким образом, сделает истинным.
Из определения следует, что если формула является противоречием, то тавтологически подразумевает каждую формулу, потому что нет оценки истинности, которая заставляет быть истинным, и поэтому определение тавтологической импликации тривиально выполняется. Аналогично, если является тавтологией, то тавтологически подразумевается каждой формулой.
Существует общая процедура, правило подстановки , которое позволяет строить дополнительные тавтологии из заданной тавтологии (Kleene 1967 sec. 3). Предположим, что S является тавтологией и для каждой пропозициональной переменной A в S выбрано фиксированное предложение S A. Тогда предложение, полученное путем замены каждой переменной A в S соответствующим предложением S A, также является тавтологией.
Например, пусть S будет тавтологией:
Пусть S A будет и пусть S B будет .
Из правила замены следует, что предложение:
также является тавтологией.
Аксиоматическая система является полной , если каждая тавтология является теоремой (выводимой из аксиом). Аксиоматическая система является правильной , если каждая теорема является тавтологией.
Проблема построения практических алгоритмов для определения того, являются ли предложения с большим числом пропозициональных переменных тавтологиями, является областью современных исследований в области автоматизированного доказательства теорем .
Метод таблиц истинности, проиллюстрированный выше, является доказуемо правильным – таблица истинности для тавтологии будет заканчиваться в столбце только с T , в то время как таблица истинности для предложения, которое не является тавтологией, будет содержать строку, конечный столбец которой – F , а оценка, соответствующая этой строке, является оценкой, которая не удовлетворяет проверяемому предложению. Этот метод проверки тавтологий является эффективной процедурой , что означает, что при наличии неограниченных вычислительных ресурсов его всегда можно использовать для механистического определения того, является ли предложение тавтологией. Это означает, в частности, что множество тавтологий над фиксированным конечным или счетным алфавитом является разрешимым множеством .
Однако как эффективная процедура таблицы истинности ограничены тем фактом, что количество оценок, которые необходимо проверить, увеличивается как 2 k , где k — количество переменных в формуле. Этот экспоненциальный рост длины вычислений делает метод таблиц истинности бесполезным для формул с тысячами пропозициональных переменных, поскольку современное вычислительное оборудование не может выполнить алгоритм за приемлемый период времени.
Проблема определения, существует ли какая-либо оценка, которая делает формулу истинной, — это проблема булевой выполнимости ; проблема проверки тавтологий эквивалентна этой проблеме, поскольку проверка того, что предложение S является тавтологией, эквивалентна проверке того, что не существует оценки, удовлетворяющей . Проблема булевой выполнимости является NP-полной , и, следовательно, тавтология является ко-NP-полной . Широко распространено мнение, что (эквивалентно для всех NP-полных проблем) ни один алгоритм с полиномиальным временем не может решить проблему выполнимости, хотя некоторые алгоритмы хорошо работают на специальных классах формул или быстро завершаются во многих случаях. [8]
Фундаментальное определение тавтологии дано в контексте пропозициональной логики. Однако это определение может быть распространено на предложения в логике первого порядка . [9] Эти предложения могут содержать квантификаторы, в отличие от предложений пропозициональной логики. В контексте логики первого порядка проводится различие между логическими обоснованностями , предложениями, которые истинны в каждой модели, и тавтологиями (или тавтологическими обоснованностями ), которые являются собственным подмножеством логических обоснованностей первого порядка. В контексте пропозициональной логики эти два термина совпадают.
Тавтология в логике первого порядка — это предложение, которое может быть получено путем взятия тавтологии пропозициональной логики и равномерной замены каждой пропозициональной переменной формулой первого порядка (одна формула на пропозициональную переменную). Например, поскольку является тавтологией пропозициональной логики, является тавтологией в логике первого порядка. Аналогично, в языке первого порядка с унарными символами отношения R , S , T следующее предложение является тавтологией:
Он получается путем замены на , на и на в пропозициональной тавтологии: .
Не все логические обоснования являются тавтологиями в логике первого порядка. Например, предложение:
верно в любой интерпретации первого порядка, но оно соответствует пропозициональному предложению , которое не является тавтологией пропозициональной логики.
Является ли данная формула тавтологией, зависит от формальной системы логики, которая используется. Например, следующая формула является тавтологией классической логики, но не интуиционистской логики :