А.М.Анисов
АКСИОМАТИЧЕСКОЕ ИСЧИСЛЕНИЕ НЕОПРЕДЕЛЕННОСТИ1
Abstract. In this article the axioms are found for the earlier-built three-value semantics of uncertainty. The resulting axiomatic system is non-contradictory and complete with this semantics. In the basis of the axiomatic system there is the algorithm of converting the formulae of the initial language into the auxiliary one that eliminates the uncertainty symbol.
Пусть L - язык исчисления предикатов первого порядка произвольной сигнатуры, не содержащий функциональных констант2. Будем обозначать символом Lн язык, отличающийся от L лишь наличием формул вида нА, где «н» - новый одноместный логический оператор, интуитивный смысл которого состоит в утверждении неопределенности А. В работе [С.н.] была предложена теоретико-модельная интерпретация утверждений с неопределенностью, основанная на семантике возможных миров без отношения достижимости на мирах.
Структуройдля языка Lн назовем пару Мн=(и,^} ieJ), где J - множество индексов, такую, что:
а) |J| > 1;
б) Fi^Fj, если i^j;
в) каждое Mi=(U, Fi) является структурой4 для языка L;
г) если с - индивидная константа, то Fi^^FjO для всех
ijeJ.
Областью определения всех функций интерпретации Fi (ieJ) является множество дескриптивных символов языка L^ а области значений различаются для каждой функции. Неформально говоря, структура для языка Lн - это не менее, чем двухэлементное множество стандартных структур для языка L, имеющих один и тот же универсум и отличающихся друг от друга интерпретацией хотя бы одного предикатного (но не индивидного) символа языка L.
1 Статья подготовлена при поддержке РГНФ, проект № 99-03-19702.
2 Это не приводит к потере общности, поскольку каждую п-местную функциональную контакту можно представить в виде п+1-местного предикатного символа.
3 Через [С.н.] будем обозначать работу: АнисовА.М. Семантика неопределенности // Логические исследования. Вып.4. М., 1997.
4 См.: Шенфилд Д Математическая логика. М., 1975.
Если язык не фиксирован (так что не ясно, о какого вида структурах идет речь), условимся структуры первого рода называть н-структурами, а для стандартных структур оставим термин ст руктура.
Оценка f определяется обычным образом: это отображение множества индивидных переменных языка L в универсум и. Если А - формула языка L, то определение выполнимости А в структуре (и, Fi) при оценке f стандартное. Расширим его на случай формул вида нА: формула нА выполнена в структуре (и, Fi) при оценке если существуют j,k е J такие, что А выполнена в (и, Fj) при f и А не выполнена в (и, Fk) при £
Формула А в структуре Мi = (и, Fi) принимает значение 1 (0), если А (не) выполнена в Мi при любых £
Каждую структуру Мi = (и, Fi) из н-структуры Мн = (U, {Fi} iеJ) будем называть также возможным миром из Мн, поскольку эти структуры попарно отличаются интерпретацией хотя бы одной предикатной (но не индивидной) константы.
Формула А в н-структуре Мн=(и,^} ¡еГ) принимает значение 1 (0), если А принимает значение 1 (0) в каждом из возможных миров; если же А принимает значение 1 в одних возможных мирах и значение 0 во всех остальных возможных мирах, то А принимает значение 1/0 в Мн. Значение 1 отождествляется с истинностью, значение 0 - с ложностью, а значение 1/0 - с неопределенностью.
Иначе говоря, в н-структуре Мн = (и, iеJ) формула А истинна (принимает значение 1), если для всех iеJ А истинна (принимает значение 1) в (и^); А ложна (принимает значение 0), если для всех iеJ А ложна (принимает значение 0) в (и^); наконец, А неопределенна (принимает значение 1/0), если существуют _),к е J такие, что А истинна (принимает значение 1) в (и, Fj) и А ложна (принимает значение 0) в (и, Fk), и при этом для каждого iе J либо А истинна (принимает значение 1) в (и^), либо А ложна (принимает значение 0) в (и^).
Разумеется, не всякая формула обязательно получит истинностное значение в н-структуре. Например, формула Р(х) в какой-либо структуре из некоторой н-структуры может выполняться при одних оценках и не выполняться при других (таким образом, она не будет ни истинной, ни ложной в структуре), что воспрепятствует ее означиванию в н-структуре.
Назовем формулу А языка Lн н-общезначимой, если каков бы ни был язык L'н такой, что Lн с Ь'н, А принимает значение 1 во всех структурах Мн языка L'н5.
Мы не слишком погрешим против истины, если скажем, что н-общезначимые формулы истинны во всех возможных (в нашем смысле) мирах и потому истинны во всех н-структурах.
Построенная н-семантика обладает рядом интересных свойств. В частности, оказалось, что отношение логического следования в н-семантике нельзя формализовать (см. [С.н.]). Однако отсюда нельзя было извлечь никаких выводов в отношении вопроса о возможности формализации свойства н-общезначимо-сти. Можно ли синтаксическими средствами распознавать н-обще-значимость? В [С.н.] мы показали, что проблема установления н-общезначимости формулы А языка Lн сводится к проблеме поиска доказательства некоторой формулы А* в языке классической логики предикатов первого порядка L° и поэтому поддается формализации. Основываясь на этом результате, дадим явную формулировку аксиоматического исчисления неопределенности, сводящего семантическую проблему общезначимости к синтаксическому вопросу построения соответствующих формальных доказательств.
Язык L° получается из языка Lн следующим образом. Во-первых, уберем из языка Lн связку неопределенности н. Во-вторых, каждому предикатному символу Р языка Lн сопоставим предикатный символ Р° той же местности. Таким образом, L° содержит все предикатные символы языка Lн, плюс эти же символы, помеченные знаком °. Отсюда Lн и Ь° = Ь° и {н}.
Введем операцию *, переводящую формулы языка Lн и Ь° в формулы языка L°. Условимся, что в исходных формулах расставлены все скобки без сокращений, но они не содержат лишних пар скобок. Операция *, примененная к формуле А языка Lн и Ь°, ничего не меняет, если А не содержит символа н. Итак, если в А отсутствует связка н, то А* = А. Далее, обозначая через К квантор общности или существования и через п произвольную бинарную булеву связку, для любых формул В и С (возможно, содержащих связку н) положим (КхВ)* = Кх(В*), (-В)* = -(В*), (В п С)* = (В* п С*) и (нВ)* = (н(В*))*.
Например, пусть А есть н(Р(х) & Q(x)). Тогда
(А)* = (н(Р(х) & Q(x)))* = (н((Р(х) & Q(x))*))*. Поскольку (Р(х) & Q(x))* = (Р(х) & Q(x)), имеем (н((Р(х) & Q(x))*))* = (н((Р(х) & Q(x))))*. Появившаяся лишняя пара скобок
5 Мотивировку этого определения см. в [С.н.].
может служить индикатором того, что первое (в порядке, указанном скобками) преобразование * было реально проведено, и тем самым способствовать предотвращению зацикливания в компьютерных реализациях предлагаемого алгоритма (что-нибудь вроде (нР(х))* = (нР(х)*)* = (нР(х))* = ... и т.д., до бесконечности). После этого при проведении второго (внешнего) преобразования * лишние скобки можно опустить. Ход дальнейших преобразований описан ниже.
Лишь в том случае, если А содержит н, происходят изменения, устраняющие вхождения связки н. Но прежде чем их описать, введем следующее определение. Назовем предикатные символы от меченными, если они находятся в формуле, являющейся результатом операции *, примененной к формуле вида нА. Иными словами, в формуле В = (нА)* все предикатные символы из А считаются отмеченными. Чтобы удобнее было фиксировать отмеченные предикаты, будем иногда использовать подчеркивание, как показано ниже (на практике подчеркивания облегчают преобразования формул в случае вложенных друг в друга вхождений связки н).
Допустим, получена формула А*, то есть А* является формулой языка классической логики предикатов L° и потому не содержит связки н. Предположим, что некоторые (а может быть, и все) вхождения предикатных символов в А* не являются отмеченными. Тогда (н(А*))* преобразуется в (А* & —А*\*) V (—А* & А*\*), где А*\* получается из А* заменой каждого неот меченного предикатного символа языка Lн соответствующим символом со знаком ° языка L°. При этом все предикатные символы становятся отмеченными:
(нА)* = (н(А*))* = (А* & — А*\*) V (—А* & А*\*).
Предположим теперь, что в формуле А* все вхождения предикатных символов являются отмеченными. Это означает, что в А* каждый предикатный символ находился в области действия связки н и все вхождения этой связки уже устранены посредством операции *. Тогда (н(А*))* преобразуется в А* & —А* и все предикатные символы в формуле А* & —А* считаются отмеченными:
(нА)* = (н(А*))* = А* & —А*.
Заметим, что формула вида н(А*) может не быть формулой языка Lн (если А* содержит предикатные символы со знаком °) и заведомо не является формулой языка L° (так как содержит связку н). Тем не менее, это правильно построенная формула языка Lн и Ь°.
Менее формально, определим А* как конечный результат последовательной замены каждой входящей в А подформулы вида
нВ, такой, что В не содержит н, подформулой (нВ)*. Иначе говоря, в ходе преобразования * нужно выполнить следующую последовательность шагов. Вначале все подформулы вида нВ, в которых В не содержит связки н, заменяются на (нВ)*. Если в результате вновь возникли подформулы вида нВ, в которых В не содержит связки н, вновь заменяем их на (нВ)*. Действуем так до тех пор, пока вхождения связки н не будут полностью элиминированы. Получившаяся формула и будет А*.
Завершим преобразование (н((Р(х) & Q(x))))* (опуская более не нужные лишние скобки). Поскольку предикаты Р и Q не являются отмеченными, имеем
(н((Р(х) & Q(x))))* = ((Р(х) & Q(x)) & —(Р°(х) & Q°(x))) V (—(Р(х) & Q(x)) & (Р°(х) & Q°(x))).
Пусть теперь дана формула УхнР(х). Выполним операцию *: (УхнР(х))* = Ух(Р(х) & — Р°(х)) V (—Р(х) & Р°(х)).
Еще один пример. Вычислим (нннР(х))*. На первом шаге получаем формулу нн(Р(х) & — Р°(х)) ' V (—Р(х) & Р°(х)). Подформулу (Р(х) & — Р°(х)) V (—Р(х) & Р° (х)), в которой все предикатные символы отмечены и которая поэтому далее не меняется, обозначим через Р. На втором шаге имеем н(Р & — Р). Так как все предикатные символы по-прежнему отмечены, на последнем, третьем, шаге получаем: (нннР(х))* = (Р & —Р) & —(Р & —Р).
Рассмотрим последний пример. Формула вида — нн(Р(;) ^ н—Q(t)) (где t - индивидная константа или переменная) будет преобразована следующим образом: (—нн(Р(;) ^ н—Q(t)))* трансформируется в — нн{Р(^ ^ Г(—Q(t) & ——Q°(t)) V (——Q(t) & — Q°(t))1}. Формула [(—Q(t) & ——Q°(t)) V (——Q(t) & —Q°(t))], в которой все предикатные символы отмечены, дальнейшим преобразованиям не подлежит. Поэтому обозначим ее через О. Получаем —нн(Р^) ^ О). Далее устраняем подформулу н(Р(;) ^ О): —н{ [(P(t) ^ О) & — (Р°т ^ 0)1 V Г—(РА) ^ О) & (Р°т ^ 0)1}. Так как не отмеченных предикатных символов не осталось, последняя связка н устраняется введением противоречия: (—нн(Р^) ^ н—Q(t)))* = — Щ(Р(А ^ О) & — (Р°т ^ 0)1 V Г—(Р(А ^_01&_1Р°Щ_^_0)1} & — iГ(P(t) ^ О) & —(P°(t) ^ 0)1 V Г—(P(t) ^ О) & (Р°(А ^ О)]} }. Получившаяся формула записана на языке Ь°, что и требовалось.
Обозначим через АИН° систему в языке Lн и Ь°, содержащую следующие схемы аксиом и правила вывода.
Тавтологии классической логики;
УхЛ(х) ^ Л(г), Л(г) ^ ЗхЛ(х); А ^ В, А А ^ В(х)
В(х) ^ А
В А ^ УхВ(х)
ЗхВ(х) ^ А
(в двух последних правилах индивидная переменная х не свободна в Л);
Правило (*):
(где А - формула языка Ьн).
Ограничение на правило вывода (*) объясняется тем, что операция * применяется лишь к формулам языка Ьн.
Коротко говоря, АИН° получается из классического гильбер-товского аксиоматического исчисления предикатов первого порядка добавлением четвертого правила вывода (*), позволяющего при условии построения доказательства формулы Л* считать доказанной также саму формулу А при условии, что А сформулирована в языке Ьн. При этом понятия доказательства и вывода из посылок остаются стандартными. Обозначения -аин°А и |-КИП°А указывают на доказуемость формулы А в АИН° и в КИП° (классическом исчислении предикатов первого порядка в языке L°) соответственно. Назовем использование правила вывода (*) в доказательстве (выводе) формулы А сущест венным, если А не доказуема (не выводима) без применения (*).
Замечание 1. Отметим, что в АИН° будут доказуемы и формулы, не являющиеся формулами языка Lн.
Например, кин°Ух(Р°(х) ^ Р°(х)), |-аин°Зх(нР°(х) V -нР°(х)), -аин°Ух((Р°(х) ^ Р°(х)) ^ (нР(х) ^ нР(х))) и т.д. Однако для нас с содержательной стороны интересны лишь формулы языка Lн, тогда как формулы, построенные с использованием символов из Ь° - Lн, имеют сугубо техническое значение, призванное обеспечить построение доказательств формул языка Lн.
С учетом сделанного замечания сформулируем несколько результатов, касающихся свойств построенного исчисления. Предложение 0.
(a). Множ ест во н-общезначимых формул являет ся консерва-т ивнымрасширением множ ест ва общезна чимых формул.
(b). Формула А языка Ьн н-общезначима тогда и только т огда, когда формула А* доказуема в классическом исчислении предикат ов первого порядка.
Доказательство пунктов (а) и (Ь) содержится в работе [С.н.].
А * А
Предложение 1. Если - АИН°А, то А н-общезначима.
Проверка н-общезначимости тавтологий, аксиом УхЛ(х) ^ Л(1;) и Л(1;)^ЗхЛ(х) и того, что стандартные правила вывода сохраняют н-общезначимость, осуществляется так же, как в классическом случае проверка общезначимости, и потому тривиальна.
Осталось рассмотреть 4-ое правило (*). Осуществим индукцию по длине доказательства и по числу применений в нем правила (*). В качестве базиса индукции возьмем такие доказательства, в которых правило (*) существенно использовалось только на последнем шаге. Это означает, что доказательство посылки А* правила (*) проводилось в классическом исчислении предикатов первого порядка, обеспечивающем переходы от общезначимых формул к общезначимым. Тем самым -КИП°А* и формула А* общезначима. Но всякая общезначимая формула по пункту (а) предложения 0 будет н-общезначимой. Поэтому в базисном случае осуществлялись переходы от н-общезначимых формул к н-обще-значимым формулам. На последнем шаге имеем -аин°А. По пункту (Ь) предложения 0 формула А также будет н-общезначи-мой.
Допустим теперь, что доказательство длины т содержит п применений правила (*). По индукционному предположению все входящие в доказательство формулы н-общезначимы. Если шаг т+1 состоит в применении аксиомы или правила вывода классического исчисления предикатов, то формула номер т+1 также будет н-общезначимой. Если же шаг т+1 состоит в п+1 применении правила (*), то на шаге т мы доказали в АИН° формулу А*, которая, по индукционному предположению, н-общезначима. Поскольку А* - формула первопорядкового языка классической логики предикатов L°, в силу пункта (а) предложения 0 А* является общезначимой формулой. Отсюда А* доказуема в классическом исчислении предикатов первого порядка (т.е. |-КИП°А*). По пункту (Ь) предложения 0 формула А будет н-общезначимой, что и требовалось.
Следствие 1. Исчисление АИН° непротиворечиво.
Последнее утверждение можно усилить: Следствие 2. Множество теорем исчисления АИН° является консервативным расширением множества теорем классического первопорядкового исчисления КИП°.
В противном случае нашлась бы теорема - АИН° А, сформулированная в первопорядковом языке L°, для которой неверно, что |-КИП°А. Но тогда формула А не является общезначимой и, следова-
тельно, не является н-общезначимой, что противоречит предложению 1.
Предложение 2. Если формула А языка Lн н-общезначима, то
— ИН°А.
Если н-общезначимая формула А является формулой перво-порядкового языка L, то А общезначима (пункт (а) предложения 0). Следовательно, — АИН° А, поскольку АИН° содержит КИП°, а КИП° содержит КИП (классическое исчисление предикатов в языке Ь).
Если н-общезначимая формула А языка Lн содержит вхождения оператора «н», то А* будет доказуема в КИП° (пункт (Ь) предложения 0). Следовательно, — аин°А, поскольку АИН° содержит КИП°.
Предложения 1 и 2 устанавливают непротиворечивость и полноту исчисления АИН° относительно языка Lн и семантики неопределенности.
Замечание 2. Предположим, что — аин°А, причем при доказательстве А существенно использовалось правило (*). Тогда формула А будет н-общезначимой в силу предложения 1. Однако в АИН° невозможно (из-за ограничения на применение правила (*)) доказать н-общезначимую формулу А°, полученную из А заменой каждого атомарного предикатного символа Р языка Ь на атомарный предикатный символ Р° языка Ь°. Поэтому, хотя всякая теорема исчисления АИН° н-общезначима, обратное неверно, если н-обще-значимость рассматривать на всем множестве формул данного исчисления, которое строится в языке Lн и Ь°. Но, как уже указывалось в замечании 1, мы интересуемся только фрагментом Lн.
Предложение 3. Если А - формула языка Ьн, то — АИн°(—ннА).
Покажем, что — АИН°(—ннА). В предположении, что в А* не все предикатные символы отмечены, имеем (—ннА)* = —(ннА)* = —[н((А* & —А*\*) V (—А* & А*\*) )]*. Так как в полученной формуле все предикатные символы отмечены, обозначим подчеркнутую часть через А. Тогда —[н А1* = —[А & —А]. Но формула вида —[А & —А] доказуема. Если же в А* все предикатные символы отмечены, имеем (—ннА)* = —(ннА)* = —[н(А* & — А*)1 = —[(А* & —А*) & —(А* & —А*)], что вновь доказуемо.
Предложение 4. Если А иВ — формулы языка Ьн, то —АИН°(н(А п В) ^ (нА V нВ)).
Если в А* и в В* все предикатные символы отмечены, то (н(А* п В*))* преобразуется в противоречивую формулу (А* п В*) & —(А* п В*), а из противоречия вытекает все, что угодно. Пред-
положим, что в А* содержатся неотмеченные предикатные символы, а в В* все они отмечены. Тогда (н(А п В) ^ (нА V нВ))* = (н(А п В))* ^ (нА V нВ)* = [[(А* п В*) & —(Л*\* п В*)] V [-(Л* п В*) & (Л*\* п В*)]] ^ [[(Л* & —Л*\*) V (—Л* & Л*\*)] V (В* &—В*)]. Отбрасывая противоречивый дизъюнктивный член, получаем [[(А* п В*) & —(Л*\* п В*)] V [-(Л* п В*) & (Л*\* п В*)]] ^ [(Л* & —Л*\*) V (—Л* & Л*\*)]. Эта формула является тавтологией независимо от того, какой конкретно бинарной булевой связкой является п. Предположим теперь, что в А* все предикатные символы отмечены, а в В* не все. Тогда (снова отбрасывая противоречивый дизъюнкт в консеквенте) (н(А п В) ^ (нА V нВ))* = [[(Л* п В*) & —(Л* п В*\*)] V [—(Л* п В*) & (Л* п В*\*)]] ^ [(В* & —В*\*) V (—В* & В*\*)], опять получаем тавтологию независимо от п. Наконец, если и в А*, и в В* есть неотмеченные предикатные символы, имеем (н(А п В) ^ (нА V нВ))* = [[(А* п В*) & —(Л*\* п В*\*)] V [—(Л* п В*) & (Л*\* п В*\*)]] ^ [[(Л* & —Л*\*) V (—Л* & Л*\*)] V [(В* & —В*\*) V (—В* & В*\*)]]. Последняя импликация вновь является тавтологией.
Предложение 5. - АИН°(нЗхР(х) ^ ЗхнР(х)).
Рассмотрим нЗхР(х) ^ ЗхнР(х). Имеем (нЗхР(х) ^ ЗхнР(х))* = (нЗхР(х))* ^ Зх(нР(х))* = [(ЗхР(х) & —ЗхР°(х)) V (—ЗхР(х) & ЗхР°(х))] ^ Зх[(Р(х) & —Р°(х)) V (—Р(х) & Р°(х)]. Последняя формула доказуема в логике предикатов, откуда
|- АИн°нЗхР(х) ^ ЗхнР(х). Предложение 6. Формулы ЗхнР(х) ^ нЗхР(х), УхнР(х) ^ нУхР(х), нУхР(х) ^ УхнР(х) не являют ся доказуемымивАИН°.
Рассмотрим формулу ЗхнР(х) ^ нЗхР(х) и н-структуру, в которой имеются два возможных мира, на которых интерпретируется предикатный символ Р. Пусть в первом мире (Р) = 8 и 8 Ф 0, а во втором мире Р2(Р) = 8', причем 8 с 8' и 8 Ф 8'. Тогда теоретико-множественная разность 8' - 8 непуста. Элемент из 8' - 8 это тот самый х, который не обладает свойством Р в первом мире, но обладает этим свойством во втором, обеспечивая истинность антецедента ЗхнР(х). Однако консеквент нЗхР(х) в данной н-структуре ложен, поскольку утверждение ЗхР(х) истинно в каждом из миров. Таким образом, ЗхнР(х) ^ нЗхР(х) не является н-общезначимой. По предложению 1, формула ЗхнР(х) ^ нЗхР(х) не является теоремой АИН°.
Преобразуем формулу УхнР(х) ^ нУхР(х). Получим (УхнР(х) ^ нУхР(х))* = Ух(нР(х))* ^ (нУхР(х))* = Ух[(Р(х) & —Р°(х)) V (—Р(х) & Р°(х))] ^ [(УхР(х) & —УхР° (х)) V (—УхР(х) & УхР°(х))]. Последняя импликация не доказуема в исчислении предикатов,
так что VxhP(x) ^ нУхР(х) не будет н-общезначимой. По предложению 1, VxhP(x) ^ hVxP(x) не является теоремой АИН°.
Наконец, рассмотрим формулу нVxP(x) ^ VxнP(x). Снова возьмем н-структуру с двумя мирами. Положим теперь S = U, S' с S и S Ф S'. Утверждение о том, что все объекты обладают свойством Р, становится неопределенным: оно истинно в первом мире и ложно во втором. Таким образом, антецедент нVxP(x) принимает значение «истинно». Но консеквент VxнP(x) оказывается ложным в этой н-структуре, поскольку элементы из S n S' обладают свойством Р в каждом из миров и потому определенно обладают свойством Р. Значит, не всем х неопределенно присуще Р, вопреки кон-секвенту. Поэтому формула нVxP(x) ^ VxнP(x) также не будет н-общезначимой и, следовательно, нVxP(x) ^ VxнP(x) не доказуема в АИН° согласно предложению 1.
Предложение 7. Не существует формулы А т акой, чт о - АИн° нА.
В [С.н.] было показано, что не существует формулы А в языке Lн такой, что нА н-общезначима. Следовательно, по предложению 1, ни одна формула вида нА не является доказуемой в АИН°.