You are on page 1of 29

РОЗДІЛ III.

ГРАФИ

Лекція 14. Визначення і представлення графів


Вступ
Лекція має метою привести базові визначення і поняття теорії
графів. Розглянути висловлення, визначення та компоненти графів,
неорієнтовані та орієнтовані графи, спеціальні види графів, способи
завдання неорієнтованих та орієнтованих графів. Повернута увага до
визначення ізоморфних графів.
У лекції присутні два параграфа:
14.1. Основні визначення
14.2. Способи представлення графів
14.1. Основні визначення
Графи є зручною формою представлення структур
обчислювальних систем і процесів, що у них протікають.
Визначення: Множина вершин Х, що зв'язані між собою
множиною, ребер V називається графом і позначається G =
<X,V>.

Рис. 14.1. Граф як пара множин


Приведене визначення є описовим – по ньому не можна
побудувати графа, у зв'язку з чим можна дати більш формальне
визначення.
Визначення: Граф G – це двійка виду G = < X, Г >, де Х –
множина вершин графа, Г – відповідність, що відбиває множину
вершин Х саме в себе.
Однак поняття графа ширше поняття відповідності, тому що за
допомогою останнього не можна задавати строго рівнобіжні дуги.
Приклад: Граф (рис. 14.2.) тільки з не строго рівнобіжними
дугами (ліворуч) представляється другим визначеням, але
графи з рівнобіжними дугами і ребрами – ні (праворуч).
Друге визначення дозволяє не тільки описувати, але і задавати
графи з точністю до строго рівнобіжних дуг і рівнобіжних ребер.
Орієнтоване ребро графа називається дугою. Граф з орієнтованими
ребрами називається орграфом. Якщо пара вершин з'єднана двома чи
більшою кількістю дуг, то такі дуги називаються рівнобіжними.

Рис. 14.2. Графи з не строго рівнобіжними дугами


і рівнобіжними ребрами
Дві рівнобіжні дуги, однаково спрямовані стосовно вершин,
називаються строго рівнобіжними, рівнобіжні дуги, протилежно
спрямовані стосовно вершин, називаються не строго рівнобіжними,
дуга (ребро), що виходить і входить у ту саму вершину, називається
петлею, не строго рівнобіжні дуги заміняються ребром.

Рис. 14.3. Строго рівнобіжні і не строго рівнобіжні дуги,


ребро, отримане з не строго рівнобіжних дуг, і петля
Граф, що містить тільки ребра, називається неорієнтованим, граф,
що містить як дуги, так і ребра, називається змішаним.

Рис. 14.4. Неорієнтований граф, орграф і змішаний граф


Для неорієнтованого графа число ребер, що зв'язані з вершиною х і,
називається ступенем вершини G(хі), причому петля враховується двічі.
Для орієнтованого графа G=<X, Г> число дуг, що входять у
вершину хі, називається напівступенем заходу р(хі)
 xi (p(xi)  Г-1 (xi)),
число дуг, що виходять з вершини xi - напівступенем виходу s(xi)
 xi (s(xi) Г (xi))
Для неорієнтованого графа рівнобіжні ребра називаються
кратними, для орієнтованого графа строго рівнобіжні ребра
називаються кратними. Граф без петель і кратних ребер називається
простим чи звичайним. Граф без петель, але з кратними ребрами
називається мультіграфом, граф, що містить кратні ребра і петлі,
називається псевдографом.

Рис. 14.5. Мультіграф і псевдограф


Граф, що не має ребер, усі вершини якого ізольовані, називається
порожнім чи нуль-графом. Простий граф, у якому дві будь-які вершини
з'єднані ребром, називається повним.

Рис. 14.6. Повний граф


Якщо вершини Х простого графа допускають таку розбивку на дві
непересічних підмножини Х1 і Х2 (Х1  Х2 =  і Х1  Х2 =Х), що не
існує ребер, що з'єднують вершини тій самої підмножини, то він
називається двочастковим чи біграфом.
Рис. 14.7. Двочастковий граф (біграф)
Граф, ступені вершин якого однакові і рівні “r”, називається
однорідним чи регулярним r-й ступені.

Рис. 14.8. Однорідні графи


Дві вершини xi і xj  X графа G = <X, V> називають суміжними,
якщо вони з'єднані ребром vk V. Для неорієнтованого графа суміжним
вершинам відповідає дві пари <xi, xj> і <xj, xi>, для орграфа це пари <xi,
xj>, причому xi - початок дуги, xj - кінець дуги. Вершина xi і ребро (дуга)
vk інцидентні, якщо ребро (дуга) входить (виходить) з вершини xi.
14.2. Способи представлення графів
Перший конструктивний спосіб, як відзначалося, - завдання графа
G у виді двійки G=<X, Г>. За допомогою цього способу не можна задати
мультіграф і псевдограф.
Більш складний аналітичний спосіб завдання відзначених графів у
виді трійки G=<X, V, >, де  - відношення, що задається у свою чергу
трійкою XVX, таке, що для <xi, vj, xk> випливає, що дуга vj
V, з'єднує вершини xi і xk. Трійкою G=<X, V, > можливо задати і
мультіграф, і псевдограф.
Інший основний спосіб - завдання графа G за допомогою матриці.
У матриці суміжності графа G рядка і стовпці відповідають вершинам
графа, а елемент (клітка) матриці uij, що відповідає стовпцю xi і xj рядку,
дорівнює числу кратних ребер, що зв'язують вершину x i з вершиною xj
чи, для орграфа, числу дуг, спрямованих з вершини xi у вершину xj.
Приклад: Орієнтований граф, заданий матрицею суміжності і
графічно
Таблиця 14.1.
Рис.14.9. Орієнтований псевдограф G =<X, V>, X = {x1, x2, x3, x4, x5},
V = {v1, v2, v3, v4, v5, v6, v7, v8, v9, v10}
Очевидно, що для будь-якого орграфа на його матриці суміжності
справедливо:
n n
 xi(s(xi) = uij; p(xi) = uji; G(xi) = s(xi) + p(xi))
j=1 j=1

Матриця суміжності орграфа в загальному випадку не симетрична.


Приклад: Неорієнтований граф, заданий матрицею суміжності і
графічно
Таблиця 14.2.

Рис. 14.10. Неорієнтований псевдограф : G =<X, V>,


