Розв'язник вправ по дискретній математиці/Булева алгебра/Поліном Жегалкіна

Матеріал з testwiki
Версія від 17:48, 11 лютого 2021, створена imported>Сергій Липко (вікіфікація, оформлення)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Розв'язник вправ по дискретній математиці. Булева алгебра. Поліном Жегалкіна

Поліном Жегалкіна — довільна формула алгебри Жегалкіна, яка має вигляд суми кон'юнкцій булевих змінних. В зарубіжній літературі представлення полінома Жегалкіна зазвичай називається алгебраїчною нормальною формою (АНФ).

Теорема Жегалкіна — стверджує існування і унікальність будь-якої булевої функції у вигляді поліному Жегалкіна. Формально поліном Жегалкіна можна представити у вигляді:

P(X1...Xn)=aa1X1a2X2...anXna12X1X2a13X1X3...a1...nX1...Xn,
aa1n{0,1}.

Для трьох змінних поліном Жегалкіна має вигляд

f(x,y,z)=a0a1xa2ya3za12xya13xza23yza123xyz.

Побудуємо поліном для функції f(x,y,z)=(11100010). Запишемо таблицю істинності функції і будемо послідовно знаходити коефіцієнти ai підставляючи у функцію f(x,y,z) замість x,y,z конкретні значення.

x
y
z
f(x,y,z)
ai
0 0 0 1 a0
0 0 1 1 a3
0 1 0 1 a2
0 1 1 0 a23
1 0 0 0 a1
1 0 1 0 a13
1 1 0 1 a12
1 1 1 0 a123

У першому рядку f(0,0,0)=a0a10a20a30a1200a1300a2300a123000=a0. Так як, f(0,0,0)=1, то і a0=1.

Для другого рядка f(0,0,1)=a0a10a20a31a1200a1301a2300a123001=a0a3=1a3. Так як, f(0,0,1)=1, то і 1a3=1, отже a3=0.

Послідовно підставляємо значення усіх рядків і знаходимо відповідні коефіцієнти.