Научная статья на тему 'Позитивно замкнутые классы частичных булевых функций'

Позитивно замкнутые классы частичных булевых функций Текст научной статьи по специальности «Математика»

CC BY
110
17
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Марченков С. С., Попова А. А.

Рассматриваются классы частичных булевых функций, замкнутые относительно оператора позитивного замыкания. Определены все десять классов этого типа, из которых три класса являются позитивно предполными. В каждом из позитивно замкнутых классов указан позитивный базис.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Позитивно замкнутые классы частичных булевых функций»

УДК 519.716

С.С. Марченков, А.А. Попова

ПОЗИТИВНО ЗАМКНУТЫЕ КЛАССЫ ЧАСТИЧНЫХ БУЛЕВЫХ ФУНКЦИЙ1

(кафедра математической кибернетики факультета ВМиК, e-mail: mathcyb@cs.msu.su)

Рассматриваются классы частичных булевых функций, замкнутые относительно оператора позитивного замыкания. Определены все десять классов этого типа, из которых три класса являются позитивно предполными. В каждом из позитивно замкнутых классов указан позитивный базис.

Частичные булевы функции широко используются в дискретной математике и математической кибернетике. Начало классификации множества Р2 частичных булевых функций относительно оператора суперпозиции было положено Р.В. Фрейвалдом [1, 2], который нашел все предполные в l'.j классы. В дальнейшем было обнаружено [3], что число замкнутых (относительно суперпозиции) классов в l'.j континуально. Как и для функций многозначной логики, это обстоятельство значительно затрудняет исследование структуры множества Р| ■

Помимо оператора суперпозиции в теории функций многозначной логики изучаются и другие, более сильные операторы замыкания, которые при любом k ^ 2 дают конечные классификации множества функций fc-значной логики. Первый из таких операторов — оператор параметрического замыкания — предложен A.B. Кузнецовым [4]. Особенностью оператора параметрического замыкания является то, что, действуя на множества функций логико-функциональными средствами, оператор порождает не множества функций, а множества отношений — графиков этих функций. Идея A.B. Кузнецова обобщена в работе [5], где определено несколько операторов замыкания подобного типа. Один из этих операторов — оператор позитивного замыкания — существенно шире оператора параметрического замыкания. Вместе с тем из результатов работ [5, 6] следует, что оператор позитивного замыкания порождает нетривиальные классификации, представляющие интерес в теории функций многозначной логики.

В настоящей работе найдены все 10 позитивно замкнутых классов частичных булевых функций (отметим [5, 6], что для всюду определенных булевых функций соответствующих классов будет шесть). Из них позитивно предполными являются три класса. В каждом из позитивно замкнутых классов указано по нескольку позитивных базисов.