X = {x1, x2, x3, x4, x5}, V = {v1, v2, v3, v4, v5, v6}
Для неорієнтованого графа матриця суміжності симетрична.
Петля в матриці суміжності неорієнтованого графа вважається
один раз, тоді для матриця суміжності будь-якого неорієнтованого
графа справедливо:
n n
 xi(  vj = <xi, xi>  G(xi) =  uik і G(xi) =  uik)
k=1 k=1

n n
 xi (  vj = <xi, xi>  G(xi) = ( uik) + 1 і G(xi) = 1+  uik)
k=1 k=1

Якщо вершина є кінцем ребра, то говорять, що вершина


інцидентна ребру, а ребро інцидентно вершині, чи вони інцидентні. Для
орграфов розрізняють позитивну інцидентность, коли дуга виходить з
вершини, і негативну інцидентность, коли дуга заходить у вершину.
Граф G можна задати матрицею інцидентності, стовпці якої
відповідають ребрам (дугам) графа, а рядки - вершинам графа. Для
неорієнтованого графа на перетинанні i-ої рядка, що відповідає вершині
xi, і j-ого стовпця, що відповідає ребру v j, ставиться одиниця, якщо
вершина xi інцидентна ребру vj. Для орграфа на перетинанні i-ої рядка і
j-ого стовпця ставиться “+1”, якщо дуга vj виходить з вершини xi, і
ставиться ”-1”, якщо дуга vj заходить у вершину xi. Кожен стовпець
містить два елементи. Петлі зіставляють порожній стовпець, тоді
матриця інцидентності задає графа без указівки вершин, з якими зв'язані
петлі. Ця обстава вимагає спеціальних міток.
Приклад: Неорієнтований граф і його матриця інцидентності
Таблиця 14.3

Рис. 14.11. Неорієнтований псевдограф G =<X, V>,


X = {x1, x2, x3, x4, x5}, V = {v1, v2, v3, v4, v5, v6}
Для будь-якого неорієнтованого графа без петель і його матриці
інцидентності справедливо:
m
 xi (G(xi) =  uij), де m = V.
j=1

Приклад: Орграф, заданий графічно і матрицею інцидентности


Таблиця 14.4.

Рис. 14.12. Орієнтований псевдограф G =<X, V>, X = {x1, x2, x3, x4,
x5},
V = {v1, v2, v3, v4, v5, v6, v7, v8, v9, v10}
Для будь-якого орієнтованого графа без петель і його матриці
інцидентності справедливо:
m m m
 xi(s(xi) =  uji (+1)
; p(xi) =  uji ; G(xi) = s(xi) + p(xi) =  uji ,
(-1)
j=1 j=1 j=1

де uji(-1) {+1;0}, uji(-1) {-1;0}.


Графи, для яких збігаються відношення інцидентності,
називаються ізоморфними. Матриця інцидентності визначає графа без
петель з точністю до ізоморфізму.

Рис. 14.13. Ізоморфні графи


Принципово можливо в матриці інцидентності визначити також і
петлі графа чи орграфа - у цьому випадку для неорієнтованого графа на
перетинанні i-ої рядка, що відповідає вершині x i, і j-ого стовпця, що
відповідає ребру-петлі vj, ставиться двійка, для орграфа на перетинанні
i-ого рядка і j-ого стовпця необхідно, наприклад, вказати одночасно як
+1, так і -1.
Для модифікованої в такий спосіб матриці інцидентності
справедливі усі твердження, що стосуються звичайної матриці
інцидентності.
Контрольні запитання:
1. Як з допомогою двійок визначається граф, чи є таке визначення
конструктивним, що дає можливість побудувати граф?
2. Що є неорієнтованим і орієнтованим графами?
3. Що є ребро, дуга, петля, рівнобіжні ребра, строго і не строго рівнобіжні
дуги?
4. Що є ступенем, напівступенем заходу і напівступенем виходу?
5. Що є простий граф, мультіграф та псевдограф?
6. Яка різниця між порожнім і повним графом?
7. Що є біграфом або двочастковим графом, що є регулярним графом r-й
ступені?
8. Що декларують суміжність та інцидентность, що є позитивна та
негативна інцидентность?
9. Як визначити граф з допомогою трійки, чи е таке завдання
конструктивним?
10. Яки графи є ізоморфними?

Література:
Основна
14.1. Емеличев В.А., Мельников О.И., Сарванов В.И., Тышкевич Р.И. Лекции
по теории графов. – М.: Наука, 1990, с.9-19.
14.2. Новиков Ф.А. Дискретная математика для программистов. – СПб:
Питер, 2001, с.189-194.
14.3. Кук Л., Бейз Г. Компьютерная математика. – М.: Наука, 1990, с.217-
224.
14.4. Горбатов В.А. Основы дискретной математики. – М.: Высш.шк.,
1986, с.89-94.
Додаткова
14.5. Коршунов Ю.М. Математические основы кибернетики. – М.:
Энергоатоиздат, 1987, с.67-72.
Для практичних занять
14.6. Методичні вказівки і завдання до контрольних робіт за курсом
«Основи дискретної математики» для студентів очної та заочної форм
навчання фахів 6.0804, 6.0915 /Укл. О.М. Мартинюк. – Одеса: ОНПУ,
2001. – с 42-43.
14.7. Гаврилов Г.П., Сапоженко А.А. Сборник задач по дискретной
математике. – М.: Наука, 1973, с.101-124.
БУЛЄВА АЛГЕБРА
Лекція Булєві функції
Вступ
Лекція має метою привести базові поняття булєвих функцій.
Розглянути логічні, однорідні функції, тривіальні булєві функції від
одного та двох аргументів. Повернута увага на булєві формули, що
будуються за допомогою суперпозиції, а також на рівнопотужність
формул.
У лекції присутні три параграфа:
22.6.Логічні функції
22.7.Булєві функції
22.8.Логічні формули
22.1. Логічні функції
Відмінна риса логічних функцій полягає в тому, що вони
приймають значення в кінцевих множинах, тобто область значень
логічної функції - завжди кінцева множина.
Якщо область значень логічної функції містить k різних елементів,
то функція називається k-значною.
Логічні функції можуть залежати від однієї, двох і більш числа
перемінних (аргументів) x1, x2,..., xn, що на відміну від самої функції
можуть приймати значення елементів як кінцевих, так і нескінченних
множин. У теоретико-множинному змісті логічна функція від n
перемінних y=f(x1, x2,..., xn) являє собою відображення множини наборів
слів (n-мірних кортежів, векторів) виду x1, x2,..., xn, що є областю її
визначення, на множину її значень =y1, y2,..., yk.
Якщо аргументи приймають значення з тієї ж множині, що і сама
функція, то неї називають однорідної.
22.2. Булєві функції
Найбільш простим і найбільш важливим класом однорідних
логічних функцій є клас двозначних булєвих функцій.
Визначення: Булєвою функцією називається однорідна логічна
функція, що приймає значення з двоэлементної булєвої множини
В=0, 1, або В=кривда, істина.
Тому що булєва функція - однорідна, то будь-який її аргумент
приймає значення з В=0, 1 чи В=кривда, істина, область визначення
булєвої функції від n перемінних (аргументів) - це множина слів
довжини n. Загальне число всіляких двоічних наборів довжини n
дорівнює 2n . Число всіляких булєвих функцій від n аргументів
дорівнює 22^n (2^n – це два у ступені n) . Будь-яка булєва функція може
бути задана таблицею істинності (відповідності), у лівій частині якої
перераховані всі 2n наборів значень перемінних, а в правій частині -
значення функції на цих наборах.
Приклад: а) n=3, число наборів - 23=8, число функцій - 22^n=
28=256
б) n=5, число наборів - 25= 32, число функцій - 232-
4109.
Булєві функції від однієї і двох перемінних докладно досліджені.
Булєві функції однієї перемінної
n=1, число наборів - 21=2, число функцій - 22=4
Таблиця 22.1.
х Y0 Y1 Y2 Y3
0 0 0 1 1
1 0 1 0 1

