Представление функции класса DM с помощью медианы — различия между версиями
Строка 6: | Строка 6: | ||
Бинарных функций из класса DM всего две. | Бинарных функций из класса DM всего две. | ||
− | Рассмотрим эти функции | + | Рассмотрим эти функции : |
#<tex> ~f(0,0)< f(1,1)</tex> и <tex> f(0,0) = \lnot f(1,1)</tex>, следовательно, <tex> f(0,0)=0</tex> и <tex> f(1,1)=1 </tex> | #<tex> ~f(0,0)< f(1,1)</tex> и <tex> f(0,0) = \lnot f(1,1)</tex>, следовательно, <tex> f(0,0)=0</tex> и <tex> f(1,1)=1 </tex> | ||
#<tex> ~f(0,1) = \lnot f(1,0)</tex> | #<tex> ~f(0,1) = \lnot f(1,0)</tex> | ||
Из первого и второго пункта видно, что подходят только проекторы {{---}} <tex> P_1,P_2 </tex> | Из первого и второго пункта видно, что подходят только проекторы {{---}} <tex> P_1,P_2 </tex> | ||
− | Теперь покажем, как эти функции можно представить с помощью медианы | + | Теперь покажем, как эти функции можно представить с помощью медианы : |
<tex> P_1 = <x, x, y>, P_2 = <x, y, y></tex>. | <tex> P_1 = <x, x, y>, P_2 = <x, y, y></tex>. | ||
Строка 17: | Строка 17: | ||
− | Только четыре тернарные функции принадлежат классу DM. Рассмотрим эти функции | + | Только четыре тернарные функции принадлежат классу DM. Рассмотрим эти функции : |
Заметим, что для всех таких функций | Заметим, что для всех таких функций | ||
Строка 36: | Строка 36: | ||
\end{matrix}\right.\Rightarrow f=p_3 </tex> | \end{matrix}\right.\Rightarrow f=p_3 </tex> | ||
#<tex>f(1,0,0) = f(0,1,0) = f(0,0,1) = 0, </tex> следовательно, <tex> f = <x_1,x_2,x_3> </tex> | #<tex>f(1,0,0) = f(0,1,0) = f(0,0,1) = 0, </tex> следовательно, <tex> f = <x_1,x_2,x_3> </tex> | ||
− | Покажем как эти функции представляются с помощью медианы | + | Покажем как эти функции представляются с помощью медианы : |
#<tex> P_1 = <x, x, y></tex> | #<tex> P_1 = <x, x, y></tex> | ||
#<tex> P_2 = <x, y, y></tex> | #<tex> P_2 = <x, y, y></tex> | ||
Строка 43: | Строка 43: | ||
− | Теперь рассмотрим произвольную монотонную самодвойственную функцию <tex> f : \mathbb{B}^n \rightarrow \mathbb{B} </tex> для <tex> n > 3 </tex>. Обозначим аргументы <tex> x_4, x_5 \dots x_n </tex> за <tex> \bar x </tex>, то есть <tex> f(x_1, x_2, x_3, x_4 \dots x_n) = f(x_1, x_2, x_3, \bar x) </tex>. Тогда введем три функции от <tex>n - 1</tex> аргумента: | + | Теперь рассмотрим произвольную монотонную самодвойственную функцию <tex> f : \mathbb{B}^n \rightarrow \mathbb{B} </tex> для <tex> n > 3 </tex>. Обозначим аргументы <tex> x_4, x_5 \dots x_n </tex> за <tex> \bar x </tex>, то есть <tex> f(x_1, x_2, x_3, x_4 \dots x_n) = f(x_1, x_2, x_3, \bar x) </tex>. Тогда введем три функции от <tex>n - 1</tex> аргумента : |
: <tex> f_1(x_1, x_2, \bar x) = f(x_1, x_2, x_2, \bar x) </tex> | : <tex> f_1(x_1, x_2, \bar x) = f(x_1, x_2, x_2, \bar x) </tex> | ||
: <tex> f_2(x_2, x_3, \bar x) = f(x_3, x_2, x_3, \bar x) </tex> | : <tex> f_2(x_2, x_3, \bar x) = f(x_3, x_2, x_3, \bar x) </tex> | ||
: <tex> f_3(x_3, x_1, \bar x) = f(x_1, x_1, x_3, \bar x) </tex> | : <tex> f_3(x_3, x_1, \bar x) = f(x_1, x_1, x_3, \bar x) </tex> | ||
− | Очевидно, они также самодвойственны и монотонны из определения <tex>f</tex>, и <tex>f</tex> можно выразить одной из функций <tex> f_1, f_2, f_3 </tex>, так как два из трех аргументов точно совпадут. Теперь выразим <tex>f</tex> через <tex> f_1, f_2, f_3 </tex>: | + | Очевидно, они также самодвойственны и монотонны из определения <tex>f</tex>, и <tex>f</tex> можно выразить одной из функций <tex> f_1, f_2, f_3 </tex>, так как два из трех аргументов точно совпадут. Теперь выразим <tex>f</tex> через <tex> f_1, f_2, f_3 </tex> : |
: <tex> f(x_1 \dots x_n) = <f_1(x_1, x_2, \bar x), f_2(x_2, x_3, \bar x), f_3(x_3, x_1, \bar x)> </tex> | : <tex> f(x_1 \dots x_n) = <f_1(x_1, x_2, \bar x), f_2(x_2, x_3, \bar x), f_3(x_3, x_1, \bar x)> </tex> | ||
− | #Все три аргумента равны | + | #Все три аргумента равны : <tex> x_1 = x_2 = x_3 </tex>, тогда, очевидно, что равенство выполняется. |
− | #Равны два аргумента | + | #Равны два аргумента : <tex> x_1 = x_2 \ne x_3 </tex> (случаи <tex> x_1 = x_3 \ne x_2 </tex> и <tex> x_2 = x_3 \ne x_3 </tex> доказываются аналогично). Тогда : |
− | ::<tex> f = f(x_1, x_1, x_3, \bar x)</tex>, <tex> f_1 = f(x_1, x_1, x_1, \bar x)</tex>, <tex>f_2 = f(x_3, x_1, x_3, \bar x)</tex>, <tex>f_3 = f(x_1, x_1, x_3, \bar x)</tex>.Рассмотрим два случая | + | ::<tex> f = f(x_1, x_1, x_3, \bar x)</tex>, <tex> f_1 = f(x_1, x_1, x_1, \bar x)</tex>, <tex>f_2 = f(x_3, x_1, x_3, \bar x)</tex>, <tex>f_3 = f(x_1, x_1, x_3, \bar x)</tex>.Рассмотрим два случая : |
− | :::*<tex> x_1 = x_2 = 0, x_3 = 1.</tex> <br>Тогда можно упорядочить <tex> f_1, f_2, f_3 </tex> по возрастанию наборов их переменных (используя свойство их монотонности) | + | :::*<tex> x_1 = x_2 = 0, x_3 = 1.</tex> <br>Тогда можно упорядочить <tex> f_1, f_2, f_3 </tex> по возрастанию наборов их переменных (используя свойство их монотонности):<br><tex> f(0, 0, 0, \bar x) \le f(0, 0, 1, \bar x) \le f(1, 0, 1, \bar x) </tex>. Так как <tex> f(0, 0, 1, \bar x) </tex> зажато между двумя остальными функциями, то она и будет медианой <tex> f_1, f_2, f_3 </tex>. |
:::*<tex> x_1 = x_2 = 1, x_3 = 0 </tex>. Доказывается аналогично. | :::*<tex> x_1 = x_2 = 1, x_3 = 0 </tex>. Доказывается аналогично. | ||
}} | }} | ||
Интересный сайт, где можно посмотреть [http://oeis.org/A001206 количество таких функций при каждом n]. | Интересный сайт, где можно посмотреть [http://oeis.org/A001206 количество таких функций при каждом n]. |
Версия 23:27, 16 декабря 2011
Утверждение: |
Любую монотонную самодвойственную булеву функцию (self-Dual, Monotone) можно представить как некоторую суперпозицию функции медианы(majority function, median operator). |
Единственная унарная функция из класса DM — проектор. С помощью медианы её можно выразить так: .Бинарных функций из класса DM всего две. Рассмотрим эти функции :
Из первого и второго пункта видно, что подходят только проекторы — Теперь покажем, как эти функции можно представить с помощью медианы : .
Только четыре тернарные функции принадлежат классу DM. Рассмотрим эти функции : Заметим, что для всех таких функций и следовательно и
Покажем как эти функции представляются с помощью медианы :
Теперь рассмотрим произвольную монотонную самодвойственную функцию для . Обозначим аргументы за , то есть . Тогда введем три функции от аргумента :Очевидно, они также самодвойственны и монотонны из определения , и можно выразить одной из функций , так как два из трех аргументов точно совпадут. Теперь выразим через :
|
Интересный сайт, где можно посмотреть количество таких функций при каждом n.