- •Буковинський університет
- •Дискретна математика
- •Навчально-методичний посібник
- •Чернівці
- •Задачі та вправи 12
- •Задачі та вправи 28
- •Тема „Алгебра лінійних множин”
- •Способи задання множин
- •Порожня множина ()
- •Операції над множинами
- •Універсум (u)
- •Множина підмножин
- •Алгебра множин
- •Узагальнення операцій над множинами
- •Задачі до теми „Алгебра лінійних множин”
- •Тема „Відношення і функції”
- •Окремі випадки відношень
- •Властивості композицій:
- •Властивості відношень
- •Основні властивості відображень
- •Відношення еквівалентності
- •Відношення порядку
- •Відношення рівнопотужності
- •Властивості скінченних множин
- •Властивості зчисленних множин
- •Задачі до теми „Відношення і функції”
- •Тема „Булеві функції”
- •Способи задання булевих функцій
- •Булеві функції однієї змінної
- •Область визначення булевих функцій
- •Елементарні функції алгебри логіки
- •Булевий простір
- •Властивості функцій
- •Деякі операції над висловленнями
- •Формули в алгебрі логіки
- •Основні тотожності
- •Правила
- •Принцип двоїстості
- •Типи булевих функцій
- •Канонічні форми перемикальних функцій
- •Досконалі диз’юнктивні нормальні форми перемикальних функцій
- •Досконалі кон’юнктивні нормальні форми перемикальних функцій
- •Властивості досконалих форм
- •Скорочена диз’юнктивна нормальна форма перемикальних функцій
- •Утворення скороченої диз’юнктивної нормальної форми методом Квайна
- •Метод Квайна-Маккласкі
- •Утворення мінімальних кон’юктивних нормальних форм
- •Алгоритм утворення мінімальної кнф
- •Геометричне подання функцій алгебри логіки
- •Спрощення булевих функцій
- •Задачі до теми „Способи задання булевих функцій. Операція суперпозиції”
- •Задачі до теми „Істотні та фіктивні змінні”
- •Задачі до теми „Спеціальні види формул. Диз’юнктивні і кон’юнктивні нормальні форми. Поліном Жегалкіна”
- •Задачі до теми „Замкнуті класи і повнота системи булевих функцій” Важливіші замкнуті класи булевих функцій
- •Задачі до теми „Класи функцій, що зберігають константи”
- •Задачі до теми „Двоїстість і клас самодвоїстих функцій”
- •Задачі до теми „Монотонність і клас монотонних функцій”
- •Повнота систем булевих функцій
- •Тема „Рекурсивні функції”
- •Частково-рекурсивні функції
- •Тема „Скінченні автомати. Машина Тьюринга”
- •Машина Тьюринга
- •Тема „Основні поняття і властивості алгоритмів”
- •Основні вимоги до алгоритмів
- •Основні властивості алгоритму
- •Тема „Формальні системи. Алгебра висловлювань”
- •Аксіоматичний спосіб опису висловлювань
- •Властивості числення висловлювань
- •Задачі до теми „Алгебра висловлювань”
- •Тема „Логіка і числення предикатів”
- •Рівносильність формул
- •Задачі до теми „Логіка і числення предикатів”
- •Тема „Алгебри. Типи алгебр. Алгебраїчні системи”
- •Гомоморфізм та ізоморфізм алгебри
- •Типи алгебр
- •Алгебраїчні системи
- •Тема „Елементи комбінаторики”
- •Формула включень і виключень
- •Рекурентні співвідношення
- •Основні властивості кількості сполук
- •Біном Ньютона
- •Властивості розкладу бінома Ньютона і біномних коефіцієнтів
- •Поліномні твірні функції
- •Розміщення і функціональні відображення
- •Розбиття
- •Поліномна формула
- •Задачі до теми „Комбінаторика”
- •Тема „Графи”
- •Задання графа за допомогою матриці інцидентності та списку ребер
- •Задання графа за допомогою матриці суміжності
- •Локальні степені вершин графа
- •Частини графа, суграфи та підграфи
- •Операції з частинами графа
- •Маршрути, ланцюги та цикли
- •Цикломатичне число графа
- •Задачі до теми „Графи”
- •Література
- •Навчальне видання Пукальський Іван Дмитрович,
- •Лусте Ірина Петрівна,
- •Дискретна математика
Задачі до теми „Способи задання булевих функцій. Операція суперпозиції”
При розв’язанні задач будуть використовуватися основні тотожності для функцій
№ |
Тотожність |
Найменування законів |
Примітка |
1 |
а) x1 x2 = x2 x1 або x1x2 = x2x1 |
Переставні (комутативні) закони |
Дистрибутивні закони (б) не мають аналога у звичайній алгебрі |
б) x1 x2 = x2 x1 або x1 + x2 = x2 + x1 |
|||
2 |
а) (x1 + x2)x3 = x1x2 + x2x3
|
Розподільні закони: а) кон’юнкція відносно диз’юнкції; б) диз’юнкція відносно кон’юнкції |
|
б) x1 + x2x3 = (x1 + x2)(x1 + x3) |
|||
3 |
а) (x1x2)x3 = x1(x2x3) |
Сполучні закони (асоціативні) |
|
б) (x1 + x2) + x3 = x1 + (x2 + x3) |
|||
4 |
а) xx = x x + x = x |
Закони повторення (тавтології) |
Закони заперечення |
5 |
а) x1(x1 + x2) = x1 x1 + x1x2 = x1 |
Закони поглинання (адсорбції) |
|
6 |
x = 0, x + = 1 |
Закони доповнення |
|
7 |
а) = + б) = |
Правила де Моргана |
|
8 |
= x |
Закон подвійного заперечення |
|
9 |
а) x1x2 + x1 = x1 б) (x1 + )(x1 + x2) = x1 |
Закон склеювання |
|
10 |
а) x 1 = x б) x + 1 = 1 |
Закон універсальної множини |
|
11 |
а) x 0 = 0 б) x + 0 = x |
Закон нульової множини |
Приклад 1. Довести тотожність x1 + x1x2 = x1.
Доведення. x1 + x1x2 = x1 1 + x1x2 = x1(x2 + ) + x1x2 = x1x2 + x1 + x1x2 = x1x2 + x1 = x1(x2 + ) = x1 1 = x1, або x1 + x1x2 = x1(1 + x2) = x1 1 = x1.
Отже, x1 + x1x2 = x1, тобто дістаємо правило поглинання добутку x1x2 співмножником x1.
Приклад
2.
Спростити вираз u
= xyz
+
yz
+
+
y
.
Маємо
u
= xyz
+
yz
+
+
y
= xyz
+
yz
+
+
y
+
y
= xyz
+
y(z
+
)
+
(
+ y)
= xyz
+
y
+
.
Приклад
3.
Спростити вираз F
= x
+ xy
+
+ x
z
+
(
+
).
Розв’язання. Маємо F = x + xy + + x z + ( + ) =
= x(1 + y ) + (1 + xz) + + = x + + (1 + ) = x + + .
Приклад 4. Довести, що x(x + y) = x.
Доведення. Маємо x(x + y) = xx + xy = x + xy = x(1 + y) = x 1 = x.
Приклад 5. Довести, що x + y = x + y.
Доведення. Маємо x + y = x(1 + + y) + y = x + x + xy + y =
= xx + x + xy + y = x(x + ) + y(x+ ) = (x + )(x + y) = 1 (x + y) = x + y.
Приклад 6. Довести, що x( + y) = xy.
Доведення. Маємо x( + y) = x + xy = 0 + xy = xy.
Приклад 7. Довести, що (x + y)( + z) = xz + y.
Доведення. Маємо (x + y)( + z) = (x + y) + (x+ y)z = x + y + xz + yz = 0 + xz + y + yz = xz + y + yz(x + ) = xz + y + yzx + yz = xz + xzy + y + yz = xz(1 + y) + y(1 + z) = xz + y.
Множина символів = {, &, , , ~, , /, } називається множиною логічних зв’язок. Як правило, приймаються такі домовленості для скорочення запису формул над :
а) зовнішні дужки формул не ставляться;
б) зв’язка (заперечення) сильніша за будь-яку двомісну зв’язку з ;
в) зв’язка & (логічне множення) сильніша за будь-яку зі зв’язок , , ~, , /, .
Приклад 8. Побудувати таблиці істинності функцій, які реалізуються такими формулами (над множиною зв’язок ):
а) f = (x y) ((y z) (z x));
б)
f
=
;
в) f = ((x / y) z) y;
г) f = ( ~ (y xz));
д) f = (((x / y) z) / y) z;
е) f = (( ) z) y.
Розв’язання 8а). Розглянемо підформули даної функції p = x y, q = y z, r = z x. Використаємо табличне значення кожної з цих функцій і обчислимо табличне значення функції f = p (q r) на всіх наборах змінних x, y, z.
x |
y |
z |
p = x y |
q = y z |
r = z x |
f = p (q r) |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Приклад 9. Перевірити чи справедливі такі співвідношення:
а) x (y ~ z) = (x y) ~ (x z);
б) x (y ~ z) = (x y) ~ (x z);
в) x & (y ~ z) = (x & y) ~ (x & z);
г) x (y z) = (x y) (x z);
д) x (y & z) = (x y) & (x z);
е) x (y z) = (x y) (x z);
ж) x (y z) = (x y) (x z).
Розв’язання 9б). Побудуємо таблиці істинності функцій
f = x (y ~ z) і g = (x y) ~ (x z).
x |
y |
z |
p = y ~ z |
f = x p |
r = x y |
s = x z |
q = r ~ s |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Оскільки на всіх двійкових наборах значення функцій f і g співпадають, то виконується дане співвідношення, з якого випливає, що операція імплікації має дистрибутивну властивість відносно операції еквівалентності.
Розв’язання 9г). Побудуємо таблиці істинності функцій
f = x (y z) і g = (x y) (x z).
x |
y |
z |
p = y z |
f = x p |
r = x y |
s = x z |
q = r s |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Оскільки на всіх двійкових наборах значення функцій f і g співпадають, то виконується дане співвідношення.
Розв’язання 9ж). Побудуємо таблиці істинності функцій
f = x (y z) і g = (x y) (x z).
x |
y |
z |
p = y z |
f = x p |
r = x y |
s = x z |
q = r s |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Значення на всіх двійкових наборах функцій f і g співпадають, тому виконується дане співвідношення.
Приклад 10. Реалізувати функцію f формулою над множиною зв’язок S, якщо:
а) f = x y, S = {, }; б) f = x y, S = {}; в) f = x ~ y, S = {&, }; г) f = x / y, S = {, }; |
д) f = x1 x2, S = {, , &}; е) f = x / y, S = {, , &}; ж) f = x y, S = {, , &}; з) f = x ~ y, S = {, , &}. |
Розв’язання 10а). Використаємо табличне значення функції
f = x y. Тоді очевидно, що f = x y = x y = max( , y) = g. Маємо
x |
y |
f = x y |
|
g =x y |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
Значення на всіх двійкових наборах функцій f і g співпадають, тому виконується дане співвідношення.
Розв’язання 10д). Використаємо табличне значення функції
f = x1 x2. Тоді очевидно, що f = x1 x2 = (x1 x2)(x1 x2). Маємо
x |
y |
f = x y |
r = x1 x2 |
q = x1 x2 |
g = rq |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
Значення на всіх двійкових наборах функцій f і g співпадають, тому виконується дане співвідношення.
Розв’язання 10г). Використаємо табличне значення функції
f = x / y. Тоді очевидно, що f = x / y = (x y) = (x&y) = g. Маємо
x |
y |
f = x / y |
r = x y |
q = r |
g = (x&y) |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
Значення на всіх двійкових наборах функцій f і g співпадають, тому виконується дане співвідношення.
Приклад
11.
Булева функція m(
)
= x1x2
x1x3
x2x3
називається мажоритарною.
Довести, що виконуються співвідношення:
m(x1,
x1,
x2)
= x1;
m(x1,
,
x2)
= x2;
= m(
,
,
).
Розв’язання. За означенням функції m(x1, x2, x3) та кон’юнкції і диз’юнкції, маємо
m(x1, x1, x2) = (x1 x2) (x1 x2) (x1 x2) = x1 (x1 x2) = x1(1 x2) = x1;
m(x1, , x2) = x1 x1x2 x2 = x1 x2(x1 ) = x1 x2 = 0 x2 = x2;
m(
,
,
)
=
=
=
=
=
=
=
=
=
=
=
=
.
Приклад 12. Використовуючи основні тотожності, довести еквівалентність формул U і V, якщо
а) U = ( & ) (x & y) (x & ), V = xy ;
б) U = (x y) ((x & ) (x ~ )), V = (x y) & ( );
в) U = x (x & y ((x y) y) & z), V = y (x z).
Розв’язання
12а)
Використаємо формулу неповного склеювання
x1x2
+ x1
= x1.
Маємо xp
x
= x(p
)
= x
1 = x
і операцію поглинання x1
+ x1x2
= x1,
маємо p
py
= p.
Тоді U
=
xy
x
=
x
xy
=
(
+ x)
xy
=
xy
= V.
Розв’язання
12б)
Використовуючи основні тотожності: x
y
=
+ y,
x
~ y
= (
+ y)(x
+
),
x
y
= (x
+ y)(
+
),
=
,
=
+
,
маємо
U = (x y) ((x & ) (x ~ )) = (x y) ((x ) ( + )(x + y)) = = (x y) ((x ) (x + y + x + y)) = (x y) ((x ) ( y + x)) =
=
(x
y)
((x
+
y
+
x)(
+
))
=
(x
y)
((x
+
y)(
+
+
))
=
(x
y)
((x
+
y)(
+ y
+ (
+
)(
+
))
= (x
y)
((x
+
y)(
+ y
+ xy
+ x
+ y
+
))
= (x
y)
((x
+
y)(
(1
+
)
+ y(1
+ x))
= (x
y)
((x
+
y)(
+ y))
= (x
y)
(x
+ x
y
+
y
+
yy)
= (x
y)
(
y)
= (
+ y)
(
y)
=
+
y
=
+
y
= x
+
y
= (x
+ y)(
+
)
= V.
Розв’язування 12в). Розглянемо підформули даної функції:
p = x y, q = p y, r = qz, = xy r, U = x , R = x z, V = y R. Використаємо табличне значення кожної з цих функцій і обчислимо табличне значення функцій U і V на всіх двійкових наборах змінних x, y, z:
x |
y |
z |
p |
q |
r |
|
U |
R |
V |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Приклад 13. За функціями f(x1, x2) і g(x3, x4), які задано векторно, побудувати векторне задання функції h:
а)
f
= (1011),
g
= (1001), h(x2,
x3,
x4)
= f(g(x3,
x4),
x2);
б)
f
= (1011),
g
= (1001), h(
)
= f(x1,
x2)
g(x3,
x4);
в) f = (1000), g = (0111), h( ) = f(x1, x2) & g(x3, x4).
Розв’язання 13а). Побудуємо таблиці істинності функцій f(x1, x2) і g(x3, x4).
x1 |
x2 |
f(x1, x2) |
|
x3 |
x4 |
g(x3, x4) |
0 |
0 |
1 |
|
0 |
0 |
1 |
0 |
1 |
0 |
|
0 |
1 |
0 |
1 |
0 |
1 |
|
1 |
0 |
0 |
1 |
1 |
1 |
|
1 |
1 |
1 |
Для того, щоб побудувати таблицю істинності суперпозиції f(g(x3, x4), x2), розглянемо набір (x3, x4) = (0, 0) і з таблиці істинності g(x3, x4) знаходимо, що g(0, 0) = 1. Тоді з таблиці істинності функції f(x1, x2) маємо, що f(1, 0) = 1 всіх двійкових наборів, отримаємо таблицю істинності функції h(x2, x3, x4)
x2 |
x3 |
x4 |
h(x2, x3, x4) |
x2 |
x3 |
x4 |
h(x2, x3, x4) |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Розв’язання 13б). Побудуємо таблиці істинності функцій f(x1, x2) і g(x3, x4).
x1 |
x2 |
f(x1, x2) |
|
x3 |
x4 |
g(x3, x4) |
0 |
0 |
1 |
|
0 |
0 |
1 |
0 |
1 |
0 |
|
0 |
1 |
0 |
1 |
0 |
1 |
|
1 |
0 |
0 |
1 |
1 |
1 |
|
1 |
1 |
1 |
Для того, щоб побудувати таблицю істинності суперпозиції h( ) = f(x1, x2) g(x3, x4), розглянемо набір (x3, x4) = (0, 0) і з таблиці істинності g(x3, x4) знаходимо, що g(0, 0) = 1. Аналогічно з таблиці істинності функції f(x1, x2) маємо, що f(0, 0) = 1 і тому h( ) = f(0, 0) g(0, 0) = 1.
Виконавши такі обчислення для всіх двійкових наборів, отримаємо таблицю істинності функції h( )
x2 |
x3 |
x4 |
x4 |
h( ) = = f(x1, x2) g(x3, x4) |
x2 |
x3 |
x4 |
x4 |
h( ) = = f(x1, x2) g(x3, x4) |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