Y0 і Y3 - функції - константи (Y0 - константа , Y - константа


1), що приймають постійні значення на всіх наборах аргументів.
Функція 1 повторює значення аргументу. Функції 0, 1, 3 -
тривіальні функції. Єдина нетривіальна функція - 2, називається
запереченням чи інверсією, тобто y=x і читається як у2 дорівнює не
x.
Булєві функції двох перемінних
n=2, число наборів 22=4, число функцій - 24=16
Таблиця 22.2.
Х1х2 у0 у1 у2 у3 у4 у5 y6 у7 y8 у9 у10 у11 у12 у13 у14 У15
0   х1  х     х х  
  2 2  1 

00 0 0 0 1 1 1 1 1 1
0 0 0 0 0 1 1
01 0 1 1 0 0 1 1 1 1
0 0 0 1 1 0 0
10 1 0 0 1 1 0 0 1 1
0 0 1 1 1 0 0
11 0 0 1 0 1 0 1 0 1
0 1 1 0 1 0 1

З приведених функцій шість функцій не залежать від х 1, чи х2, чи


обох разом. Це у0=0 - константа нуля, у15=1 - константа одиниці, функції
повторення у3=х1 і у5=х2, а також функції заперечення у 10=х2 і у12=х1.
Інші булєві функції залежать від двох перемінних. Частина з них має
свої специфічні назви і широко використовуються в булєвої алгебрі.
1. Булєва функція кон’юнкції (логічного множення)
у1=х1х2 чи у1=х1&х2 чи у=х1х2 чи у=х1х2 чи у=х1 і х2.
Дану функцію називають логічним множенням, тому що її таблиця
істинності збігається з таблицею множення для чисел  і , тобто
дорівнює одиниці тільки при одиничних аргументах.
2. Булєва функція диз'юнкції (логічного складання)
у7=х1х2 чи у7=х1х2 чи у7=х1 чи х2
Дана функція дорівнює одиниці, якщо хоча б один з аргументів
дорівнює одиниці.
3. Булєва функція складання по модулі (нерівнозначності)
у6 =х1 х2 чи у6=(х1 і х2) чи (х1 і х2)
Дана функція дорівнює одиниці на незбіжних наборах х1 і х2
4. Булєва функція еквівалентності (рівнозначності)
у9 =х1х2 чи у9=х1х2 чи у9=(х1 і х2) чи (х2 і х1)
Дана функція дорівнює одиниці на співпадаючих наборах х1 і х2.
5. Булєва функція імплікації (логічного проходження)
у13=х1х2, читається, «якщо х1, то х2 », чи у13= х1 чи х2
Дана функція дорівнює одиниці при х 1 рівному нулю і повторює
значення х2 при х1 рівному одиниці. у11=х2х1, читається «якщо х2, то
х1»
6.Булєва функція заперечення (заборони) імплікації
у2=(х1х2) чи у2=х1 іх2
В іншій інтерпретації цієї функції у2=(х1х2), при цьому ліва і
права стрілки розуміються однаково, тобто х1х2 = x2x1.
Дана функція дорівнює одиниці тільки при х1 рівному 1 і х2
рівному 0. Аналогічно, у4=х2х1 у першій інтерпретації дорівнює
одиниці тільки при х2 рівному 1 і x1 рівному 0.
7. Булєва функція «стрілка Пірса» (заперечення диз'юнкції)
у8=х1х2 чи у8= х1 і х2
Дана функція приймає одиничне значення тільки при нульових
значеннях х1 і х2. У цьому зв'язку у8 є запереченням диз'юнкції, у8 =у7 .
8. Булєва функція «штрих Шеффера» (заперечення кон'юнкції)
у14=х1х2 чи у14= х1 чи х2
Дана функція приймає одиничне значення, якщо хоча б х 1 чи х2
дорівнює нулю. У цьому зв'язку у14 є запереченням кон'юнкції, у14=у1.
22.3. Логічні формули
Часто використовуваними є булєві функції заперечення у=х
(унарна), кон'юнкції у=х1х2 (бінарна), диз'юнкції у=х1х2 (бінарна).
Вираження, за допомогою яких задаються булєві функції,
називаються логічними формулами, тобто логічні формули - це булєві
перемінними, зв'язаними знаками логічних операцій. Більш складні, чим
приведені вище, логічні формули виводять суперпозицією (заміщенням,
підстановкою) вхідних у них перемінних іншими логічними
формулами.
Приклад: Нехай у=х1х2, де х1=а, х2=bc, тоді в результаті
суперпозиції у =аbc
Кожна формула визначає деяку булєву функцію. Її значення при
різних значеннях перемінних можна визначити на підставі таблиці
істинності для функцій двох перемінних.
Приклад: а=0, b=0, c=1, х1=а=0=1; х2=bc=01=0;
у=х1х2=10=1
Дві булєві функції, як і формули, називаються рівносильними,
якщо при будь-яких значеннях аргументів обидві функції приймають
однакові значення. Рівносильні функції з'єднують знаком рівності.
Контрольні запитання:
1. Що є відмінна риса логічних функцій?
2. Яка функція є k-значною?
3. Що таке однорідна функція?
4. Що називається булєвою функцією?
5. Скільки булєвих функцій від n аргументів існує?
6. Яка різниця між кон’юнкцією та диз’юнкцією, рівнозначністю і
складенням по модулю два?
7. Що за функції стрілка Пірса та штрих Шеффера?
8. Як будуються булєві формули?
9. Яки формули є рівносильними?

Література:
Основна
22.1. Новиков Ф.А. Дискретная математика для программистов. – СПб:
Питер, 2001, с.79-85.
22.2. Сигорский В.П. Математический аппарат инженера. – К.: Техника,
1975, с.504-522.
22.3. Горбатов В.А. Основы дискретной математики. – М.: Высш.шк., 1986,
с.47-50.
Додаткова
22.4. Яблонский С.В. Введение в дискретную математику. – М.: Наука, 1979,
с.7-15.
22.5. Биркгоф Г., Барти Т. Современная прикладная алгебра. – М.: Мир, 1976,
с.139-150.
Для практичних занять
22.6. Методичні вказівки і завдання до контрольних робіт за курсом «Основи
дискретної математики» для студентів очної та заочної форм навчання
фахів 6.0804, 6.0915 /Укл. О.М. Мартинюк. – Одеса: ОНПУ, 2001. – с 24-
25.
22.7. Гаврилов Г.П., Сапоженко А.А. Сборник задач по дискретной
математике. – М.: Наука, 1973, с.9-20.
Лекція 23. Завдання булєвих функцій. Приведення формул
Вступ
Лекція має метою привести способи завдання булєвих функцій.
Розглянути табличний, аналітичний, графічний та чисельний способи,
повернута увага до обмежень кожного з способів. На завершення
розглянуто приведення формул булєвої алгебри до досконалої форми.
У лекції присутні два параграфа:
23.1.Способи завдання булєвих функцій
23.2.Приведення формул булєвої алгебри до досконалої форми
23.1. Способи завдання булєвих функцій
Існують чотири способи завдання булєвих функцій: табличний,
аналітичний, геометричний і чисельний.
23.1.1. Табличний спосіб
Спосіб припускає наявність таблиці істинності (відповідності).
Приклад: Таблиця істинності булєвої функції від трьох
перемінних y=f(x1, x2, x3)).
Таблиця 23.1.
x1 x2 x3 Y
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

Іншими прикладами табличного завдання функцій є приведені


раніш таблиці істинності для функцій від двох перемінних.
23.1.2. Аналітичний спосіб
Нормальні форми
Визначення: Диз'юнктивна нормальна форма (ДНФ) - це
диз'юнкція кінцевого числа різних членів, кожний з яких являє
собою кон'юнкцію кінцевого числа окремих перемінних чи їхніх
заперечень, що входять у даний член не більш одного разу.
Визначення: Кон'юнктивна нормальна форма (КНФ) - це
кон'юнкція кінцевого числа різних членів, кожний з який являє
собою диз'юнкцію кінцевого числа окремих перемінних чи їхніх
заперечень, що входять у даний член не більш одного разу.
Приклад: у=(х1х2)(х2х3х4) ДНФ, у=(х1х2)(х2х3х4) КНФ,
у=х1х2х2 (х3х4) не ДНФ і не КНФ.
Визначення: Члени ДНФ, що представляють собою елементарні
кон'юнкції з  букв, називаються мінтермами к-го рангу. Члени
КНФ, що представляють собою елементарні диз'юнкції з 
букв, називаються макстермами к-го рангу.
Приклад: х1х2 - мінтерм 2-го рангу, х2х3х4 - мінтерм 3-го рангу,
(х1х2) - макстерм 2-го рангу, (х2х3х4) - макстерм 3-го
рангу.
Визначення: Якщо в кожнім члені нормальної диз'юнктивної чи
кон'юнктивної форми представлені всі n перемінних (у прямому
чи інверсному виді) від яких залежить булєва функція, то така
форма називається досконалою диз'юнктивною чи
кон'юнктивною нормальною формою (СДНФ чи СКНФ – як
термін).
Лема: Будь-яка булєва функція, що не є тотожно рівної нулю,
має одну і тільки одну СДНФ. Будь-яка булєва функція, що не є
тотожно рівної одиниці, має одну і тільки одну СКНФ.
Мінтерми СДНФ називають конституєнтами одиниці. Макстерми
СКНФ називають конституєнтами нуля. Конституєнта 1 звертається
в одиницю тільки при одному відповідному їй наборі значень
перемінних, котрий виходить, якщо всі перемінні конституєнти
прийняти рівними одиниці, а для всіх інверсій конституєнти перемінні
прийняти рівними нулю. Конституєнта  звертається в нуль тільки
при одному відповідному їй наборі значень перемінних, котрий
виходить, якщо всі перемінні конституєнти прийняти рівними нулю, а
для всіх інверсій конституєнти перемінні прийняти рівними одиниці.
Приклад: х1х2х3х4=110=1, х1х2х3х4=11=0
СДНФ є диз'юнкцією конституєнт , булєва функція f(x1, x2,...,
xn), що її представляє, звертається в одиницю тільки при наборах
значень перемінних, відповідних хоча б одній одиниці цих конституєнт.
На інших наборах ця функція звертається в нуль. СКНФ є кон'юнкціей
конституєнт , її булєва функція f(x1, x2,..., xn) звертається в нуль
тільки при наборах значень перемінних, відповідних хоча б одному
нулю цих конституєнт. На інших наборах ця функція звертається в
одиницю.
Для завдання булєвої функції у виді СДНФ записують диз'юнкцію
конституєнт “1” для всіх наборів перемінних, на яких функція приймає
1.
Для завдання булєвої функції у виді СКНФ записують кон'юнкцію
конституєнт  для всіх наборів перемінних, на яких функція приймає
0.
Таке представлення булєвої функції називають аналітичним
представленням у виді СДНФ чи СКНФ.
Приклад: Таблиця істинності, СДНФ і СКНФ булєвої функції від
трьох перемінних
Таблиця 23.2.
X X X Y
1 2 3
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 0

