УДК 519.7
А. С. Нагорный
О СВОЙСТВАХ ПРЕДПОЛНЫХ КЛАССОВ В P31
Аннотация. Доказываются 27 свойств, связывающих предполные классы трехзначной логики.
Ключевые слова: трехзначная логика, предполный класс.
Abstract. The article proves 27 qualities binding precomplete classes of ternary logic.
Key words: three-valued logic, precomplete class.
Введение
Пусть k - натуральное число, k > 2; Ek = {0,1,...,k — 1}, Pk - множество всех конечноместных функций на Ek . Элементы множества Pk будем называть функциями k -значной логики, или k -значными функциями. Определения используемых ниже операции суперпозиции, замыкания и замкнутого класса можно найти в [1].
Замкнутый (относительно суперпозиции) класс H функций k -значной логики назовем предполным в Pk, если H Pk, но для любой функции
f е Pk\H замыкание множества H u{f} совпадает с Pk .
Все предполные классы в P были найдены Э. Постом в [2, 3], все предполные классы в P3 были описаны С. В. Яблонским в [4]. Затем для любого k > 3 С. В. Яблонским и А. В. Кузнецовым было установлено, что число предполных в Pk классов конечно [5], а И. Розенберг описал предикаты, определяющие все предполные в Pk классы [6, 7].
1. Некоторые свойства пересечений предполных классов в P3
Как известно [4], в трехзначной логике имеется ровно 18 предполных классов:
Mo,M1,M2 - классы функций, монотонных относительно порядка 2 < 0 < 1, 0 < 1 < 2 и 1 < 2 < 0 соответственно;
U0,Щ,и2 - классы функций, сохраняющих разбиение {{0},{1,2}}, {{1},{2,0}} и {{2}, {0,1}} соответственно;
C0, Q, C2 - классы функций, сохраняющих 2-местный предикат ((x = y) voe {x,y}) для любого се E3 ;
70, Tj, T2 - классы функций, сохраняющих константу 0, 1 и 2 соответственно;
T12,7)2,7)1 - классы функций, сохраняющих множество {1,2}, {0,2} и {0,1} соответственно;
1 Работа выполнена при финансовой поддержке РФФИ (проект 09-01-00701).
В - класс Слупецкого (все трехзначные функции, имеющие либо не более одной существенной переменной, либо принимающие не более двух значений);
S - класс функций, самодвойственных относительно перестановки
(120);
Ь - класс линейных функций (над полем Галуа ОЕ(3)).
Отметим, что в Р3 имеются тройки попарно двойственных классов (это классы МI, VI, СI, Т и Ту).
Нам будет удобно обозначать через К дополнение множества функций К трехзначной логики до всего Р3, т.е. К = Р3 \ К . Обозначим через Е(/) множество значений функции / . Всюду в этой статье сложение и умножение будем вычислять по модулю 3.
Пусть /, g е Р3 . Будем говорить, что функция g является подфункцией функции / , если g можно получить подстановкой в функцию / вместо некоторых ее переменных констант из Е3 .
Сформулируем сначала два простых факта, которыми мы будет часто пользоваться далее.
Факт 1. Пусть Ке{М0,М1,М2,и0,иьи2,С0,С1,С2,В,Ь}. И пусть / -произвольная функция из К. Тогда любая подфункция функции / также принадлежит классу К.
Это следует из того, что указанные классы содержат все константы и являются замкнутыми.
Факт 2 (см. [5]). Пусть Ке {М0,М1,М2V0,Ц[,и2}, / - произвольная функция из Р3 . Тогда из принадлежности классу К всех одноместных подфункций функции / следует принадлежность классу К и самой функции /.
Занумеруем предполные классы в Р3 числами от 1 до 18 в том порядке, в котором они перечислены выше. Каждой функции /(хп) е Р3 поставим в соответствие так называемую строку принадлежности (О1С2 ...о^), Оу е {+, —} , в которой С; = « + » тогда и только тогда, когда / принадлежит 1 -му предполному классу.
В табл. 1 указаны строки принадлежности всех трехзначных функций, имеющих не более одной существенной переменной. Функцию из Р3 мы здесь и далее будем задавать строкой ее значений (предполагая, что наборы значений переменных перечислены в стандартном порядке).
Таблица 1
Таблица принадлежности одноместных функций трехзначной логики предполным классам (см. также [5])
М 0 М1 ся М о ^1 и 2 0) 01 02 Т0 т Т2 Т12 Т02 Т01 В Ь
1 2 3 4 5 6 7 8 9
(000) + + + + + + + + + + - - - + + + - +
(001) - + - - - + + + - + - - - - + + - -
(002) + + - - + + + - + + - + - + + + - -
Окончание табл. 1
1 2 3 4 5 6 7 8 9
(010) + — + — + + + + — + + — — + + + — —
(011) — + + + — + + + — + + — + — + + — —
(012) + + + + + + + + + + + + + + + + + +
(020) — — + — + — + — + + — — — + — + — —
(021) — — — + — — + — — + — — + — — + — +
(022) — + + + + — + — + + — + + + — + — —
(100) — — — + — + + + — — — — — — + + — —
(101) — — — — + + + + + + — —
(102) — — — — — + — — + — — + — — + + — +
(110) + — — — — + + + — — + — — — + + — —
(111) + + + + + + + + + — + — + — + + — +
(112) + + — + — + — + + — + + + — + + — —
(120) + + +
(121) — — — + + — — + + — — — + — — + — —
(122) — + — + — — — + + — — + + — — + — —
(200) — — — + + — + — + — — — — + — + — —
(201) + + +
(202) + — — — + — + — + — — + — + — + — —
(210) — — — — + — — + — — + — — + — + — +
(211) — — + + — — — + + — + — + — — + — —
(212) + — + + + — — + + — + + + + — + — —
(220) — — — — + + + — + — — — — + — + — —
(221) — — — + — + — + + — — — + — — + — —
(222) + + + + + + + + + — — + + + — + — +
Для решения задачи поиска всех попарно различных пересечений предполных классов функций трехзначной логики ключевым является следующий результат.
Теорема. В Р3 справедливы следующие включения:
М1 п Ь с М0 п М2,
М2 п V1 п С1 с М0,
М1 п М2 с V0,
С1 п С2 с и0,
V0 п V1 п V2 с М0 п М1 п М2 п Ь, V п V2 с С0,
М1 п М2 с С0,
М1 п V с С0 п С2,
V1 п Т01 п В с С0,
Т0 п В с С0,
Т12 п Ь с V0,
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8) (9)
(10)
и0 п Ь с С0 п В, (12)
С0 п Ь с и0, (13)
Т0 п Т п Ь с Б, (14)
М0 п Б с М1 п М2, (15)
и0 п Б с и1 п и2 п Т12, (16)
С0 п Б с С1 п С2, (17)
Т0 п Б с Т1 п Т2, (18)
т12 п Б с т02 п т01, (19)
В п Б с Ь, (20)
Т02 п Т01 с Т0, (21)
С1 п т0 с Т01, (22)
М1 пТ1 с Т12 пТ0Ь (23)
М1 п С1 п т02 с и0 п и2, (24)
и0 п Т1 с Т12, (25)
и0 п и2 п Т02 с М1> (26)
М1 п Т02 п В с С0 п С2. (27)
Доказательство.
Докажем (1). Рассмотрим произвольную функцию /(хп) е М1 пЬ . Из Факта 1 следует, что у функции /(хп) все одноместные подфункции у(х) тоже принадлежат классу М1 п Ь . Из табл. 1 имеем у(х) е {(000), (012), (111), (222)} с М0 п М2. Тогда в соответствии с фактом 2 получим /(хп) е М0 п М2.
Докажем (2). Пусть /(хп) е М2 п Vl п С1 . Согласно факту 1 для любой одноместной подфункции у( х) функции / (хп) справедливо у(х) е М2 п Vl п С1. Из табл. 1 видно, что у(х) е {(000), (010),(012), (111), (212), (222)} с М0 . Тогда, используя факт 2, получим /(хп) е М0 .
Справедливость вложений (3) и (4) устанавливается аналогично (используются одноместные подфункции).
Для обоснования пункта (5) докажем более сильное утверждение:
V0 п V1 п V2 = {0,1,2, х}
(с точностью до несущественных переменных).
Очевидно вложение правой части в левую. Фиксируем произвольную функцию /(хп) еV0 п Vl п V2. Согласно факту 1 любая одноместная под-
функция у функции / также лежит в и0 пи пи2. Значит, у є {(000), (012), (111), (222)}. Пусть / Ф соп8І;. Тогда у / найдется хотя бы одна существенная переменная. Будем считать, что это хп . Легко видеть, что
существует набор ап-1 є Еп-1 такой, что /(ап-1, х) = х.
Рассмотрим любой набор (3п 1, соседний с набором ап-1. Пусть эти наборы различаются в позиции і, і є {0,1,..., п -1} , т.е. аг- Ф Рг-.
Докажем, что /((3п 1, х) = х . Предположим, что это не так. Тогда существует такое число оє Е3, что /((3п 1, х) = а при всех х є Е3 . Обозначим через Т тот единственный элемент, который содержится в множестве Е3 \ {аі ,Рі}. Воспользуемся тем, что /(хп) є ит. Так как /(ап-1,т) =т и
/ (в п-1,т) =а, то а = т.
С другой стороны, /(ап-1, т + 1) = т +1 и /((3п 1,т +1) = а . Поэтому аФТ. Это противоречие.
Поскольку в кубе Е3п-1 для любых двух различных наборов существует
цепь, их соединяющая, то мы получили, что /((3п 1, х) = х при всех х є Е3 и
при всех (3п 1 є Е3п-1. Другими словами, /(х1, х2,., хп-1, хп) = хп .
Таким образом, вложение (5) установлено.
Докажем теперь (6)-(9). Фиксируем произвольную трехзначную функцию /(хп) из любого замкнутого класса К є и п и2, М1 п М2, М1 п и1, и пТ01 пВ}. Предположим, что /(хп)<£ С0 . Это означает, что найдутся наборы ап и (3п из Е3п такие, что /(ап) = 1 и /((3п) = 2, причем для каждого і = 1,2,.,п выполняется хотя бы одно из трех условий: аі = Рг-, или аі = 0, или Рі = 0 .
Рассмотрим произвольное і є {1,2,...,п}, для которого аі ФРг-. Значит, (аі,рі)є {(0,1),(0,2),(1,0),(2,0)}.
1) Пусть К = и п и2. Если (аі ,Рі) є {(0,2), (2,0)}, заменим аі на Рі. Так как /(хп) є^, значение функции / на новом наборе ап не изменится. Если же (аі,Рі) є {(0,1),(1,0)}, наоборот, заменим Рі на аі. Так как
/(хп) є и2 , значение функции / на новом наборе (3п также не изменится.
2) Пусть К = М1 пМ2. Если (аіД-)є {(0,1),(0,2)}, заменим аі = 0 на Рі. Так как /(хп) є М2 и значение 0 является максимальным, а значение 1 -минимальным для порядка 1 < 2 < 0, то значение функции / на новом наборе
ап останется равным 1. Если (аі,Рг-) є {(1,0), (2,0)}, наоборот, заменим Рі = 0 на аі. Так как /(хп) є М1, то значение функции / на новом наборе
п п т
(3 останется равным 2 по аналогичным причинам.
3) Пусть К = М1 п и . Если (аг-,ві) є {(0,1),(0,2)} заменим аг- = 0 на 2. Так как /(хп) є^, значение функции / на новом наборе ап не изменится. В случае (аг- ,ві) = (1,0) заменим ві = 0 на 1. Так как /(хп) є М1, значение функции / на новом наборе (3п останется равным 2. Наконец, в случае (аг- ,Рі) = (2,0) заменим аг- = 2 на 0. Так как /(хп) є и , значение функции / на новом наборе ап также не изменится.
4) Пусть К = и п Т01 п В . Если в = 2 , заменим его на 0, а аг- оставим без изменений. Из табл. 1 видно, что в классе и п Т01 п В п С0 нет функций одной переменной. Значит, каждая функция из этого класса принимает только значения 1 и 2. Поскольку /(хп) є Ц[, значение функции / на
новом наборе (3п останется равным 2.
Проделав эту операцию для всех і є {1,2,...,п} таких, что аг- ФРг-, получим в итоге два новых набора а' и (3'.
Легко видеть, что в случаях 1 и 2 мы получим а/ = (3', но /(а/) = 1Ф Ф 2 = /(|3/). Это противоречие. В случае 3 будет выполняться (относительно обычного порядка 0 < 1 < 2) следующее: а' ^ (3', но /(а') = 1 < 2 = /((3'). Последнее противоречит тому, что /(хп) є М1. Значит, М1 п и с С0 . В силу двойственности классов имеем также М1 п и1 с С0 п С2 . В случае 4 набор (3', очевидно, состоит только из 0 и 1, в то время как /(р) = 2 , что противоречит тому, что /(хп) є Т)1.
Докажем (10) от противного. Пусть найдется функция /є с0 пТ п В . Очевидно, / принимает значения 1 и 2 (так как / є с 0) и значение 0 (на
наборе 0п). Из условия /є В заключаем, что / имеет не более одной существенной переменной. Но в р1 таких функций нет (см. табл. 1). Это противоречие.
Пусть / є 7|2 п Ь . Предположим, что / имеет две (или больше) существенные переменные. Не умаляя общности, можно считать, что это х1 и х2 . Тогда, подставив в функцию / вместо остальных переменных значения 1 и
2, мы получим некую функцию g (х1, х2) = С0 + С^х! + С2 х2 є , причем С1, С2 Ф 0 . Теперь нетрудно убедиться, что, если С = С2, то 0 є {g(1,1), g(1,2), g(2,2)}, а если С1 Ф С2 , то 0 є ^(1,1),g(1,2),g(2,1)}, что противоречит тому,
что g(х1, х2) є Т12 . Итак, Т12 п Ь с р1, и из табл. 1 вытекает истинность (11).
Пусть / є и0 п Ь . Если среди переменных функции / найдутся две существенные (например, х1 и х2), то, подставляя 0 вместо всех остальных переменных, получим функцию g (х1, х2) = С0 + С1 х1 + С2х2 є и0, причем С1,С2 Ф 0. Легко видеть, что если С1 = С2, то {g(1,1),g(1,2),g(2,2)} = Е3 ,
Известия высших учебных заведений. Поволжский регион а если с Ф е2 , то (1,1), g(1,2),g(2,1)} = Е3 , это противоречит тому, что
g(Х1, *2) е ио . Итак, ио п Ь с р1, и, анализируя табл. 1, убеждаемся в справедливости (12).
Свойство (13) проверяется с помощью анализа одноместных подфункций. Докажем (14). Пусть /е То пТ пЬ . Тогда /(*1,*2,...,*п) = с^ + +С2*2 + ■■■ + сп*п , причем С1 + С2 +... + сп = 1.
Имеем / (*1 +1, *2 +1,., хп +1) = С1(*1 +1) + С2(*2 +1) +... + сп (хп +1) =
= /(*1,*2,...,*п) +1, что означает /е 5.
Справедливость (15) и (17)-(19) вытекает из двойственности классов. Для доказательства (16) вспомним, что ио п и п и2 = (0,1,2, *} (см. доказательство свойства (5)) и также воспользуемся двойственностью классов ио,и и и2:
и0 п 5 = ио п и1 п и2 п 5 = (о,1,2, *} п 5 = (*} с и1 п и2 п Т12.
Докажем (2о). Пусть / е В п 5 . Функция / самодвойственна, поэтому она принимает все три значения. Учитывая / е В, получим, что / имеет не более одной существенной переменной. Из табл. 1 следует / е (*, * +1, * + 2} с Ь .
Фиксируем произвольную функцию /(*п) из класса 7)2 п 7и . Заметим, что набор оп лежит как в множестве (о,1}п , так и в множестве (о, 2}п . Следовательно, одновременно выполняются условия и /(оп) е (о, 2}. Значит,
/(оп) = о, т.е. /(*п)е То . Свойство (21) доказано.
Для обоснования вложения (22) достаточно доказать, что
С1 п То п 7о1 = 0 . Предположим, что это не так. Пусть /(*п) е С п То п 7о1.
Тогда / (оп) = о и найдется наборап е (о,1}п такой, что / (ап) = 2. Это противоречит тому, что /(*п) е С1.
Докажем (23). Фиксируем произвольную функцию / е М1 п 7 . Имеем /(1,1,..., 1) = 1 и /е М1. Значит, если ап е (о, 1}п , то /((ап) < 1. Другими словами, / е Ти . Аналогично доказывается, что / е Т12 .
Убедимся в справедливости вложения (24). Для этого докажем, что М1 п С1 п То2 с ио (тогда будет справедливо и двойственное включение М1 п С1 пТо2 с и2). Предположим противное. Пусть существует функция / (*п) е М1 п С1 п Ти п и о . Тогда, в соответствии с фактами 1 и 2, у функции / найдется одноместная подфункция у = (оо 1) (см. табл. 1). Без ограничения общности можно считать, что при получении подфункции (оо 1) у функции / фиксировались все переменные, кроме последней. Значит, существует набор ап-1 (п > 1, так как / е Т)2 ) такой, что /(ап-1,1) = о,
/ (ап-1,2) = 1.
Заменим в наборе ап-1 все «единицы» на «двойки». Полученный набор обозначим через (вп 1. Из монотонности (/ е М1) имеем /((вп 1,2) е е (1,2} .
С другой стороны, /((вп 1,2) = 1 противоречит включению / е Т)2 , а если /((вп 1, 2) = 2 , то получим противоречие с условием / е С1 .
Проверим свойство (25). Пусть / е ио п Т1. Тогда /(1) = 1, поэтому из / еио следует, что если ап е (1,2}п , то /(ап) е (1,2}. Другими словами,
/ еТ12.
Свойство (26) докажем от противного. Пусть существует функция /(*п), принадлежащая классу ио п и2 п То2 п м 1. В соответствии с фактом 2 найдутся два набора, соседние по 1 -й координате, ап = (а1,...,ап) и
(вп = (Р1,...,Рп) такие, что ап ^(вп , но /(ап) > /((вп) (все отношения вычисляются относительно обычного порядка о < 1 < 2).
Рассмотрим три случая:
а) /(ап) = 2 и /((вп) = о. Так как а,- <Рг-, то (а,-Д-)е((о,1),(о,2), (1,2)} . Заменим (аг- ,Ру ) на (аг- ,вг-) = (1,1). Легко видеть, что для новых наборов а' и в' справедливо а' = в', но в силу / еи2 п ио имеем / (а') = 2 Ф Ф о = /(в'). Это противоречие;
б) /(ап) = 1 и /фп) = о . Заменим в наборах ап и (вп все «единицы» на «двойки». Для новых наборов а' и (в' (соответственно) также справедливо отношение а' ^ в' . С другой стороны, из / еио п То2 следует, что / (а') = 2, /((в') = о, причем наборы а' и (в' также являются соседними по / -й координате. Тем самым мы свели этот случай к случаю (а);
в) /(ап) = 2 и /фп) = 1. Аналогично предыдущему случаю заменим
в наборах ап и (вп все «единицы» на «нули». Тогда для полученных наборов а' и (в' имеем а' ^ (в'. С другой стороны, из / еи2 п Ти следует, что /(а') = 2, /((в') = о, причем наборы а' и (в' также являются соседними по
1 -й координате. Мы вернулись к случаю (а) где противоречие уже получено.
Других вариантов нет. Свойство (26) доказано.
Наконец, убедимся в том, что выполнено вложение (27). Рассмотрим произвольную функцию / из класса М1 п То2 п В . Из табл. 1 видно, что все функции одной переменной, принадлежащие этому классу, принадлежат и классу Со п С2 . Пусть теперь / существенно зависит от двух или более переменных. По определению класса В функция / принимает не более двух значений. Рассмотрим все возможные случаи.
Если Е(/) = (о,1}, то из / е То2 имеем /(2) = о, а далее из монотонности получим / = о , что противоречит наличию у / двух существенных переменных. Аналогично, если Е(/) = (1,2}, то /(о) = 2 и / = 2, что также противоречит существенности функции / .
Значит, E(f) = {0,2}, поэтому f е С0 п С2 .
Доказательство теоремы завершено.
Автор выражает благодарность С. С. Марченкову за постановку задачи поиска всех пересечений предполных классов функций трехзначной логики и А. А. Вороненко за ценные замечания.
Список литературы
1. Яблонский, С. В. Введение в дискретную математику / С. В. Яблонский. -М. : Наука, 1986. - 384 с.
2. Post, E. L. Introduction to a general theory of elementary propositions / E. L. Post // Amer. J. Math. - 1921. - V. 43, № 4. - P. 163-185.
3. Post, E. L. Two-valued iterative systems of mathematical logic / E. L. Post // Annals of Math. Studies. Princeton Univ. Press. - 1941. - V. 5. - 122 p.
4. Яблонский, С. В. О функциональной полноте в трехзначном исчислении / С. В. Яблонский // ДАН СССР. - 1954. - № 6. - С. 1153-1156.
5. Яблонский, С. В. Функциональные построения в к -значной логике / С. В. Яблонский // Труды МИАН СССР им. В. А. Стеклова. - 1958. - Т. 51. -С. 5-142.
6. Rosenberg, I. G. La structure des fonctions de plusieurs variables sur un ensemble fini / I. G. Rosenberg // C. R. Acad. Sci. Paris. Ser. A. B. - 1965. - V. 260. - P. 3817-3819.
7. Rosenberg, I. G. Uber die funktionale Vollstandigkeit in den mehrwertigen Logiken / I. G. Rosenberg // Rozpravy С eskoslovenske Akad. Ved. Rada Math. Prir. V ed. Praha. - 1970. - Bd. 80. - S. 3-93.
Нагорный Александр Степанович
младший научный сотрудник, кафедра математической кибернетики, Московский государственный университет имени М. В. Ломоносова
Nagorny Alexander Stepanovich Research assistant, sub-department of mathematical cybernetics, Moscow State University named after M. V. Lomonosov
E-mail: anagorny@list.ru
УДК 519.7 Нагорный, А. С.
О свойствах предполных классов в Р3 / А. С. Нагорный // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. - 2о12. - № 2 (22). - С. 16-24.