Самодвойственная функция

Материал из testwiki
Перейти к навигации Перейти к поиску

Самодвойственная функция — булева функция, двойственная сама к себе. Более развёрнуто, булева функция f(x1,…,xn) называется самодвойственной, если для любых значений x1,…,xn верно

f(x‾1,…,x‾n)‾=f(x1,…,xn)

Другими словами самодвойственная функция на противоположных друг другу наборах значений аргументов принимает противоположные значения. Примеры самодвойственных функций: x, x‾, x⊕y⊕z, функция голосования, отрицание функции голосованияШаблон:Sfn. Самодвойственных функций с двумя существенными переменными нетШаблон:Sfn.

Каждую самодвойственную функцию f(x1,…,xn) арности n можно представить в виде

f(x1,…,xn)=x1∧g(x2,…,xn)∨x1‾∧g∗(x2,…,xn),

для некоторой g арности n−1, причём g определяется однозначно как f(1,x2,…,xn) (а g∗ соответственно равно f(0,x2,…,xn)). Обратно, для любой функции g арности n−1 функция f, определяемая указанным выше соотношением, самодвойственна. Самодвойственных функций арности 0 нет. Таким образом, между любыми булевыми функциями арности n−1 и самодвойственными функциями арности n есть взаимо-однозначное соответствие. Поэтому, количество самодвойственных функций арности n>0 равно количеству всех булевых функций арности n−1, которое в свою очередь равно 22n−1Шаблон:Sfn.

Аналогичное представление получится, если выносить не переменную x1, а любую другую.

Класс самодвойственных функций

Решётка замкнутых классов самодвойственных функций

Класс всех самодвойственных функций является замкнутым классом, предполным в P2. Класс самодвойственных функций обозначается символом SШаблон:Sfn или D3Шаблон:Sfn (обозначение Поста). Базисами класса самодвойственных функций являются, например:

  • xy‾∨xz‾∨y‾z‾=x(y|z)∨x‾(y↓z);
  • x‾,xy∨xz∨yz — отрицание и функция голосования;
  • xy∨xz∨yz‾=x(y↓z)∨x‾(y|z) — отрицание функции голосования.Шаблон:Sfn

Порядок класса самодвойственных функций равен 3Шаблон:Sfn.

Самодвойственные функции, сохраняющие 0, будут сохранять и 1; обратное тоже верно. Таким образом, S∩T0=S∩T1=S∩T (где T=T0∩T1). Монотонная самодвойственная функция всегда сохраняет константы, при этом есть немонотонные сохраняющие константы самодвойственные функции (S∩M⊂S∩T).

Даже если не требовать в определении замкнутого класса, чтобы он обязательно содержал функцию x, любой замкнутый класс самодвойственных функций всё равно будет её содержать. Любой замкнутый класс самодвойственных функций можно расширить до предполного в S. Предполными в S являются следующие два класса: S∩L (класс самодвойственных линейных функций) и S∩T (класс самодвойственных функций, сохраняющих константы)Шаблон:Sfn. Верен аналог малой теоремы Поста: система самодвойственных функций полна в S тогда и только тогда, когда она содержит нелинейную и не сохраняющую константы функцию.

Лемма о несамодвойственной функции

Лемма о несамодвойственной функции:

Из несамодвойственной функции и отрицание при помощи суперпозиции можно получить константу.Шаблон:Sfn

Данная лемма используется в одном из доказательств малой теоремы Поста.

Есть также более общее свойство, используемое в доказательствах различных свойств классов в P2:

Из несамодвойственной функции можно получить несамодвойственную функцию от двух переменных f такую, что f(1,0)=f(0,1).Шаблон:Sfn

Примечания

Шаблон:Примечания

Литература