у=(х1х2х3)(х1х2х3)(х1х2х3)(х1х2х3) – СДНФ,
у=(х1х2х3)(х1х2х3)(х1х2х3)(х1х2х3) - СКНФ
Для усюди визначеної булєвої функції СДНФ і СКНФ рівносильні.
Аналітичне завдання можливо й у ДНФ, КНФ, тупикових і інших
формах.
23.1.3. Геометричний спосіб
Областю визначення булєвих функцій від n перемінних є
множина потужністю 2n n-мірних векторів. Якщо поставити у
відповідність кожному вектору вершину n-мірного куба, то область
визначення булєвої функції представляється у виді деякої n-мірної
геометричної фігури.
Булєва функція задається на n-мірному кубі виділенням вершин,
що відповідають векторам х1, х2,..., хn, на яких функція дорівнює
одиниці чи нулю. Кожної з n перемінних виділяється своя вісь
координат, на якій відкладається одиничний вектор. Початок вектора
відповідає нульовому значенню перемінної, кінець вектора -
одиничному значенню.
Приклад
 n = 1, потужність множини вершин дорівнює 2, приклад
функції - у =х (див. рис.13.1.а));
 n = 2, потужність множини вершин дорівнює 4, фігура
виглядає як квадрат з відзначеними для конституєнт
вершинами, приклад функції – y = x1 x2  x1 x2 (див.
рис.13.1.б));
 n = 3, потужність множини вершин дорівнює 8, фігура