Введем необходимые определения. Пусть /v> = {0,1}, /\> — множество всех функций на /*Д> (множество булевых функций), Р| — множество всех частичных функций на /*,'•_> (множество частичных булевых функций). Если f(xi,... ,хп) € l'-j. (ßi,..., an) (г /•,'." и функция / не определена на наборе (öi,..., ап), то этот факт будем записывать в виде f(a\,..., ап) = *. Символом * обозначаем также нигде не определенную функцию (от любого числа переменных). Одноместную функцию / из Р2 будем иногда записывать в виде вектора (/(0)/(1)). Все функции из Р| рассматриваем с точностью до фиктивных переменных.

Так же как для множества булевых функций [7, 8], используя понятие формулы над множеством функций, определяем на множестве Р| операцию суперпозиции. При этом дополнительно, если

f(x 1,... ,хп) = g(gi(x\,... ... ,дт(х™,... ,х™т)), (1)

где {х\,_..., х\л,..., ж™,..., х™т} С {xi,... ,хп}, то значение функции / на наборе а, = (öi, ..., ап) определено только в том случае, когда на наборе а, определены значения всех функций gi,... ,дт и значение функции д определено на наборе (51(a),... ,дт(а)). Отметим, что в суперпозиции (1) вместо некоторых функций gi могут стоять переменные xlj.

Понятия замыкания (относительно суперпозиции) и замкнутого класса предполагаем известными [7, 8]. Пусть Tq,Ti,S — замкнутые классы булевых функций, состоящие соответственно из всех функций, сохраняющих 0, сохраняющих 1, и всех самодвойственных функций (см. [7, 8]),

Т01=Т0Г\Ти Sqi = S DTQI.

1 Работа выполнена при частичной поддержке РФФИ, проект 06-01-00438.

Определим множества частичных булевых функций: Т0* = {/ : / G / . /(О, ...,0) = 0}, T¡" = {/ : / G /'-Г. /(1,..., 1) = 1}, 5* = {/ : / G Р| и на любой паре противоположных наборов функция / принимает лишь значения (0,1), (1, 0), (*, *)},

ГТ7* _ ГТ7* j»-» ГТ7* Q* _ Q* ГТ1*

101 — 10 11 11 i D01 — D MJ01-

Нетрудно убедиться в том, что все множества

Р2*, Т*, Т*, S*, Т*п, S*01, Т* и И, Т* и {*}, Т01 и {*}, S0\ и {*} (2)

замкнуты относительно операции суперпозиции.

Напомним основные понятия, связанные с оператором позитивного замыкания [5, 7]. Определим язык Pos. Исходными символами языка Pos являются символы предметных переменных xi,x2,... (с областью значений Е2), символы для обозначения n-местных функций из Р2 (1 ^ ¿ ^ 'I1'". п = 1,2,...), знаки равенства =, конъюнкции дизъюнкции V, квантора существования 3, левая и правая скобки и запятая. Иногда вместо символов переменных х\, х2, ■ ■ ■ будем использовать символы x,y,z.

Терм в языке Pos определим по индукции. Символ предметной переменной есть терм; если Xfa,..., Xjn — символы предметных переменных (не обязательно различные), а — символ п-местной функции, то fi'n\xj1,... ,Xjn) есть терм; если ti,... ,tm — термы, a /^ — символ тп-местной функции, то f¡m\ti,... ,tm) есть терм. Других термов в языке Pos нет.

Всякий терм в языке Pos очевидным образом определяет некоторую функцию из Р2* (переменная определяет тождественную функцию).

Если ti, ¿2 — термы языка Pos, то равенство (íi = t2) есть элементарная формула языка Pos. Если #1, #2 — формулы языка Pos, а х% — символ предметной переменной, то

(Ф1&Ф2), (#i V #2), (3a;¿)#i

— также формулы языка Pos. Понятия свободной и связанной переменных предполагаем известными.

Всякая формула языка Pos с m свободными переменными определяет некоторое m-местное частичное отношение на Е2. При этом мы руководствуемся следующими соглашениями. Если термы ti,t2 задают частичные функции /1, /2 и значение хотя бы одной из функций /1, f2 на наборе а, не определено, то и значение истинности равенства (íi = t2) для набора а также не определено. Соотношения

И V * = И, Jlv* = *, * V * = *, и&* = *, л&* = л, *&* = *

задают коммутативные связки Vife, когда одно из значений истинности есть * (не определено).

Пусть Q С I'.;. f(x i,...,xn) G Р2, Ф(х1,... ,хп,у) — формула языка Pos со свободными переменными xi,..., xm,y, все функциональные символы которой суть обозначения функций из Q. Будем говорить, что формула Ф позитивно выражает функцию f через функции множества Q, если множества истинности формулы Ф(®1,..., хп,у) и отношения /(жi,..., хп) = у совпадают. Совокупность всех функций, позитивно выразимых через функции множества Q, называем позитивным замыканием множества Q и обозначаем через Pos[Q]. Множества вида Pos[Q] называем позитивно замкнутыми классами. Известные для операции суперпозиции понятия полноты, порождающей системы и базиса [7, 8] распространяем на оператор позитивного замыкания. Отметим [5, 7], что любой позитивно замкнутый класс содержит тождественную функцию и замкнут относительно операции суперпозиции (это справедливо и для частичных булевых функций).

Установим позитивную замкнутость всех множеств (2). Позитивная замкнутость множества Tq доказывается точно так же, как соответствующего класса Т0 (см. [5, 7]). При рассмотрении множества Т0* U {*} ограничимся лишь формулами над Т0* U {*}, которые содержат символ *. Пусть Ф — позитивная формула этого типа, которая определяет отношение f(x) = у. Будем считать, что формула Ф находится в предваренной форме. Отметим следующие особенности равенств, входящих в формулу Ф. Если равенство содержит символ *, то истинностным значением этого равенства всегда будет *. Напротив, если равенство не содержит символа *, то после придания всем переменным, входящим в равенство, значения 0 истинностным значением равенства будет И. Следовательно, если бескванторная часть формулы Ф после придания всем переменным (включая связанные) значения О не принимает значение И, то формула Ф вообще не принимает значение И. Это означает, что функция / либо сохраняет 0, либо является нигде не определенной функцией.

16 ВМУ, вычислительная математика и кибернетика, № 3

Позитивная замкнутость множеств Tf, T¡" U {*} устанавливается аналогично.

Обратимся к множеству S*. Пусть /(ж) — функция из / . позитивная формула Ф определяет отношение /(ж) = у через функции множества S*, а,Ь — противоположные наборы и с = f (a), d = f(b). Если с ф *, то так же, как при доказательстве позитивной замкнутости класса S (см. [5, 7]), убеждаемся, что формуле Ф будет удовлетворять набор (Ь, с). Если же d ф *, то проведенные выше рассуждения применяем к набору (b,d).

Позитивная замкнутость множеств Т0*1; S^, U {*}, S*n U {*} следует из их определения как пересечения рассмотренных выше позитивно замкнутых множеств. Например,

т0*! и М = (Т* и М) П (Т* и {*}), S0*i и М = П (То*! и {*}).

Все позитивно замкнутые классы булевых функций найдены в [5, 7]. В теореме 1 мы воспроизводим этот результат, указывая одновременно позитивные базисы.

Теорема 1. Существует ровно шесть позитивно замкнутых классов булевых функций: Р2 = Pos[0,1], Т0 = Pos[0], Ti = Pos[l], S = Pos [./•]. Toi = Pos [ж V y) = Pos[xy], Sq 1 = Pos [ж] = Pos[0].

Следующая теорема представляет собой распространение утверждения 2 из [6] на случай частичных булевых функций.

Теорема 2. Любой позитивно замкнутый класс частичных булевых функций позитивно порождается множеством всех своих функций, зависящих не более чем от двух переменных.

Доказательство. Пусть R — позитивно замкнутый класс функций из Р2, /(жi,...,хп) € R и п > 2. Возьмем произвольный набор а, = (ai,..., а,„) из /•.'.'/. Пусть ii,..., ik — все числа из множества {1,2, ...,п}, для которых a¿j = ... = щк = 0. Для упрощения записи будем считать, что ¿i = l,...,ik = к. Заменим в функции /(х\,... ,хп) все переменные х,2,,...,,хк переменной х\, все остальные переменные — переменной Xk+i (если к = 0 или к = п, то переменной х\ заменяем все переменные Х2, ■ ■ ■ ,хп). Полученную функцию обозначим через fa(xi, x^+i). Очевидно, что fa € R и значение функции / на наборе а совпадает со значением функции fa на наборе (0,1). Более того, значение / на наборе b = (bi,...,bn) совпадает со значением /a(bi, 1), если только Ь\ = ... = Ь^ и bk~i-i = ... = bn. Отсюда следует, что позитивная формула

(ж1 = ж2)& • • • &(ж1 = хк)к{хк+1 = хк+2)&■ ■ ■ &{хк+1 = жп)&(/а(ж1, xk+í) = у) (3)

правильно определяет отношение /(х\,... ,хп) = у на всех наборах b указанного выше вида. Взяв теперь дизъюнкцию формул (3), отвечающих всем наборам а из , мы получим позитивную формулу, которая определяет отношение /(х\,... ,хп) = у через функции класса R, зависящие не более чем от двух переменных. Теорема доказана.

Теорема 3. Имеют место следующие соотношения-.

Р.; = Pos[0,1], Т* = Pos[0], Т* = Pos[l], S* = Pos [./•].

Т0*г = Pos [ж V у) = Роз[жу], S*n = Pos [ж] = Pos[0], Т* U {*} = Pos[0, *], Т* U {*} = Pos[l, *], Т*п U {*} = Роэ[ж V у, *] = Роэ[жу, *], U {*} = PosM.

Доказательство. Согласно теореме 1, система {0,1} позитивно порождает класс Р2. Если /(ж) — произвольная функция из класса Р|, то пусть fi(x), /2(ж) — такие функции из класса Р2, что fi(x) = /г(ж) = /(ж), если /(ж) определено, и fi(x) ф /2(ж) в противном случае. Тогда отношение /(ж) = у определяется позитивной формулой

(Ых) = Ых))к(Ш=у).

Точно так же, используя теорему 1, можно установить позитивную полноту функций 0, 1, ж, ж У у (а также ж у) в классах Т0*, Tf, 5*, Т0*г и доказать равенства S^ = Роэ[ж] = Pos[0].

Позитивные базисы в классах T0*U{*}, T^UÍ*}, Tq^UI*}, S'^Ul*} получаются из соответствующих базисов классов Т0*, Tf, Т0*1; присоединением функции *. Теорема доказана.

Следствие. Пусть (¿,11 — позитивно замкнутые классы из (2). Тогда Роб[(3 и Щ — также позитивно замкнутый класс из (2).

Доказательство. Утверждение вытекает из определения классов (2) и теоремы 1. Наша дальнейшая цель — перебрать все одно- и двуместные функции из класса Р2 и убедиться в том, что каждая из этих функций позитивно порождает один из классов (2).

Если / — произвольная булева функция, то, согласно теореме 1, / позитивно порождает (внутри класса Р2) один из классов Р2, Т0, Т\, 5, Т0¿>01- Переход к частичным булевым функциям в силу теоремы 3 дает один из классов Р|, Т0*, Тг*, 5*, Т0*1; Поэтому далее рассматриваем лишь функции /, которые не являются всюду определенными.

Пусть / = (0*). Очевидно, что / € Т0*. Позитивная формула

(Э*)(/(.г) = у) (4)

определяет отношение у = 0, а формула (ж = ж)&(у = 0) — график функции-константы 0. Таким образом, функция (0*) позитивно порождает класс Т0*. Аналогично рассматривается функция (*1).

Пусть / = (1*). Тогда формула (4) определяет отношение у = 1, а формула (3г)(/(у) = х) — отношение у = 0. Как и в предыдущем случае, на основе отношений у = 0, у = 1 определяем графики функций-констант 0 и 1. Значит, Роб[(1*)] = Р|. Аналогично рассматривается функция (*0). Функция * в силу теоремы 3 позитивно порождает класс и {*}. Перейдем к функциям /(ж, у) двух переменных. Случаи

/(ж, ж) б {(0*), (*1), (1*), (*0)}

сводятся к предыдущим случаям, поскольку при /(ж, ж) = (0*), /(ж, ж) = (*1) имеем соответственно / € Т0* и / б Т{.

Пусть /(0,0) = 1 и /(1,1) = 0. Тогда функция /(ж, ж) позитивно порождает класс 5*. Если /(0,1) = /(1,0) = *, то / € 5* и, значит, / — позитивный базис класса 5*. Пусть определено только одно из значений /(0,1), /(1, 0). Поскольку все четыре возможности рассматриваются сходным образом, предположим, например, что /(0,1) = 0 и /(1,0) = *. Тогда /(ж,ж) = (0*). Следовательно, функция / позитивно порождает класс Т0*. Позитивное замыкание множества 5* и Т0*, очевидно, дает класс Р|.

Предположим далее, что /(0,0) = 0 и /(1,1) = 1. При /(0,1) = /(1,0) = * функция / входит в класс и потому позитивно порождает класс Пусть определено только одно из значений /(0,1), /(1, 0), например значение /(0,1). Тогда при /(0,1) = 0 позитивная формула

(/(ж, у) = г) У (/(у, ж) = г)

определяет график функции ж у, а при /(0,1) = 1 — график функции ж У у. Следовательно, функция / позитивно порождает класс Т0*г. А поскольку / € Т0\, функция / образует базис класса Т0*г.

Предположим, наконец, что /(0,0) = /(1,1) = *. Пусть оба значения /(0,1), /(1,0) определены и равны либо определено только одно из них, например /(0,1). Положим а = /(0,1). Тогда позитивная формула

(3ж)(3у)(/(ж, у) = г)

определяет отношение г = а, и, следовательно, функцию-константу а. Делая в зависимости от соотношения а = 0, а = 1 подстановку /(а, ж) или /(ж, а), получаем соответственно функцию (*0) или функцию (1*). Как установлено выше, каждая из этих функций позитивно порождает класс Р2.

Если значения /(0,1), /(1,0) определены и не равны, то, во-первых, / € в*, а, во-вторых, график функции ж определяется позитивной формулой

(Зг)(/(х,у) = г).

Таким образом, в этом случае функция / образует позитивный базис класса 5*.

Теоремы 2, 3, следствие из теоремы 3, а также проведенное выше исследование всех одно- и двуместных функций из Р2 показывают, что справедлива следующая итоговая

Теорема 4. Все позитивно замкнутые классы частичных булевых функций исчерпываются классами (2).

Следствие. Все предполные классы частичных булевых функций суть Т0* и {*}, Т£ и {*}, 5*.

Доказательство. Достаточно среди классов (2), отличных от класса Р|, выбрать максимальные по включению классы.

СПИСОК ЛИТЕРАТУРЫ

1. Фрейвалд Р. В. Критерий полноты для частичных функций алгебры логики и многозначных логик // ДАН СССР. 1966. 167. № 6. С. 1249-1250.

2. Фрейвалд Р. В. Функциональная полнота для не всюду определенных функций алгебры логики // Дискретный анализ. 1966. № 8. С. 55-68.

3. Алексеев В.Б., Вороненко A.A. О некоторых замкнутых классах в частичной двузначной логике // Дискретная математика. 1994. 6. Вып. 4. С. 58-79.

4. Кузнецов А. В. О средствах для обнаружения невыводимости и невыразимости // Логический вывод. М.: Наука, 1979. С. 5-33.

5. Марченков С. С. О выразимости функций многозначной логики в некоторых логико-функциональных языках // Дискретная математика. 1999. 11. Вып. 4. С. 110-126.

6. Марченков С. С. Критерий позитивной полноты в трехзначной логике // Дискретный анализ и исследование операций. Сер. 1. 2006. 13. Вып. 3. С. 27-39.

7. Марченков С.С. Замкнутые классы булевых функций. М.: Физматлит, 2000.

8. Яблонский С. В. Введение в дискретную математику. М.: Наука, 1986.

Поступила в редакцию 17.04.08

УДК 519.7

С.Н. Селезнева, А.Б. Дайняк

О СЛОЖНОСТИ ОБОБЩЕННЫХ ПОЛИНОМОВ ЬЗНАЧНЫХ ФУНКЦИЙ1

(кафедра математической кибернетики факультета ВМиК, e-mail: mk@cs.msu.su)

Рассматривается задание fc-значных функций обобщенными полиномами (при простых fc). Обобщенный полином — это полином по mod fc, в котором каждая переменная может встречаться также с одним или несколькими отрицаниями Поста. Найдены нижняя и верхняя оценки сложности обобщенных полиномов для fc-значных функций.

1. Введение. Одной из канонических форм задания булевых и fc-значных функций являются полиномы. Расширением понятия полинома являются обобщенные полиномы. Обобщенный полином — это полином по mod к, в котором каждая переменная может встречаться также с одним или несколькими отрицаниями Поста.

К. Д. Кириченко в [1] была исследована сложность обобщенных полиномов булевых функций и была найдена ее верхняя оценка. В [2] была найдена нижняя оценка сложности обобщенных полиномов булевых функций.

В настоящей работе рассматриваются обобщенные полиномы для fc-значных функций (при простых fc) и получены аналогичные оценки их сложности.

2. Основные понятия. Пусть к ^ 2, Е^ = {0,1,..., к — 1}. Назовем fc-значной функцией отображение fn: Е^ —> Ек, п = 0,1,... . Множество всех fc-значных функций обозначим через /'/,• множество всех fc-значных функций, зависящих от переменных х\,... ,хп, — через

Определим обобщенные полиномы.

Будем рассматривать сложение и умножение по mod fc.

Под поляризованной переменной Xi будем понимать выражение вида Xi + d, где d G Е^ \ {0}, т.е. переменную Xi с d отрицаниями Поста.

Произведение вида у™1 •.. • -у™г, где yij есть либо переменная x,ij, либо поляризованная переменная Xij, все переменные попарно различны, j = 1,..., г и 1 ^ тi,..., mr ^ А; — 1, назовем обобщенным

1 Работа поддержана РФФИ, грант 07-01-00444 и частично грант 06-01-00438-а.

i Надоели баннеры? Вы всегда можете отключить рекламу.