виглядає як куб з відзначеними для конституєнт
вершинами, приклад функції – y = x3  x1x2 x1 x2.(см.
рис.13.1.с)).
При n  4 графічний спосіб утрачає наочність.

Рис. 23.1. Одномірний а), двовимірний б) і тривимірний с) куби для


функцій відповідно від однієї, двох і трьох перемінних
23.1.4. Чисельний спосіб
У чисельному виді булєва функція задається у виді СКНФ і СДНФ
перерахуванням номерів наборів, на яких функція приймає нульові чи
одиничні значення відповідно.
Приклад: Таблиця істинності і чисельне завдання СДНФ і СКНФ
функції від трьох перемінних
Таблиця 23.3.
№ X X X Y
1 2 3
0 0 0 0 1
1 0 0 1 0
2 0 1 0 0
3 0 1 1 1
4 1 0 0 1
5 1 0 1 0
6 1 1 0 0
7 1 1 1 1
у=1 (0, 3, 4, 7) СДНФ, у=0 (1, 2, 5, 6) СКНФ
23.2. Приведення формул булєвої алгебри до досконалої форми
Якщо який-небудь член j ДНФ не містить перемінної хі, то ця
перемінна вводиться тотожним перетворенням:
j=j1=j(xixi)=(jxi)(jxi)
Якщо який-небудь член j КНФ не містить перемінної хі, то ця
перемінна вводиться тотожним перетворенням:
j=j0=j(xixi)=(jxi)(jxi).
Приклад
у=х1х2х3=х1х2х3х1х2х3х1х3х1х3=х1х2х3х1х2х3х1х2х3х1х2х3х
1х2х3х1х2х3
у=(х1х2)х3=((х1х2)х3х3)
((х3х1х1)х2х2)=(х1х2)х3)((х1х2)х3)(((х3х1)
(х3х1))х2)(((х3х1)(х3х1))х2)=(х1х2х3)
(х1х2х3)(х3х1)х2)((х3х1)х2х3х1)х2)((х3х1)х2)
=(х1х2х3)(х1х2х3)(х1х2х3)
(х1х2х3)(х1х2х3)х1х2х3).
Контрольні запитання:
1. Що є табличним способом завдання булєвих функцій?
2. Що таке ДНФ і КНФ, СДНФ і СКНФ?
3. Яка різниця між мінтермом і макстермом?
4. Що є “констітуєнта одиниці” і “конституанта нуля”?
5. Яке представлення булєвої функції є аналітичним?
6. Як діє геометричний спосіб завдання булєвих функцій?
7. Що є чисельний спосіб завдання булєвих функцій?
8. Як ввести відсутню перемінну у який-небудь член ДНФ або КНФ?
9. Що є приведенням формули до досконалої форми?

Література:
Основна
23.1. Новоселов В.Г., Скатков А.В. Прикладная математика для инженеров-
системотехников. Дискретная математика в задачах и примерах. – К.:
Учебно-методический кабинет высшего образования, 1992, с.116-137.
23.2. Новиков Ф.А.Дискретная математика для программистов. – СПб:
Питер, 2001, с.88-91.
23.3. Сигорский В.П. Математический аппарат инженера. – К.: Техника,
1975, с.504-522.
Додаткова
23.4. Яблонский С.В. Введение в дискретную математику. – М.: Наука, 1979,
с.19-23.
23.5. Горбатов В.А. Основы дискретной математики. – М.: Высш.шк., 1986,
с.47-50.
Для практичних занять
23.6. Методичні вказівки і завдання до контрольних робіт за курсом «Основи
дискретної математики» для студентів очної та заочної форм навчання
фахів 6.0804, 6.0915 /Укл. О.М. Мартинюк. – Одеса: ОНПУ, 2001. – с 25-
27.
23.7. Гаврилов Г.П., Сапоженко А.А. Сборник задач по дискретной
математике. – М.: Наука, 1973, с.20-38.
Лекція 24. Булєва алгебра. Спрощення. Подвійність
Вступ
Лекція має метою привести основні поняття булєвої алгебри.
Розглянути шістнадцять властивостів операцій булєвого базису {, ,
}, спрощення запису формул, подвійність формул булєвої алгебри,
подвійні і самоподвійні функції. На завершення повернута увага до
булєвої алгебри множин і булєвої алгебри двоічних векторів, уведено
поняття ізоморфних алгебр.
У лекції присутні чотири параграфа:
24.1.Булєва алгебра
24.2.Спрощення запису формул
24.3.Подвійність формул булєвої алгебри
24.4.Булєва алгебра множин
24.1. Булєва алгебра
Нехай задане деяка множина М и набір операцій Ф, що
виконуються на цій множини: Ф = {1, 2,..., n}, тоді двійка множин А
= (М, Ф) називається алгеброю. Множина М називається основною чи
несучою множиною. Множина Ф називається сигнатурою операцій чи
просто сигнатурою.
Визначення: Булєвою алгеброю В = (М,  ,  0, 1) називається
множина М с двома бінарними операціями “” і “”, однією
унарною операцією інверсії “” у сигнатурі і двома відзначеними
елементами (універсальними границями) “0” і “1”, причому для
будь-яких x1, x2, x3, що належать множині M, набір операцій
задовольняє наступним тотожностям:
Основні тотожності булєвої алгебри
1. x1x2=x2x1; x1x2=x2x1;
комутативність
2. x1(x2x3)=(x1x2)x3; x1(x2x3)=(x1x2)x3;
асоціативність
3. x1(x2x3)=(x1x2)(x1x3); x1(x2x3)=(x1x2)(x1x3);
дистрибутивність;
4. x10=0; x10=x1;
x11=x1; x11=1;
0=1; 1=0;
універсальні границі;
5. x1x1=x1; x1x1=x1;
ідемпотентність;
6. x1x1=0; x1x1=1;
(x)=x;
доповнення і інволютивність
7. x1(x1x2=x1; x1(x1x2)=x1;
поглинання;
8. (x1x2)(x1x2)=x1; (x1x2)(x1x2)=x1;
склеювання;
9. x1(x1x2)=x1x2; x1(x1x2)=x1x2;
(x1x3)(x2x3)= (x1x3)(x2x3)=
=(x1x3)(x2x3)(x1x2); =(x1x3)(x2x3)(x1x2);
Блейка-Порецького
10. (x1x2)=x1x2; (x1x2)=x1x2;
де Моргана
Крім десяти основних тотожностей необхідно визначити теореми
підстановки (11-14) і теореми розкладання (15, 16), що можуть скоріше
привести до мінімальної формули:
11. xif(x1, x2,..., xi,xi,..., xn)=xif(x1, x2,..., 1, 0,..., xn);
12. xif(x1, x2,..., xi,xi,..., xn)=xif(x1, x2,..., 0, 1,..., xn);
13. xif(x1, x2,..., xi,xi,..., xn)=xif(x1, x2,..., 0, 1,..., xn);
14. xif(x1, x2,..., xi,xi,..., xn)=xif(x1, x2,..., 1, 0,..., xn)
15. f(x1, x2,…, xi,…, xn)=(xif(x1, x2,…,1,…, xn))(xi f(x1, x2,…, 0,
…, xn));
16. f(x1, x2,…, xi,…, xn)=(xif(x1, x2,…, 0,…, xn))(xif(x1, x2,…, 1,
…, xn))
Для доказу тотожностей можна використовувати метод
зіставлення таблиць істинності лівої і правої частини тотожностей –
досить переконатися в однакових значеннях на відповідних наборах
аргументів.
Інший метод заснований на еквівалентних перетвореннях з
використанням доведених раніше тотожностей булєвої алгебри.
Приклад: а) Идемпотентность (збереження ступеня):
хх=(хх)1=(хх)(хх)=х(хх)=х0=х;
б) Поглинання:
хху=(х1)(ху)=х(1y)=x 1=х
в) Блейка-Порецького:
хху=(хх)(ху)=1(хy)=хy
24.2. Спрощення запису формул
З таблиці булєвих функцій від двох перемінних можливо
побачити, що між функціями мається залежність у і=y15-i ,де 0  і  15.
На підставі цього можна записати співвідношення:
для констант:
0=1 і 1=0
для БФ від однієї перемінної:
х= (х)
для БФ від двох перемінних:
х1х2=(х1х2);
х1х2=(х1+х2);
х1х2=(х1х2);
х1х2=(х1х2);
х1х2=(х1+х2);
х1х2=х1+х2);
х1+х2=(х1х2);
х1х2=(х1х2);
х1х2=(х1х2);
х1+х2=(х1х2).
З приведених залежностей випливає, що будь-яка функція двох
перемінних, включаючи і константи, виражається в аналітичному виді
через сукупність із шести функцій, що містить заперечення і будь-які
функції з зазначених пар {у0, у15, {y1, y14}, {y2, y13}, {y4, y11}, {y6, y9,
y7, y8} і що е надлишкової.
Легко довести, що
(х1х2)=х1х2;
(х1х2)=(х1х2)(х1х2)
Сукупність можливо скоротити до чотирьох функцій: “константи
0”, заперечення х, диз'юнкції “x1x2” і кон’юнкції х1х2. Ці чотири
функції також можуть бути скорочені – із законів де-Моргана і
інволютивності (подвійного заперечення).
Таким чином, виконуються тотожності:
х1х2=(х1х2);
х1х1=0;
(х1х1)=0;
х1х2=(х1х2).
Звідси випливає, що булєві функції виконуються через
заперечення і кон’юнкцію чи заперечення і диз'юнкцію.
Якщо в булєвої формулі перемінні зв'язані тільки одним типом
операції (диз'юнкції чи кон'юнкції), то в силу асоціативності дужки не
проставляються.
Приклад: (х1х2)(х3х4)=х1х2х3х4
Дужки, у яких укладена загальна операція інверсії (заперечення),
можливо також опускати, тому що для операцій заперечення, кон'юнкції
і диз'юнкції пріоритет убуває з ліворуч у праворуч перерахування
заперечення, кон'юнкції, диз'юнкції:
Приклад: (ху)z=xyz=(x y) z=x y z.
24.3. Подвійність формул булєвої алгебри
У булєвої алгебрі має місце принцип подвійності взаємно
подвійними операціями є диз'юнкція і кон'юнкція. Заміняючи в деякій
формулі кожну операцію на подвійну їй, одержуємо подвійну формулу.
Приклад: Формула (х1х2)(х3х4)
Подвійна формула (х1х2)(х3х4).
Визначення: Таблиця істинності подвійної функції f виходить
заміною значень перемінних і значень самої функції f у таблиці
істинності вихідної функції f на протилежні, тобто 01, 10.
Приклад: х1 х2 f=x1x2 x1 x2 f =x1x2
0 0 0 1 1 1
0 1 1 1 0 0
1 0 0 0 1 0
1 1 1 0 0 0
Залишається тільки перевернути отриману таблицю для
зростання значень аргументів зверху вниз.
X1 x2 f =x1x2
0 0 0
0 1 0
1 0 0
1 1 1
Формула чи функція, рівносильна своєї подвійної функції,
називається самоподвійною.
Приклад: у1=х1х2х1х3х2х3 та y2=(х1х2)(х1х3)(х2х3) –
подвійні і рівносильні функції, тобто y=у1=у2 – самоподвійна
функція.
Теорема: Якщо формули f1 чи f2 рівносильні, то і подвійні їм
формули f1 і f2 також рівносильні, і навпаки.
f1=f2f1=f2
Приклад: х(ху)=х  х(ху)=х
х(ху)=ху  х(ху)=ху
Теорема: (принцип подвійності): Якщо в булєвої формулі f
замінити кон'юнкції на диз’юнкції, «0» на «1», «1» на «0», то
одержимо формулу f, подвійну вихідної.
Приведення булєвих формул до зробленої нормальної форми
також засновано на використанні тотожностей булєвої алгебри, зокрема
використанні подвійних формул.
24.4. Булєва алгебра множин
Поняття булєвої алгебри носить більш загальний характер, чим
тільки булєва алгебра на множини функцій. Алгебра із сигнатурою типу
(2, 2, 1), де тип задає арність операцій над булєвимі функціями,
називається булєвої алгеброю, якщо її операції задовольняють
тотожностям 1-10.
Нехай завдана деяка множина М.
Визначення: Алгебра А=(В(М),    називається булєвої
алгеброю множин над множиною М, тип булєвої алгебри множин
- (2, 2, 1).
Визначення: Алгебри А и А називаються ізоморфними, якщо і
тільки якщо існує взаємо-однозначна відповідність між їх
основними множинами і сигнатурами (тобто операціями).
Нехай визначене взаємо-однозначна відповідність між множиною
В(М), де М=m1, m2,..., mn і множиною двоічних векторів Вn
розмірності n: G: В(М)Вn
Кожній підмножині ММ відповідає двоїчний вектор b=<b1, b2,..,
bn>, де bi=1, якщо miM, і bi = 0, якщо mi для деякого miM.
Нехай на множини двоічних векторів Вn визначена булєва алгебра
виду: А=(Вn,{, , , при цьому операції для будь-яких векторів
=1, 2,..., n і =<1, 2,..., n визначаються в такий спосіб:
1. =11, 22,..., nn
2. =11, 22,..., n n
3. =1,..., n.
Операції над векторами  і  називаються порозрядними
логічними операціями над двоічними векторами.
Приклад: =10110; =00101;
=10111; =01001;
=00100; =11010.
Порозрядні операції входять до складу системи команд будь-якої
ЕОМ, що спрощує реалізацію даної алгебри на ЕОМ.
Ця алгебра ізоморфна булєвої алгебрі множин, це дозволяє
замінити теоретико-множинні операції об'єднання, перетинання,
доповнення над системами множин порозрядними логічними
операціями над двоічними векторами, реалізованими на ЕОМ: G:
А, G-1: А
Приклад: М=m1, m2, m3, m4, M1=m1, m2, m3, M2=m2, m3, m4,
 M1=m4,  M2=m1, 12=m2, m3,12=m1,
m2, m3, m4,
:
b=1, 1, 1, 0, b=0, 1, 1, 1,
 M1 b1=0, 0, 0, 1,  M2 b2=1, 0, 0, 0,
12b1b2=0, 1, 1, 0, 12b1b2=1, 1, 1, 1
Контрольні запитання:
1. Що називається булєвою алгеброю, основною множиною та сигнатурою
булєвої алгебри?
2. Яки десять основних тотожностів існують?
3. Яки шість теорем розкладення і підстановки існують?
4. Як доказати тотожність булєвих формул на підставі таблиць
істинності?
5. Як доказати тотожність булєвих формул на підставі еквівалентних
перетворень?
6. Яки еквівалентні дії для функцій від двох перемінних можливо
виконувати при спрощенні булєвих формул?
7. Яки булєві функції є подвійними, яка різниця між подвійними та
самоподвійними булєвимі функціями?
8. Що проголошує принцип подвійності?
9. Чому можливо казати, що алгебра множин є булєвою, що необхідно для
булєвої алгебри?
10.Що є булєва алгебра двоічних векторів?
11.Яки алгебри можливо назвати ізоморфними?

Література:
Основна
24.1. Новиков Ф.А. Дискретная математика для программистов. – СПб:
Питер, 2001, с.81-88.
24.2. Яблонский С.В. Введение в дискретную математику. – М.: Наука, 1979,
с.10-19.
24.3. Сигорский В.П. Математический аппарат инженера. – К.: Техника,
1975, с.504-522.
Додаткова
24.4. Горбатов В.А. Основы дискретной математики. – М.: Высш.шк., 1986,
с.47-50.
24.5. Биркгоф Г., Барти Т. Современная прикладная алгебра. – М.: Мир, 1976,
с.139-150.
Для практичних занять
24.6. Методичні вказівки і завдання до контрольних робіт за курсом «Основи
дискретної математики» для студентів очної та заочної форм навчання
фахів 6.0804, 6.0915 /Укл. О.М. Мартинюк. – Одеса: ОНПУ, 2001. – с 27-
30.
24.7. Гаврилов Г.П., Сапоженко А.А. Сборник задач по дискретной
математике. – М.: Наука, 1973, с.30-38.
Лекція 25. Алгебра Жегалкіна. Типи функцій. Логічні
схеми
Вступ
Лекція має метою привести основні поняття алгебри Жегалкіна,
функціональної повноти. Розглянути вісім властивостей операцій
базису {, }, п’ять типів булєвих функцій, функціональна замкненість
та повнота, критерій Поста. Повернута увага до канонічної задачі
синтезу логічних схем.
У лекції присутні три параграфи:
25.1.Алгебра Жегалкіна
25.2.Типи булєвих функцій
25.3.Функціональна повнота
25.1. Алгебра Жегалкіна
Алгебра Жегалкіна задана на всій множини булєвих функцій на
основі двох операції: нерівнозначності  і кон'юнкції .
Визначення: Алгебра Жегалкіна задається системою А=(В, 
, 1), основна множина алгебри – множина усіх булєвих функцій,
сигнатура –  , алгебра поповнена константою одиниці.
Тип алгебри Жегалкіна - (2, 2), тобто вона не є булєвої алгеброю.
В алгебрі Жегалкіна виконуються наступні тотожності:
1. ху=ух; ху=ух
комутативність
2. х(уz)=(xy)z; x(yz)=(xy)z
асоціативність
3. x(yz)=(xy)(xz)
дистрибутивність кон'юнкції
4. x0=x x0=0;
x1=x; x1=x;
властивості границь
5. хх=0; хх=х
приведення і ідемпотентність
6. xx=1; xx=0
доповнення
7. xy=(xy)(xy)
переклад у булєв базис
8. xy=xy(xy)
переклад у базис Жегалкіна
Тотожності 4, 6, 8 дозволяють перейти від будь-якої формули
булєвої алгебри до відповідної їй формулі алгебри Жегалкіна, а за
допомогою тотожностей 4, 6, 7 можливо здійснити зворотний перехід
від алгебри Жегалкіна до булєвої алгебри.
Приклад: x(xy) = x((1x)y) = x((1x)y(1x)y)) =
x(1xyy(xy)) = x(xx)(xyx) = xx(xy) = xy;
1xy=xy=(xy)(xy).
Система операцій алгебри Жегалкіна   разом з константою
«1» утворює так звану послаблено функціонально повну систему.
25.2. Типи булєвих функцій
Визначення: У булєвої алгебрі з множини булєвих функцій від n
перемінних f(x1, x2,..., xn) потужності 22^n виділяються п'ять типів
булєвих функцій (п’ять класів попередповних функцій):
1. Функції, що зберігають константу «0», тобто функції, що на
нульових наборах аргументів приймають нульові значення:
f(x1, x2,..., xn)f(0, 0,..., 0)=0;
Приклад: f(x1, x2)=x1x2f(0, 0)=0.
2. Функції, що зберігають константу «1» ,тобто функції, що на
одиничних наборах аргументів приймають одиничні значення:
f(x1, x2,..., xn)f(1, 1,..., 1)=1;
Приклад: f(x1, x2)=x1x2 f(1, 1)=1.
3. Самоподвійні функції, що приймають протилежні значення на
будь-яких двох протилежних наборах:
Приклад: f(x)=xf(0)=1, f(1)=0.
4. Лінійні функції, що представляються в алгебрі Жегалкіна
канонічним багаточленом, що не утримує добутків
перемінних:
f(x1, x2,..., xn)=a0 a1x1a2x2...anxn,
де а0, а1, а2,..., аn – константи, що приймають значення 0 чи
1
Приклад: f(x)=1 x1 x2
5. Монотонні функції, що приймають для будь-яких двох
упорядкованих наборів аргументів x11, x12,..., x1n і x21, x22,...,
x2n, де x11, x12,..., x1nx21, x22,.., x2n також упорядковані
значення, тобто f(x11, x12,..., x1n)f(x21, x22,..., x2n).
Приклад: f1(x1, x2)=x1x2, f2(x1, x2)=x1x2, f3(x1, x2)=x2
<x1, x2> f1: f2: f3:
<0, 0> 0 0 0
<0, 1> 1 0 1
<1, 0> 1 0 0
<1, 1> 1 1 1
Крім п’яти типів булєвих функцій викреслюють також тип
сіметричеських функцій.
Визначення: Булєва функція симетричеська по змінним xi, xj, якщо
f(…, xi,…,xj,…) = f(…, xj,…,xi,…). Булєва функція симетричеська, якщо
вона симетричеська по усім парам змінних.
Приклад: Функція f = x1x2x3  x1x2x3 симетричеська по змінним
x1 і x3. Функція f = x1x2  x1x3  x2x3 симетричеська.
25.3. Функціональна повнота
Визначення: Система булєвих функцій називається функціонально
повнотою, якщо суперпозиція цих функцій дозволяє одержати
будь-яку функцію з множини булєвих функцій.
Приклад: Система функцій {, ,  } є функціонально повною, але
система функцій {, } не функціонально повна.
Якщо у функціонально повній системі є функції константи «0» чи
константи «1», то вона послаблено функціонально повна. Функціонально
повна система функцій утворює базис у логічному просторі.
Приклад: Система функцій {, }, що поповнена константою
одиниці, тобто {{, } 1}, послаблено функціонально повна.
Визначення: Система булєвих функцій називається мінімально
повним базисом, якщо видалення з її будь-якої функції перетворює
цю систему в неповну.
Приклад: Мінімально повний базис є {,  }, але система {, ,  }
не є мінімально повним базисом.
Визначення: Усяка сукупність функцій алгебри логіки, замкнута
щодо суперпозиції, тобто така, що будь-яка суперпозиція
функцій із сукупності знову породжує функцію, що належить цієї
ж сукупності, називається функціонально замкнутим класом.
Функціонально замкнуті класи, відмінні від порожнього класу і
сукупності всіх можливих булєвих функцій, називаються власними
функціонально замкнутими класами. Власний функціонально замкнутий
клас називається попередповним, якщо він не міститься ні в якому
функціонально замкнутому класі, що є відмінним від даного класу і
класу всіх можливих булєвих функцій.
Приклад: Система функцій, що збережуть одиницю, є
функціонально замкнутим класом, система функцій, що
монотонно убивають, не є функціонально замкнутим
класом. Перша система є поперед повною.
Теорема про функціональну повноту (критерій Поста): Для
того, щоб система булєвих функцій була повною, необхідно і
досить, щоб вона включала хоча б одну функцію, що не зберігає
константу «0», хоча б одну функцію, що не зберігає константу
«1», хоча б одну функцію, що несамоподвійна, хоча б одну
функцію, що нелінійна, і хоча б одну функцію, що немонотонна.
Та сама функція може представляти у функціонально повній
системі одне чи кілька необхідних властивостей, якщо вона має ці
властивості.
Приклад: Властивості елементарних булєвих функцій від двох
перемінних з позицій функціональної повноти.
Таблиця
25.1.
Булєва Форму Несохр. Несохр. Несамо- Нели- Немо-
функція -ла ”0” ”1” двойств. нейна нотон
Констант 0 + +
а “0”
Констант 1 + +
а “1”
x + + +
Запереченн
я
x1x2 + +
Кон'юнкція
x1x2 + +
Диз'юнкція
Сума по x1x2 + + +
модулі “2”
Штрих x1x2 + + + + +
Шеффера
Стрілка x1x2 + + + + +
Пірса

З таблиці видно, що системи функцій {кон'юнкція,


заперечення}, {диз'юнкція, заперечення}, {штрих Шеффера},
{стрілка Пірса} задовольняють теоремі Поста. Система
функцій    утворює так званий булєв базис.

You might also like