Вы находитесь на странице: 1из 51

Оглавление

Программа курса………………………………...……….….…. 4
Рекомендуемая литература…………………………………..... 5
Задачи для контрольной работы................................................ 10
Методические указания для выполнения контрольной
18
работы...........................................................................................
1Теория множеств……………………………...………... 18
1.1 Способы задания множеств…………………………. 18
1.2 Отношения между множествами…………….……... 18
1.3 Диаграммы Венна………………………………….… 19
1.4 Операции над множествами.............................…..…. 19
1.5 Свойства операций над множествами..………….…. 20
1.6 Отношения на множествах....................…...........…... 21
2Комбинаторика…………………………………………. 23
2.1 Перестановки, размещения и сочетания без
23
повторений…………….......……………………………...
2.2 Выборки с повторениями…………..………………... 24
2.3 Формулы включений и исключений………………... 27
2.4 Рекуррентные соотношения. Возвратные
последовательности…..………………..……….……….. 29
3Алгебра логики……………..…………………..………. 31
3.1 Булевы функции………………………………….….. 31
3.2 Булева алгебра……………………………………….. 32
3.3 Нормальные формы………………………………….. 33
3.4 Минимизация булевых функций в классе ДНФ…… 37
3.5 Метод Квайна получения минимальной ДНФ....….. 37
3.6 Нахождение минимальной ДНФ с помощью карт
Карно…………………………………………………..…. 41
3.7 Булева алгебра и переключательные схемы……….. 43
4Теория графов……………………………….……....….. 45
4.1 Способы задания графов…………………………….. 47
4.2 Маршруты, цепи, циклы…………………………….. 49
4.3 Эйлеровы графы……………………………………... 50
4.4 Задача поиска минимального остова графа………... 51
4.5 Задача поиска кратчайших расстояний между всеми
парами вершин графа……………………………. 52
5Конечные автоматы……………….…………………… 53
5.1 Определение, способы представления конечного
автомата………………………………………..………… 53
5.2 Минимизация конечных автоматов………………… 55
МУА 2021-2022 Дискретная математика. АЕС

ПРОГРАММА КУРСА
Теория множеств
Множества, способы задания множеств. Диаграммы Венна.
Операции над множествами. Бинарное отношение между элементами
множества, виды бинарных отношений. Свойства операций над
множествами.
Комбинаторика
Перестановки, размещения, сочетания без повторений. Выборки
из множества с повторением элементов. Правило суммы, правило
произведения. Формула включений и исключений.
Последовательности, рекуррентные соотношения. Возвратные
последовательности. Характеристический многочлен возвратной
последовательности. Общее и частное решение рекуррентного
соотношения.
Алгебра логики
Булевы переменные, булевы функции. Основные булевы функции
одного и двух аргументов. Существенные и фиктивные переменные.
Булева алгебра, основные законы. Элементарная дизъюнкция,
элементарная конъюнкция, дизъюнктивная и конъюнктивная
нормальные формы. Нахождение нормальных форм с
использованием законов булевой алгебры. Конституента единицы,
конституента нуля. Совершенные дизъюнктивная и конъюнктивная
нормальные формы. Построение совершенных форм по таблице
истинности и с использованием законов булевой алгебры.
Импликанта, простая импликанта. Сокращенная дизъюнктивная
нормальная форма, тупиковая дизъюнктивная нормальная форма,
минимальная ДНФ. Метод Квайна, операции склеивания и
поглощения, импликантная таблица, процедура ветвления.
Нахождение минимальной ДНФ с помощью карт Карно, покрытие.
Булева алгебра в применении к переключательным схемам.
Графы
Графы, вершины, ребра, порядок графа. Смежные вершины,
понятие инцидентности ребра и вершины. Полные графы,
мультиграфы, псевдографы, орграфы, взвешенные графы. Степень
вершины, лемма о "рукопожатиях". Способы задания графа, матрицы
смежности и инцидентности. Изоморфные графы.
Маршрут, его длина. Цепь, простая цепь. Цикл, простой цикл.
Связный граф, компоненты связности графа.

2
МУА 2021-2022 Дискретная математика. АЕС

Эйлеровы циклы, эйлеровы графы. Теорема Эйлера. Алгоритм


Флери нахождения эйлеровой цепи в связном графе.
Остов графа. Минимальный остов взвешенного графа, алгоритм
Краскала. Кратчайший маршрут, алгоритм Флойда-Уоршалла
нахождения матрицы кратчайших расстояний.
Конечные автоматы
Определение автомата, функция переходов, функция выходов,
входной и выходной алфавиты, команды автомата.
Функционирование автомата. Способы задания автоматов. Автомат,
реализующий двоичное суммирование n-разрядных чисел.
Эквивалентные автоматы. Минимальный автомат, алгоритм Мили
поиска минимального автомата, разбиение состояний на классы.

ЗАДАЧИ ДЛЯ КОНТРОЛЬНОЙ РАБОТЫ


Задачи 1-20
Доказать равенства, используя свойства операций над множествами.
Номер
Равенство
задачи
1 ( A \ B)  ( A \ C )  A \ ( B  C )
2 ( A  B) \ ( A  C )  ( A  B) \ C
3 ( A \ B)  ( A \ C )  A \ ( B  C )

4 ( A \ C )  ( B \ C )  ( A  B) \ C

5 ( A  B) \ ( A  C )  A  ( B \ C )
6 ( A \ C ) \ ( B \ C )  ( A \ B) \ C
7 ( A \ C )  ( B \ C )  ( A  B) \ C
8 ( A  B) \ ( A  C )  ( A  C)  ( A  B)
9 ( A \ C )  ( B \ C )  ( A  B) \ C

10 ( A \ B)  ( A  C )  A \ ( B \ C )

11 ( A  B ) \ ( A  B )  ( A \ B )  ( B \ A)
12 A \ ( B  C )  ( A \ B) \ C
13 A  ( A  B)  A \ B
14 ( A  B) \ ( A  C )  ( B \ A)  ( A \ C )
15 ( A \ B) \ C  ( A \ C ) \ B

16 ( A \ B)  ( A  C )  ( A  C ) \ B

3
МУА 2021-2022 Дискретная математика. АЕС

17 ( A \ B) \ ( A  C )  ( A \ C ) \ B
18 A \ (( A  B) \ C )  ( A \ B)  ( A  C )
19 ( A  B) \ ( B  C )  ( A \ B)  ( B \ C )
20 A \ (( A  B)  ( A  C ))  ( A \ B ) \ C

Задачи 21-40
Пусть имеется множество A={1,2,3,4}, на этом множестве
определены отношения RA2 и PA2.
а) Определить, является ли отношение P рефлексивным.
б) Построить графические представления отношений R, P, P◦R.
в) Найти области определения и множества значений для
отношений R, P, P◦R.
Номер
Отношения R, P
задачи
21 R={(x,y)| x 2  12y}, P={(x,y)| xy+1 делится на 3}
22 R={(x,y)| x 2  2y}, P={(x,y)| xy+1 делится на 3}
23 R={(x,y)| x 2  3(x+y)}, P={(x,y)| xy+1 делится на 3}
24 R={(x,y)| x 2  3(y-x)}, P={(x,y)| xy+1 делится на 3}
25 R={(x,y)| x 2  12y}, P={(x,y)| x+3y делится на 4}
26 R={(x,y)| x 2  2y }, P={(x,y)| x+3y делится на 4}
27 R={(x,y)| x 2  3(x+y)}, P={(x,y)| x+3y делится на 4}
28 R={(x,y)| x 2  3(y-x)}, P={(x,y)| x+3y делится на 4}
29 R={(x,y)| x 2  12y}, P={(x,y)| x+y2 делится на 3}
30 R={(x,y)| x 2  2y }, P={(x,y)| x+y2 делится на 3}
31 R={(x,y)| x 2  3(x+y)}, P={(x,y)| x+y2 делится на 3}
32 R={(x,y)| x 2  3(y-x)}, P={(x,y)| x+y2 делится на 3}
33 R={(x,y)| x 2  12y}, P={(x,y)| x 2 +3y делится на 4}
34 R={(x,y)| x 2  2y }, P={(x,y)| x 2 +3y делится на 4}
35 R={(x,y)| x 2  3(x+y)}, P={(x,y)| x 2 +3y делится на 4}
36 R={(x,y)| x 2  3(y-x)}, P={(x,y)| x 2 +3y делится на 4}
37 R={(x,y)| x 2  12y}, P={(x,y)| 2x+y2 делится на 4}
38 R={(x,y)| x 2  2y }, P={(x,y)| 2x+y2 делится на 4}
39 R={(x,y)| x 2  3(x+y)}, P={(x,y)| 2x+y2 делится на 4}
40 R={(x,y)| x 2  3(y-x)}, P={(x,y)| 2x+y2 делится на 4}

Задачи 41-60

4
МУА 2021-2022 Дискретная математика. АЕС

Сколько четырехзначных чисел можно образовать из цифр


указанного числа?
Номер Номер
Число Число
задачи задачи
41 1111234567890 51 1112223456780
42 1112234567890 52 1112345678000
43 1122334567890 53 1112233456780
44 1112345678900 54 1112234567800
45 1122345678900 55 1122345678000
46 1123456789000 56 1122334456780
47 1234567890000 57 1122334567800
48 1111223456780 58 1111222345670
49 1111234567800 59 1111234567000
50 1123456780000 60 1112344456000

Задачи 61-70

Управление имеет а предприятий, из них а1 предприятий


выпускают продукцию А, а2 – продукцию B, a3 – продукцию С.
Продукцию А и В выпускают а4 предприятий, В и С – а5 предприятий,
А и С – а6 предприятий. Все виды продукции выпускают а7
предприятий. Сколько предприятий
а) выпускают ровно один вид продукции А, В или С?
б) не выпускают ни одного из указанных видов продукции?
Номер
а а1 а2 а3 а4 а5 а6 а7
задачи
61 158 120 50 30 40 10 20 8
62 147 110 60 50 30 20 30 7
63 181 100 90 80 50 30 40 6
64 129 90 80 60 60 20 30 5
65 151 80 90 70 40 50 20 3
66 166 70 100 80 30 40 40 3
67 177 60 110 60 20 30 30 9
68 178 50 120 40 30 20 20 4
69 192 40 130 30 10 10 10 6
70 205 30 140 20 20 10 10 2

Задачи 71-80
Найти количество положительных трехзначных чисел:
а) не делящихся ни на одно из чисел a,b,c;
б) делящихся ровно на одно число из чисел a,b,c.

5
МУА 2021-2022 Дискретная математика. АЕС

Номер
а b c
задачи
71 6 9 15
72 4 7 18
73 3 4 14
74 5 6 16
75 3 8 20
76 6 14 20
77 8 11 14
78 9 10 12
79 7 15 30
80 12 8 34

Задачи 81-100

Найти последовательность {an}, удовлетворяющую


рекуррентному соотношению b  an  2  c  an 1  d  an  0 и начальными
условиями a1=e, a2=f. Коэффициенты b, c, d, e, f выбираются из
таблицы.
Номер
b c d e f
задачи
81 2 5 3 1 2
82 1 -3 2 3 7
83 4 9 5 1 4
84 4 7 3 2 1
85 1 4 3 2 4
86 2 6 4 1 3
87 3 -8 5 10 20
88 2 -10 12 3 27
89 1 5 4 3 9
90 2 7 5 6 9
91 2 -5 2 6 3
92 1 7 10 0 30
93 2 7 6 0 15
94 1 -7 12 -15 15
95 2 9 7 5 30
96 1 -9 14 10 -50
97 1 -8 7 -24 18
98 2 10 8 3 9
99 1 -10 16 -12 24
100 1 -3 -21 15 17

Задачи 101-120

6
МУА 2021-2022 Дискретная математика. АЕС

В таблице заданы номера наборов аргументов, на которых


логическая функция принимает значение, равное единице. Найти
1. СКНФ, СДНФ;
2. минимальную ДНФ:
а) методом Квайна;
б) с помощью карт Карно.
Номер Номера конституент Номер Номера конституент
задачи единиц задачи единиц
101 0,1,3,4,6,8,9,12,14,15 111 0,4,5,7,8,9,10,11,12,13
102 1,2,3,4,5,10,11,12,13,14 112 2,4,5,6,7,9,10,12,13,15
103 0,1,2,3,4,6,9,11,12,13 113 0,1,3,4,5,8,9,10,12,15
104 0,2,4,5,6,11,12,13,14,15 114 2,3,4,5,6,7,9,11,14,15
105 0,1,4,5,6,8,12,13,14,15 115 0,1,2,3,7,8,9,10,11,14
Номер Номера конституент Номер Номера конституент
задачи единиц задачи единиц
106 0,2,3,6,7,8,9,10,11,14 116 1,2,3,4,5,7,9,10,11,12
107 1,2,3,5,7,8,10,11,12,15 117 1,3,4,6,9,10,11,12,14,15
108 0,3,4,5,7,8,10,11,12,14 118 1,3,4,5,8,9,11,12,13,14,15
109 0,1,4,5,6,8,12,13,14,15 119 1,2,4,5,7,9,10,12,13,15
110 1,2,3,5,6,8,10,12,13,14 120 0,2,4,5,7,8,10,11,13,14,15

Задачи 121-140

Граф G задан списком ребер (каждый элемент списка – это тройка


чисел: номера двух смежных вершин и вес ребра, их соединяющего).
Требуется
а) Нарисовать граф G.
б) Найти степенную последовательность графа G.
в) Найти матрицу смежности графа G.
г) Обозначить ребра и найти матрицу инцидентности графа.
д) Определить количество компонент связности графа.
е) Найти четыре простых цикла.
ж) Найти минимальный остов графа и его вес.

Номер Номер
Список ребер с весами Список ребер с весами
задачи задачи
121 (1,4,5), (1,5,3), (1,6,1), 131 (1,3,2), (1,7,5), (2,6,7),
(1,8,4), (2,3,6), (2,6,3), (2,8,3), (3,6,8), (4,7,2),
(3,8,2), (4,5,1), (4,6,5), (4,8,1), (5,6,4), (5,8,6),
(4,7,4), (6,7,7) (6,7,9), (7,8,5)
122 (1,2,6), (1,4,8), (1,5,5), 132 (1,2,9), (1,3,5), (1,5,4),
(1,6,3), (2,3,6), (2,4,1), (1,6,7), (2,6,1), (2,8,7),
(2,5,2), (3,8,7), (4,5,1), (3,4,8), (3,5,3), (3,6,1),
(4,6,2), (4,7,5), (4,8,9), (3,7,2), (4,8,6), (5,6,3),
(5,6,3), (6,8,2), (7,8,5) (5,7,4)

7
МУА 2021-2022 Дискретная математика. АЕС

123 (1,3,4), (1,5,7), (1,7,1), 133 (1,2,7), (1,4,9), (1,5,2),


(2,5,8), (2,6,2), (3,4,3), (1,8,5), (2,3,9), (3,7,1),
(3,6,8), (3,7,2), (4,6,1), (4,5,3), (4,7,6), (4,8,1),
(4,7,5), (4,8,3), (6,8,1) (5,7,4), (5,8,6), (6,8,1)
124 (1,4,3), (1,5,6), (1,6,8), 134 (1,5,7), (1,6,6), (1,7,9),
(1,8,3), (2,3,1), (2,6,2), (2,5,3), (2,6,5), (2,7,8),
(2,8,4), (3,7,6), (3,8,9), (2,8,1), (3,5,2), (3,6,6),
(4,5,1), (4,6,2), (4,7,7), (3,8,4), (4,6,1), (4,7,2),
(6,7,2) (4,8,5)
125 (1,5,3), (1,6,6), (1,7,8), 135 (1,3,8), (1,5,3), (2,6,1),
(2,5,9), (2,6,7), (2,7,2), (3,4,6), (3,6,3), (3,7,2),
(3,5,1), (3,6,3) (3,8,4), (4,6,7), (4,7,6) (4,8,2),
(4,7,6), (4,8,1) (6,8,5)

8
МУА 2021-2022 Дискретная математика. АЕС

126 (1,3,6), (1,7,8), (2,6,5), 136 (1,2,4), (1,4,1), (1,5,5),


(2,8,4), (3,5,3), (3,6,9), (1,8,8), (2,3,4), (2,6,7),
(3,7,4), (4,7,5), (4,8,2), (2,7,1), (3,7,5), (4,5,4),
(5,6,1), (5,7,3), (5,8,8), (4,7,9), (4,8,7), (5,6,3),
(6,7,4), (7,8,1) (5,8,1), (6,7,4), (6,8,2)
127 (1,2,3), (1,3,7), (1,6,8), 137 (1,4,5), (1,5,7), (2,6,4),
(2,6,4), (2,8,1), (3,4,5), (2,7,1), (2,8,6), (3,7,9),
(3,6,9), (3,7,2), (4,8,1), (3,8,3), (4,6,2), (4,8,1),
(5,6,4), (5,7,1) (5,6,4), (5,7,8), (5,8,1)
128 (1,2,7), (1,4,8), (1,5,6), 138 (1,2,8), (1,4,7), (1,6,5),
(1,6,4), (2,3,1), (2,4,5), (2,3,4), (2,4,2), (3,8,6),
(2,5,8), (3,8,1), (4,5,4), (4,5,1), (4,6,7), (4,7,2),
(4,6,3), (4,7,5), (4,8,7), (4,8,4), (5,6,6), (6,8,1),
(5,6,3), (6,8,4), (7,8,2) (7,8,2)
129 (1,4,8), (1,5,4), (1,6,6), 139 (1,2,3), (1,3,5), (1,6,7),
(1,8,3), (2,3,1), (2,6,5), (1,8,9), (2,7,6), (3,4,1),
(3,8,7), (4,5,9), (4,7,2), (3,6,2), (3,8,7), (4,5,4),
(6,7,5), (7,8,1) (5,6,3), (6,8,1), (7,8,9)
130 (1,4,3), (1,5,6), (2,6,8), 140 (1,4,5), (1,5,3), (1,6,9),
(2,7,9), (2,8,2), (3,7,5), (1,8,7), (2,4,6), (2,6,15),
(3,8,4), (4,6,1), (4,8,3), (2,9,20), (3,4,18), (3,7,1),
(5,6,7), (5,7,9), (5,8,4) (3,8,4), (4,5,7), (4,6,3),
(5,7,10), (6,9,8), (8,9,10)

Задачи 141-160
Найти минимальный автомат, эквивалентный данному.

Задача 141 Задача 142 Задача 143


0 1 0 1 0 1
1 2,0 4,1 1 2,0 6,1 1 5,0 9,1
2 8,1 7,0 2 8,1 3,0 2 3,0 5,1
3 8,1 6,0 3 1,0 8,1 3 9,1 4,0
4 3,0 5,1 4 9,0 8,1 4 2,0 9,1
5 2,0 4,1 5 8,1 4,0 5 6,0 5,1
6 4,0 8,1 6 2,0 9,1 6 9,1 1,0
7 9,0 8,1 7 5,0 7,1 7 3,0 8,1
8 5,1 3,1 8 6,1 2,1 8 6,0 7,1
9 2,0 9,1 9 5,0 9,1 9 2,1 3,1

9
МУА 2021-2022 Дискретная математика. АЕС

Задача 144 Задача 145 Задача 146


0 1 0 1 0 1
1 4,1 2,0 1 6,1 8,1 1 4,1 9,0
2 3,0 4,1 2 1,1 5,0 2 5,0 8,1
3 5,0 3,1 3 7,0 1,1 3 7,0 4,1
4 7,1 5,1 4 2,0 6,1 4 8,1 5,1
5 4,1 8,0 5 6,0 1,1 5 4,1 3,0
6 1,0 6,1 6 8,0 7,1 6 1,0 6,1
7 1,0 3,1 7 8,0 4,1 7 5,0 2,1
8 9,0 4,1 8 1,1 3,0 8 1,0 6,1
9 5,0 6,1 9 2,0 7,1 9 6,0 4,1

Задача 147 Задача 148 Задача 149


0 1 0 1 0 1
1 8,0 7,1 1 9,0 3,1 1 7,0 5,1
2 3,1 4,0 2 6,1 9,1 2 1,1 3,1
3 5,1 8,1 3 7,0 1,1 3 2,1 6,0
4 1,0 3,1 4 6,0 2,1 4 7,0 4,1
5 8,0 5,1 5 3,0 2,1 5 3,0 9,1
6 9,0 3,1 6 7,0 8,1 6 1,0 2,1
7 2,0 9,1 7 2,1 4,0 7 2,1 8,0
8 3,1 6,0 8 9,0 1,1 8 5,0 2,1
9 2,0 1,1 9 2,1 5,0 9 7,0 5,1

Задача 150 Задача 151 Задача 152


0 1 0 1 0 1
1 7,1 3,1 1 2,1 6,0 1 6,1 8,1
2 3,0 5,1 2 8,1 1,1 2 1,1 3,0
3 1,1 6,0 3 9,0 3,1 3 4,0 1,1
4 7,0 1,1 4 7,0 2,1 4 2,0 4,1
5 3,0 2,1 5 9,0 7,1 5 6,0 1,1
6 2,0 1,1 6 8,0 2,1 6 8,0 9,1
7 3,0 9,1 7 1,0 5,1 7 8,0 7,1
8 1,1 4,0 8 1,0 3,1 8 1,1 5,0
9 8,0 5,1 9 2,1 4,0 9 2,0 9,1

Задача 153 Задача 154 Задача 155


0 1 0 1 0 1
1 4,0 3,1 1 7,0 3,1 1 6,1 4,0
2 9,1 8,1 2 9,0 7,1 2 8,0 6,1
3 8,0 1,1 3 8,1 4,1 3 1,0 3,1
4 2,1 7,0 4 3,1 6,0 4 3,0 6,1
5 9,0 2,1 5 4,0 2,1 5 1,0 9,1
6 8,0 6,1 6 8,0 3,1 6 8,1 1,1
7 1,0 2,1 7 4,0 2,1 7 6,1 2,0
8 2,1 5,0 8 9,0 5,1 8 7,0 9,1
9 4,0 6,1 9 3,1 1,0 9 7,0 5,1

10
МУА 2021-2022 Дискретная математика. АЕС

Задача 156 Задача 157 Задача 158


0 1 0 1 0 1
1 5,1 2,0 1 2,0 7,1 1 6,0 9,1
2 9,0 5,1 2 3,0 6,1 2 2,0 4,1
3 8,0 4,1 3 7,1 9,0 3 6,0 5,1
4 1,0 3,1 4 7,1 1,0 4 2,1 6,1
5 9,1 1,1 5 4,0 8,1 5 7,0 9,1
6 1,0 6,1 6 4,0 5,1 6 4,1 2,0
7 6,0 5,1 7 2,1 4,1 7 4,1 8,0
8 5,1 7,0 8 3,0 8,1 8 5,0 4,1
9 8,0 6,1 9 6,0 7,1 9 7,0 3,1

Задача 159 Задача 160


0 1 0 1
1 5,0 3,1 1 2,0 3,1
2 3,1 7,0 2 1,0 6,1
3 4,1 9,1 3 8,1 4,0
4 2,0 8,1 4 6,0 5,1
5 9,0 6,1 5 9,1 1,0
6 9,0 5,1 6 1,0 8,1
7 6,0 3,1 7 1,1 7,1
8 2,0 6,1 8 4,0 9,1
9 3,1 1,0 9 4,0 2,1

11
МУА 2021-2022 Дискретная математика. АЕС

МЕТОДИЧЕСКИЕ УКАЗАНИЯ ДЛЯ ВЫПОЛНЕНИЯ


КОНТРОЛЬНОЙ РАБОТЫ
1 Теория множеств
Под множеством понимают любую совокупность объектов.
Сами объекты, из которых состоит множество, называются
элементами. Множества обозначают прописными буквами (А, В, С и
т.д.), а их элементы – строчными (например: x,y,z). Если элемент x
принадлежит множеству А, то пишут x  A. Запись x  A означает, что
элемент x не принадлежит множеству А. Множество, не содержащее
элементов, называется пустым множеством и обозначается
символом . Для числовых множеств будем использовать
следующие обозначения:
N - множество натуральных чисел,
Z – множество целых чисел,
R – множество действительных чисел.

1.1 Способы задания множеств


Множества могут быть заданы тремя основными способами.
1. Перечислением элементов множества. Например, А={2,7,10}.
2. Указанием характерных свойств элементов множества. Например,
А={x R| x>0} – множество всех положительных чисел.
3. Описанием способа построения. Например, А= {5i | i=1,2,…n}.
1.2 Отношения между множествами
Два множества равны, если они состоят из одних и тех же
элементов. Равенство множеств обозначается как А=В. Если
множества не равны, то пишут АВ.
Если каждый элемент множества А является элементом
множества В, то пишут А  В (А является подмножеством множества
В). Для числовых множеств выполняется NZR. Считается, что 
 А для любого множества А.
Теорема. Множество А равно множеству В тогда и только тогда,
если А В и В А.
Данная теорема дает метод доказательства равенства двух
множеств.
Если все рассматриваемые множества являются подмножествами
более широкого множества U, то множество U называется
универсальным множеством.

12
МУА 2021-2022 Дискретная математика. АЕС

1.3 Диаграммы Венна


Для повышения наглядности представления множеств
используют диаграммы Венна в виде кругов, ограничивающих
области, которым ставятся в соответствие элементы тех или иных
множеств. Например:

Если множества не имеют общих элементов, то их изображают


непересекающимися кругами. В противном случае, круги
пересекаются. Универсальное множество изображают в виде
прямоугольника.
1.4 Операции над множествами
Декартовым произведением множеств А1, А2, …, Аn называется
множество всех упорядоченных наборов (x1 ,x2, … xn) таких, что
xi  Ai при i=1,2,…,n. Декартово произведение обозначается
A1  A2    An . В частности, A  B  (a,b)| a  A, b  B.
Например, пусть имеются множества A={1,2}, B={2,3,4}. Тогда
A  B  (1,2), (1,3), (1,4), (2,2), (2,3), (2,4).
Объединением множеств А и В называется
множество A  B   x | x  A или x  B.

Пересечением множеств А и В называется


множество A  B   x | x  A и x  B.

Разностью множеств А и В называется


множество A\B   x | x  A и x  B.

Симметрической разностью множеств А и В


называется множество A  B  ( A\B)  ( B\A) .

Дополнением множества А называется


множество A  U\A .

Введенные понятия заштрихованы на диаграммах темным


цветом.

13
МУА 2021-2022 Дискретная математика. АЕС

1.5 Свойства операций над множествами


Введенные операции под множествами обладают следующими
свойствами.
1. Коммутативность
A  B  B  A;
A  B  B  A.
2. Ассоциативность
(A  B)  C  A  (B  C);
(A  B)  C  A  (B  C).
3. Дистрибутивность
A  (B  C)  (A  B)  (A  C);
A  (B  C)  (A  B)  (A  C).
4. Идемпотентность
A  A  A; A  A  A.
5. Двойственность (законы де Моргана)
A  B  A  B; A  B  A  B
6. Операции с пустым множеством
A    A; A   = 
7. Операции с универсальным множеством
A  U  U, A  U  A
8. Операции с дополнением
A  A, A  A  U, A  A  
9. Определение разности через пересечение
A\B  A  B
10. Поглощение
A  (A  B)  A; A  (A  B)  A
На основании свойств 1–10 можно получить новые свойства и
равенства.
Пример 1.1. Доказать, что верно равенство
(A\B)\(A  C)  (A\C)\B
св во 9 св ва 5,9 св во 3
(A\B)\(A  C)  (A\B)  ( A  C )  (A  B )  (A  C ) 
св ва 1,2 св ва 2,8
 (A  B  A )  (A  B  C )  (A  A  B )  (A  C  B ) 
св ва 1,6,9 св во 9
=(  B)  ((A  C )  B )    ((A\C)  B ) 
св ва 1,6
=  ((A\C)\B)  (A\C)\B.

14
МУА 2021-2022 Дискретная математика. АЕС

1.6 Отношения на множествах


Бинарным отношением R на множествах А и В называется любое
подмножество декартова произведения множеств А и В.
R  A B
Если элементы x и y множеств А и В находятся в отношении R, то
пишут (x,y)R или xRy. Если А=В, то R называется бинарным
отношением на А.
Бинарное отношение можно задать указанием всех элементов,
входящих в соотношение, или графически. Основу графического
представления бинарного отношения составляет прямоугольная
система координат, где по одной оси откладываются элементы одного
множества, а по второй – другого. Пересечения координат образуют
точки, обозначающие элементы декартова произведения.
Пример 1.2 Рассмотрим множества A={1,2,3,4,5,6}, B={1,2,3}.
Определим на этих множествах отношение RAB.
R={(x,y) | x делится на y}.
R можно представить графически следующим образом:

Свяжем с каждым бинарным отношением R между множествами


A и B два множества – область определения  R и множество значений
R. Они определяются следующим образом:
R={x| (x,y)R для некоторого y},
R={y| (x,y)R для некоторого x}.
Пример 1.3 Пусть на множестве A={1,2,3,4,5} задано отношение
R: R={(x,y) | остаток от деления y на x равен 1}.
Тогда R={(5,1), (4,1), (3,1), (2,1), (2,3), (2,5), (3,4), (4,5)},
R={2,3,4,5}, R={1,3,4,5}.
Пусть имеются множества A, B, C и отношения RAB, PBC.
Определим отношение SAC следующим образом: оно действует из
A в B посредством R, а затем из B в C посредством P. Такое отношение
называется составным и обозначается S=P◦R.
S={(x,y) | zB, для которого выполнено (x,z)R, (z,y)P}.

15
МУА 2021-2022 Дискретная математика. АЕС

Пример 1.4 Пусть A={1,2,3,4}, на множестве A определим два


отношения: R={(x,y) | 2x  y} и P={(x,y) | x+3y делится на 2}. Найдем
графические представления отношений R, P, S = P◦R.

R P S

Найдем области определения и области значений для всех


отношений.
R={1,2}, R={2,3,4}, P={1,2,3,4}, P={1,2,3,4}, S={1,2},
S={1,2,3,4}.
Бинарное отношение R на множестве А называется рефлексивным,
если для всякого a  A выполняется aRa .
Бинарное отношение R на множестве А называется
симметричным, если из того, что выполняется xRy следует
выполнение yRx.
Бинарное отношение R на множестве А называется
антисимметричным, если из выполнения xRy и yRx следует, что x=y.
Бинарное отношение R на множестве А называется
транзитивным, если из выполнения xRy и yRz следует выполнение
xRz.
Рефлексивное, симметричное и транзитивное отношение R на
множестве A называется отношением эквивалентности.
Рефлексивное, антисимметричное и транзитивное отношение R на
множестве А называется частичным порядком.
Пример 1.5. Определим отношение R на множестве натуральных
чисел следующим образом: aRb  (a  2b)3 (a+2b делится на 3).
Это отношение является рефлексивным, т.к. aRa  (a  2a)3  3a3
Отношение R симметрично.
aRb  (a  2b)3  a  2b  3n  a  3n  2b . Для того, чтобы
проверить выполнение bRa, необходимо показать, что (b  2a)3.
(b  2a)  b  2(3n  2b)  b  6n  4b  6n  3b  3(2n  b) ,
3(2n  b)3  bRa выполнено.
Отношение R не является антисимметричным, т.к. 6R3, 3R6, но 6  3 .
Проверим, что R – транзитивно.
aRb  (a  2b)3  a  2b  3n  a  3n  2b ,

16
МУА 2021-2022 Дискретная математика. АЕС

bRc  (b  2c)3  b  2c  3m  2c  3m  b . Для того, чтобы


проверить выполнение aRc, необходимо показать, что (a  2c)3 .
(a  2c)  3n  2b  3m  b  3(n  m  b), 3(n  m  b)3 
aRc выполнено.
2Комбинаторика
Комбинаторика – раздел математики, посвященный решению
задач выбора и разложения элементов некоторого множества в
соответствии с заданными правилами. Каждое правило определяет
способ построения некоторой конструкции из элементов исходного
множества. Простейшими примерами комбинаторных конструкций
являются перестановки, размещения и сочетания, рассматриваемые
ниже.
2.1 Перестановки, размещения и сочетания без повторений

Пусть дано множество M={a1, a2, a3, ..., an}. Набор элементов
ai , ai ,..., ai из множества М называется выборкой объема m из n
1 2 m

элементов. Выборка называется упорядоченной, если в ней задан


порядок следования. Если порядок следования не является
существенным, то выборка называется неупорядоченной.
Размещениями без повторений из n элементов по m называются
упорядоченные выборки без повторений элементов множества,
которые отличаются одна от другой либо составом элементов, либо
порядком их расположения. Число размещений из n элементов по m
будем обозначать Anm .
n!
Anm 
(n  m)!
Пример 2.1. Сколько различных трехзначных чисел можно
составить из цифр 1, 2, 3, 4, 5 при условии, что ни одна цифра не
повторяется?
5! 5!
Составить разные числа можно A53    3  4  5  60
(5  3)! 2!
способами.
Перестановками без повторений из n элементов называются
размещения из n элементов по n. Обозначим число перестановок
объема n как Pn.
n!
Pn  Ann   n!
(n  n)!

17
МУА 2021-2022 Дискретная математика. АЕС

Пример 2.2. Сколькими способами можно расставить на полке 6


томов книг?
Это можно осуществить P6  6! 720 способами.
Сочетаниями без повторений из n элементов по m называются
любые подмножества из m элементов исходного множества. Число
сочетаний без повторений будем обозначать Cnm .
n!
C nm 
m!(n  m)!
Пример 2.3. На тренировках занимаются 8 баскетболистов.
Сколько разных стартовых пятерок может быть образовано
тренером?
Т.к. при образовании пятерки важен только ее состав, то достаточно
8! 8! 6  7  8
определить C85     56 пятерок.
5!(8  5)! 5!3! 1  2  3

Число C nm обладает следующими свойствами:


1. C nm  C nnm ;
2. C nm  C nm1  C nm11 ;
n
3. (a  b) n   Cnm a m b nm при любых a, b  R (бином Ньютона).
m 0

В силу свойства 3, числа C nm называют биномиальными


коэффициентами.
2.2 Выборки с повторениями
Размещениями с повторениями из n элементов по m называются
упорядоченные выборки из m элементов множества, в которых
элементы множества могут повторяться. Количество всех
размещений с повторениями обозначим Anm .
Anm  n m
Пример 2.4. Сколько всего трехзначных чисел можно составить
из цифр 1, 2, 3, 4, 5?
A53  53  125 .
Сочетаниями с повторениями из n элементов по m называются
неупорядоченные выборки из m элементов множества, в которых
элементы множества могут повторяться. Число всех сочетаний с
повторениями обозначим C nm .

18
МУА 2021-2022 Дискретная математика. АЕС

(n  m  1)!
C nm  C nmm1 
m!(n  1)!
Пример 2.5. Сколько различных вариантов количества очков
может выпасть при бросании двух кубиков?
7!
C62  C72   21 .
2!5!
Перестановками с повторениями из n элементов по k называется
упорядоченная выборка из k элементов множества, в которой каждый
элемент множества встречается ki раз (причем, k1+k2+...+kn=k). Число
перестановок с повторениями обозначается Pk1,,kn
k!
Pk1,,kn 
k1! k 2 ! k n !
Пример 2.6. Сколько разных слов можно образовать при
перестановке букв слова «математика»?
В слове «математика» буква «м» встречается 2 раза, «а» – 3 раза, «т»
– 2 раза, «е» – 1 раз, «и» – 1 раз, «к» – 1 раз. Поэтому число различных
слов равно
10!
P2,3,2,1,1,1   151200
2!3!2!1!1!1!
При подсчете числа комбинаций используют два правила:
правило суммы и правило произведения.
Правило суммы. Если объект А можно выбрать m способами, а
объект B – k способами, то объект «либо А, либо В» можно выбрать
m+k способами.
Правило произведения. Если объект А можно выбрать m
способами, а после каждого такого выбора объект В можно выбрать
k способами, то пару объектов А и В можно выбрать mk способами.
Пример 2.7. Сколько разных четырехзначных чисел можно
составить из цифр 0, 1, 2?
Из цифр 0, 1, 2 можно составить A43  3 4  81 число, но сюда
входят числа, у которых первая цифра нуль, которые не являются
четырехзначными. Таких чисел будет A33  33  27 . Поэтому ответ
81 – 27 = 54.
Пример 2.8 Сколько различных пятизначных чисел можно
составить из цифр числа 1111222345600?
Разделим все составленные числа на группы по первой цифре в
числе. Таких групп будет три.

19
МУА 2021-2022 Дискретная математика. АЕС

1-я группа. У чисел из этой группы на первом месте стоит «единица».


Эти числа имеют вид 1****, где на место **** выбираются 4 цифры
из набора 111222345600. Перечислим все возможные случаи. Это
могут быть либо 3 «единицы» и любая цифра из множества
{2,3,4,5,6,0}, либо 2 «единицы» и 2 «двойки», либо 2 «единицы» и 2
«нуля», либо 2 «единицы» и 2 любые цифры из множества
{2,3,4,5,6,0}, либо 3 «двойки» и любая цифра из множества
{1,3,4,5,6,0}, либо 2 «двойки» и 2 «нуля», либо 2 «двойки» и 2 любые
цифры из множества {1,3,4,5,6,0}, либо 2 «нуля» и 2 любые цифры из
множества {1,2,3,4,5,6}, либо 4 любые цифры из множества
{1,2,3,4,5,6,0}. Всего таких чисел будет:
n1  C43  6  C42  1  C42  1  C42  P62  C43  6  C42  1  C42  P62  C42  P62 
4! 4! 4! 4! 6! 4! 4! 4! 6!
 P74  6     6    
3!1! 2!2! 2!2! 2!2! (6  2)! 3!1! 2!2! 2!2! (6  2)!
4! 6! 7!
    46  6  6  656  46  6  656  656 
2!2! (6  2)! (7  4)!
 4  5  6  7  1446
2-я группа. У чисел из этой группы на первом месте стоит «двойка».
Эти числа имеют вид 2****, где на место **** выбираются 4 цифры
из набора 111122345600. Перечислим все возможные случаи. Это
могут быть либо 4 «единицы», либо 3 «единицы» и любая цифра из
множества {2,3,4,5,6,0}, либо 2 «единицы» и 2 «нуля», либо 2
«единицы» и 2 «двойки», либо 2 «единицы» и 2 любые цифры из
множества {2,3,4,5,6,0}, либо 2 «двойки» и 2 «нуля», либо 2 «двойки»
и 2 любые цифры из множества {1,3,4,5,6,0}, либо 2 «нуля» и 2 любые
цифры из множества {1,2,3,4,5,6}, либо 4 любые цифры из множества
{1,2,3,4,5,6,0}. Всего таких чисел будет:
n2  1  C43  6  C42  1  C42  1  C42  P62  C42  1  C42  P62  C42  P62 
4! 4! 4! 4! 6! 4! 4! 6!
 P74  1  6       
3!1! 2!2! 2!2! 2!2! (6  2)! 2!2! 2!2! (6  2)!
4! 6! 7!
   1 4  6  6  6  6  5  6  6  6  5  6  6  5  6 
2!2! (6  2)! (7  4)!
 4  5  6  7  1423
3-я группа. У чисел из этой группы на первом месте стоит ни
«единица», ни «двойка», ни «нуль», т.е. одна из цифр множества
{3,4,5,6}. Первую цифру можно выбрать 4 способами. Оставшиеся 4
цифры выбираются из набора 1111222345600 с учетом того, что одна
из цифр множества {3,4,5,6} уже выбрана. Перечислим все
возможные случаи. Это могут быть либо 4 «единицы», либо 3

20
МУА 2021-2022 Дискретная математика. АЕС

«единицы» и любая цифра из множества {2,3,4,5,6,0}, либо 2


«единицы» и 2 «двойки», либо 2 «единицы» и 2 «нуля», либо 2
«единицы» и 2 любые цифры из множества {2,3,4,5,6,0}, либо 3
«двойки» и любая цифра из множества {1,3,4,5,6,0}, либо 2 «двойки»
и 2 «нуля», либо 2 «двойки» и 2 любые цифры из множества
{1,3,4,5,6,0}, либо 2 «нуля» и 2 любые цифры из множества
{1,2,3,4,5,6}, либо 4 любые цифры из множества {1,2,3,4,5,6,0}. Всего
таких чисел будет:
n3  4  (1  C43  5  C42  1  C42  1  C42  P52  C43  5  C42  1  C42  P52 
4! 4! 4! 4! 5! 4!
 C42  P52  P64 )  4  (1  5      5 
3!1! 2!2! 2!2! 2!2! (5  2)! 3!1!
4! 4! 5! 4! 5! 6!
      )  4  (1  4  5  6  6 
2!2! 2!2! (5  2)! 2!2! (5  2)! (6  4)!
 6  4  5  4  5  6  6  4  5  6  4  5  3  4  5  6)  4  779  3116
Всего пятизначных чисел будет:
N=n1+n2+n3=1446+1423+3116=5985.
2.3 Формулы включений и исключений
Мощностью конечного множества называется количество
элементов в нем. Если множество А имеет n элементов, то пишут
A  n.
Пусть имеется два пересекающихся множества А и В. Изобразим
их на диаграмме Венна. Тогда имеет место следующая формула:
A B
A B  A  B  A B

Для трех пересекающихся множеств выполняется:


A B

A B C  A  B  C  A B  AC  B C  A B C

Пример 2.9. В месяце было 12 дождливых, 8 ветреных, 4


холодных дня, дождливых и ветреных – 5, дождливых и холодных –
3 , ветреных и холодных – 2, дождливых, ветреных и холодных – 1
день. Сколько дней была плохая погода?

21
МУА 2021-2022 Дискретная математика. АЕС

Пусть А – дождливые дни, В – ветреные дни, С – холодные, D – дни с


плохой погодой. Тогда D  A  B  C . Количество дней с плохой
погодой:
D  A B C  A  B  C  A B  AC  B C  A B C 
 12  8  4  5  3  2  1  15
В общем случае формула включений и исключений для k
множеств A1, A2 , Ak имеет вид:
A1  A2    Ak 
 A1  A2    Ak  A1  A2  A1  A3  A1  A2   
 Ak 1  Ak  A1  A2  A3    Ak  2  Ak 1  Ak   
  1k 1 A1  A2    Ak
Пусть множество А состоит из N элементов и имеется n
одноместных отношений (свойств) P1, P2 ,, Pn . Каждый элемент
множества может обладать или не обладать любым из этих свойств.
Обозначим через N i1ik число элементов, обладающих свойствами
Pi1 ,, Pik и, может быть, некоторыми другими. Тогда число N(0)
элементов, не обладающих ни одним из свойств P1 ,, Pn ,
вычисляется по следующей формуле:
N (0)  S 0  S1  S 2    (1) n S n , где

S0  N , Sk   N i1ik (k  1, , n)
1i1ik n
Обобщая, получаем формулу, позволяющую вычислить число
N(r) элементов, обладающих ровно r свойствами 1  r  n  .
n r
N ( r )   ( 1) k Crrk Sr k (1)
k 0

Определим функцию [x] для вещественных чисел как наибольшее


целое число, не превосходящее x. Число [x] называется целой частью
числа x. Для положительных чисел а и b значение функции  b  равно
a 
количеству чисел из множества {1, 2,…, b}, которые делятся на а, т.е.
кратны а.
Пример 2.10. Сколько положительных трехзначных чисел делятся
ровно на одно из чисел 3, 5 или 7?
Обозначим P3 – свойство делимости на 3, P5 – на 5, P7 – на 7. Тогда

22
МУА 2021-2022 Дискретная математика. АЕС

 999   99 
N3     333  33  300,
 3   3 
 999   99 
N5     199  19  180,
 5   5 
 999   99 
N7     142  14  128.
 7   7 
Так как N3,5 – число чисел, делящихся одновременно на 3 и 5, а
наименьшее общее кратное 3 и 5 равно 15, то
 999   99 
N 3, 5     66  6  60 . Аналогично,
 15  15 
 999   99 
N 3, 7     47  4  43,
 21   21
 999   99 
N 5, 7     28  2  26,
 35   35 
 999   99 
N 3, 5 , 7     9  0  9.
105  105 
По формуле (1) находим искомое число чисел:
31
N (1)   (1) k C11 k S1 k  (1) 0 C11 S1  (1)1 C21 S 2  (1) 2 C31 S 3 
k 0

  N 3  N 5  N 7   2N 3, 5  N 3, 7  N 5, 7   3N 3, 5, 7 
 (300  180  128)  260  43  26  3  9  608  158  27  477.

2.4 Рекуррентные соотношения. Возвратные


последовательности
Рекуррентным соотношением называется соотношение вида
ank  F n, an , an1 ,, ank 1  , которое позволяет вычислить все члены
последовательности a0 , a1 , a2 ,, если заданы ее первые k членов.
Пример 2.11. Формула an1  an  d задает арифметическую
прогрессию.
Последовательность a0 , a1,, называется возвратной, если для
всех n и некоторого k выполняется ank  p1ank 1    pk an  0, где
pi = const.
Пример 2.12. Геометрическая прогрессия – это возвратная
последовательность, так как an1  q  an . Следовательно,
выполняется an1  q  an  0.

23
МУА 2021-2022 Дискретная математика. АЕС

Многочлен p( x)  x k  p1 x k 1   pk называется
характеристическим для возвратной последовательности.
Множество всех последовательностей, удовлетворяющих
данному рекуррентному соотношению, называется общим решением.
Описание общего решения имеет аналоги с описанием решения
обыкновенного дифференциального уравнения с постоянными
коэффициентами. Пусть  – корень характеристического уравнения.
Тогда общее решение рекуррентного соотношения можно найти
следующим образом:
1. если i – корень кратности 1 (i=1,…,k), то общее решение имеет
вид an  c11n  c2 2 n  cn nk , где ci = const (i=1,…,k).
2. если  i – корень кратности ri (i=1,…,k), то общее решение имеет

вид an 
n

 ci1  ci2  n    ciri 
 n ri 1  in , где ci j –
i 1
произвольные константы (i=1,…,n, j=1,…,ri).
Зная общее решение рекуррентного соотношения, по начальным
условиям можно найти неопределенные постоянные и тем самым
получить частное решение рекуррентного уравнения с данными
начальными условиями.
Пример 2.13. Найти последовательность {an}, удовлетворяющую
рекуррентному соотношению
an 3  3an  2  an 1  3an  0, a1  3, a2  11, a3  27.
Составим характеристический многочлен p( )  3  32    3.
Для нахождения корней сгруппируем слагаемые
3  32    3  2 (  3)  (  3)  2  1  3.
Составим характеристическое уравнение 2  1  3  0. Его
корнями являются числа 1  1, 2  1, 3  3 . Следовательно, общее
решение рекуррентного соотношения имеет вид:
an  c1  (1)  c2  3  c3 . Используя начальные условия, получим
n n

систему:
 c1  c 2  3c3  3,

 c1  c 2  9c3  11,
c  c  27c  27,
1 2 3
решая которую находим с1=1, с2= 1, с3=1. Таким образом,
an  1  (1) n  3n .

24
МУА 2021-2022 Дискретная математика. АЕС

3 Алгебра логики
3.1 Булевы функции
Функцией алгебры логики или булевой функцией называется
функция n переменных f x1 , x2 ,..., xn , если аргументы функции
являются булевыми переменными (т.е. xi  0,1, i  1,..., n ), и функция
может принимать только два значения: 0 или 1. Таким образом,
булева функция f : 0,1  0,1 . Булевы функции называются также
n

переключательными функциями. Каждая комбинация значений


аргументов булевой функции называется набором. Для функции n
переменных количество разных наборов равно 2n.
Булева функция f x1, x2 ,..., xn  задается таблицей истинности:
x1 x2 x3 … x n-1 xn f(x 1 , x 2 ,…,x n)
0 0 0 … 0 0 f (0,0,…,0,0)
0 0 0 … 0 1 f (0,0,…,0,1)
… … … … … … …
1 1 1 … 1 0 f (1,1,…,1,0)
1 1 1 … 1 1 f (1,1,…,1,1)
Рассмотрим булевы функции одного аргумента. Эти функции
определены на двух наборах. Приведем обозначения и названия этих
функций.
x 0 1 f1 f2
0 0 1 0 1
1 0 1 1 0

Функции 0 и 1 называются соответственно тождественным нулем


и тождественной единицей. Функция f1 называется тождественной
функцией и обозначается через x. Функция f2 называется отрицанием
x и обозначается x .
Рассмотрим часто используемые булевы функции двух
аргументов. Эти функции определены на четырех наборах.

25
МУА 2021-2022 Дискретная математика. АЕС

x1 x2 f3 f4 f5 f6 f7 f8
0 0 0 0 0 1 1 1
0 1 0 1 1 1 0 1
1 0 0 1 1 0 0 1
1 1 1 1 0 1 1 0
Приведем обозначения и названия этих функций. Функция f3
называется конъюнкцией x1 и x2 и обозначается x1x2. Функция f4
называется дизъюнкцией x1 и x2 и обозначается x1  x2 . Функция f5
называется суммой по модулю 2 и обозначается x1  x2 . Функция f6
называется импликацией и обозначается x1  x2 (читается x1 влечет
x2). Функция f7 называется эквивалентностью и обозначается x1  x2
(читается x1 эквивалентно x2). Функция f8 называется штрихом
Шеффера и обозначается x1|x2 (читается не x1 и x2).
С помощью операции суперпозиции из этих элементарных
функций можно построить функции большего числа аргументов.
Заметим, что булеву функцию можно однозначно определить
перечислением всех наборов, на которых она принимает значение 1.
Функция f ( x1 ,, xi1 , xi , xi1 ,, xn ) существенно зависит от
переменной xi, если
f ( x1 ,, xi1 ,0, xi , xi1 ,, xn )  f ( x1 ,, xi1 ,1, xi1 ,, xn ) для любых
значений x1,, xi 1 , xi 1,, xn . В противном случае переменная xi -
фиктивная. Наборы, отличающиеся значением только одной
переменной xi, называются соседними.
3.2 Булева алгебра
Множество булевых функций с операциями  (дизъюнкция),
(конъюнкция), (отрицание) называется булевой алгеброй. Операция
отрицание имеет самый высокий приоритет, затем идет конъюнкция,
а затем дизъюнкция. Рассмотрим основные аксиомы булевой алгебры
(в аксиомах x, y, z могут быть булевыми переменными или
функциями).
1. x  y  y  x
x y  y x коммутативность
2. x  ( y  z )  ( x  y )  z
x  ( y  z)  ( x  y)  z ассоциативность
3. x  x  x
x x  x идемпотентность

26
МУА 2021-2022 Дискретная математика. АЕС

4. x 1  x
x0  0
x 1  1
x0 x свойства констант
5. 1  0
0=1
xx аксиомы отрицания
6. x  y  z  ( x  y )  ( x  z )
x  ( y  z )  x  y  x  z дистрибутивность
7. x  x  1 закон исключения третьего
8. x  x  0 закон противоречия
9. x  y  x  y
x y  x  y законы де Моргана
Если в формуле несколько одинаковых по старшинству операций
следуют друг за другом, то они выполняются слева направо.
Рассмотрим несколько дополнительных законов булевой алгебры,
которые могут быть доказаны с помощью перечисленных выше
аксиом и которые часто используются для эквивалентных
преобразований.
1. x  x  y  x  ( x  y )  x поглощение
2. x  y  x  y  x склеивание

3.3 Нормальные формы


Булевы функции удобнее задавать в виде формул. Одной функции
может соответствовать множество формул, содержащих аргументы
функции, знаки дизъюнкции, конъюнкции и отрицания.
Элементарной дизъюнкцией называется дизъюнкция конечного
множества переменных или их отрицаний, в котором каждая
переменная встречается не более одного раза.
Пример 3.1. x1  x2  x3 , x1
Элементарной конъюнкцией называется конъюнкция конечного
множества переменных или их отрицаний, в котором каждая
переменная встречается не более одного раза.
Пример 3.2. x1 x2 x3 , x2
Дизъюнктивной нормальной формой (ДНФ) называется
дизъюнкция конечного множества попарно различных элементарных
конъюнкций.

27
МУА 2021-2022 Дискретная математика. АЕС

Пример 3.3. x1 x2 x3  x1 x2  x3 , x2  x3
Аналогично, можно определить конъюнктивную нормальную
форму (КНФ), как конъюнкцию конечного множества попарно
различных элементарных дизъюнкций.
Пример 3.4. ( x1  x2 )( x1  ( x2  x3 )) , x2  x3
В примере видно, что x2  x3 является одновременно ДНФ и КНФ.
Для любой функции можно найти ее представление в ДНФ и
КНФ, используя аксиомы алгебры логики.
Пример 3.5. Найти ДНФ, КНФ для функции
f ( x1 , x2 , x3 , x4 )  ( x1 x2  x2 x3 )( x1  x4 )
акс.6
f ( x1 , x2 , x3 , x4 )  ( x1 x2  x2 x3 )( x1  x4 )  x1 x2 x1  x1 x2 x4 
акс.1,3
 x2 x3 x1  x2 x3 x4   x1x2  x1x2 x4  x1 x2 x3  x2 x3 x4 – ДНФ.
акс.6
f ( x1, x2 , x3 , x4 )  ( x1 x2  x2 x3 )( x1  x4 ) 
акс.1
 ( x1x2  x2 )( x1x2  x3 )( x1  x4 ) 
акс.6
 ( x2  x1x2 )( x3  x1x2 )( x1  x4 ) 
акс.1,7
 ( x2  x1 )( x2  x2 )( x3  x1 )( x3  x2 )( x1  x4 ) 
 ( x1  x2 )( x1  x3 )( x2  x3 )( x1  x4 ) – КНФ.
Любая булева функция может иметь много представлений в виде
ДНФ и КНФ. Особое место среди этих представлений занимают
совершенные ДНФ (СДНФ) и совершенные КНФ (СКНФ).
Конституентой единицы K1 набора a1 ,, an называется
конъюнкция всех переменных, образующих этот набор. Причем,
переменная входит в конъюнкцию с отрицанием, если она на данном
наборе равна 0 и без отрицания, если она равна 1. Конституентой
нуля K0 данного набора называется дизъюнкция всех переменных,
образующих этот набор. Переменная входит в дизъюнкцию без
отрицания, если она на этом наборе равна 0 и с отрицанием, если она
равна 1. Совершенная дизъюнктивная нормальная форма функции f –
дизъюнкция K1 тех наборов, на которых функция принимает значение
1. Совершенная конъюнктивная нормальная форма функции f –
конъюнкция K0 тех наборов, на которых функция принимает
значение 0. Представление функции в СДНФ или СКНФ

28
МУА 2021-2022 Дискретная математика. АЕС

единственно. Совершенные формы легко строить по таблице


истинности.
Пример 3.6. Построим СДНФ и СКНФ для функции f, для
которой задана таблица истинности.
x1 x2 x3 f
0 0 0 1
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
Для построения СДНФ рассмотрим все наборы, на которых
функция принимает значение 1, и выпишем для этих наборов все K1:
x1 x2 x3 , x1 x2 x3 , x1 x2 x3 , x1 x2 x3 .
Тогда СДНФ имеет вид:
f ( x1 , x2 , x3 , x4 )  ( x1 x2 x3  x1 x2 x3  x1 x2 x3  x1 x2 x3 ).
Для построения СКНФ рассмотрим все наборы, на которых функция
принимает значения 0, и выпишем для этих наборов K0:
x1  x2  x3 , x1  x2  x3 , x1  x2  x3 , x1  x2  x3 .
Тогда СКНФ имеет вид:
f ( x1 , x2 , x3 , x4 )  ( x1  x2  x3 )( x1  x2  x3 )( x1  x2  x3 )(x1  x2  x3 )
Для построения СДНФ из ДНФ можно домножить элементарную
конъюнкцию на ( xi  xi ) (если переменная xi отсутствует в
элементарной конъюнкции) и применить закон дистрибутивности.
Пример 3.7. Найти СДНФ для функции
f ( x1 , x2 , x3 , x4 )  x1  x2 x3
f ( x1 , x2 , x3 , x4 )  x1  x2 x3 
 x1 ( x2  x2 )( x3  x3 )  ( x1  x1 ) x2 x3 
 ( x1 x2  x1 x2 )( x3  x3 )  x1 x2 x3  x1 x2 x3 
 x1 x2 x3  x1 x2 x3  x1 x2 x3  x1 x2 x3  x1 x2 x3  x1 x2 x3 
 x1 x2 x3  x1 x2 x3  x1 x2 x3  x1 x2 x3  x1 x2 x3 – СДНФ.
Для построения СКНФ из КНФ в элементарную дизъюнкцию, не
содержащую переменную xi, добавляем xi xi и применяем закон
дистрибутивности.
Пример 3.8. Найти СКНФ для функции
f ( x1, x2 , x3 )  ( x1  x2 ) x3

29
МУА 2021-2022 Дискретная математика. АЕС

f ( x1 , x2 , x3 )  ( x1  x2 ) x3  ( x1  x2  x3 x3 )( x1 x1  x2 x2  x3 ) 
 ( x1  x2  x3 )( x1  x2  x3 )( x1  x2  x3 )( x1  x2  x3 ) 
 ( x1  x2  x3 )( x1  x2  x3 ) 
 ( x1  x2  x3 )( x1  x2  x3 )( x1  x2  x3 )( x1  x2  x3 )( x1  x2  x3 )
– СКНФ.
В дальнейшем для представления СДНФ функции f будем
указывать номера K1, на которых функция равна 1. Для определения
набора необходимо перевести номер K1 в двоичное число.
Пример 3.9. Пусть СДНФ функция f определяется следующим
образом.
f ( x1, x2 , x3 , x4 ) = V 1,5,8,11,14
1
Переведем номера K1 в двоичные числа
1  2 0  0  2 3  0  2 2  0  21  1  2 0  00012 ,
5  2 2  2 0  0  2 3  1  2 2  0  21  1  2 0  01012 ,
8  2 3  1  2 3  0  2 2  0  21  0  2 0  10002 ,
11  2 3  21  2 0  1  2 3  0  2 2  1  21  1  2 0  10112 ,
14  2 3  2 2  21  1  2 3  1  2 2  1  21  0  2 0  11102.
Таким образом, f обращается в 1 на наборах
(0,0,0,1), (0,1,0,1), (1,0,0,0), (1,0,1,1), (1,1,1,0).
Аналогично, для представления функции в СКНФ будем
использовать запись с указанием номеров K0, на которых функция
равна 0.
Пример 3.10. f ( x1, x2 , x3 , x4 ) =  2,3,7,11 .
0
Переведем номера K0 в
двоичные числа
2  2  0  2  0  2  1  21  0  2 0  00102 ,
1 3 2

3  21  2 0  0  2 3  0  2 2  1  21  1  2 0  00112 ,
7  2 2  21  2 0  0  2 3  1  2 2  1  21  1  2 0  01112 ,
11  2 3  21  2 0  1  2 3  0  2 2  1  21  1  2 0  10112.
Функция f обращается в 0 на наборах
(0,0,1,0), (0,0,1,1), (0,1,1,1), (1,0,1,1).

30
МУА 2021-2022 Дискретная математика. АЕС

3.4 Минимизация булевых функций в классе ДНФ


Будем получать выражение для булевой функции в виде ДНФ с
минимальным числом вхождений переменных. Будем предполагать,
что функция представлена в СДНФ.
Элементарная конъюнкция называется импликантой f ( x1 ,, xn ) ,
если она равна 0 на тех наборах, на которых f обращается в 0.
Простой импликантой называется импликанта, в которой
отбрасывание любой буквы ведет к получению элементарной
конъюнкции, которая не является импликантой.
Пример 3.11. Найдем импликанты и простые импликанты для
функции f ( x1 , x2 )  x1  x2 . Всего имеется 8 элементарных
конъюнкций с переменными x1, x2. Приведем их таблицы истинности.

x1 x2 x 1 x 2 x1 x2 x1 x2 x1 x2 x 1x 2 x1 x2 x1 x2
0 0 1 1 0 0 0 1 1 0 0
0 1 1 0 1 0 0 1 0 0 1
1 0 0 0 0 1 0 0 1 1 0
1 1 1 0 0 0 1 0 0 1 1

Из таблиц истинности заключаем, что x1 x2 , x1 x2 , x1x2, x1 , x2


являются импликантами функции f. Из них простыми являются x1 и
x2.
Дизъюнкция всех простых импликант называется сокращенной
ДНФ. Сокращенная ДНФ может содержать лишние импликанты,
удаление которых не меняет таблицу истинности. При удалении из
сокращенной ДНФ всех лишних импликант получаем тупиковую
ДНФ. Выбор из всех тупиковых ДНФ формулы с наименьшим числом
вхождений переменных дает минимальную ДНФ.
Известны аналитические и графические способы построения
минимальной ДНФ.
3.5 Метод Квайна получения минимальной ДНФ
Процесс нахождения минимальной ДНФ из СДНФ можно разбить
на следующие этапы: нахождение сокращенной ДНФ, нахождение
всех тупиковых ДНФ, выбор из всех тупиковых минимальной ДНФ.
Этап 1. Нахождение сокращенной ДНФ.
Будем предполагать, что функция задана в СДНФ. Метод Квайна
основан на том, что если выполнить в СДНФ все возможные
неполные склеивания по формуле Ax i  Axi  A  Ax i  Axi , а затем
все поглощения по формуле Axi  A  A , где А – элементарная

31
МУА 2021-2022 Дискретная математика. АЕС

конъюнкция, то получим сокращенную ДНФ. Для удобства


выполнения операции склеивания представим все K1 для наборов из
СДНФ в виде их двоичных номеров и разобьем номера на группы по
количеству единиц. Склеивание возможно между элементами
соседних групп. Элементы, участвующие в склеивании будем
помечать *. Результат склеивания – набор импликант и, возможно,
простые импликанты, не отмеченные символом *. Для наборов,
соответствующих импликантам, на месте отсутствующей
переменной будем писать знак X.
Пример 3.12. Результат склеивания наборов 0110 и 1110 – набор
Х110, который соответствует импликанте x2 x3 x4 .
Далее разобьем полученное множество импликант на группы по
расположению X и произведем все возможные склеивания внутри
каждой группы. Получим новое множество импликант для
дальнейшего склеивания и, возможно, простые импликанты, не
участвовавшие в склеивании. Склеивание продолжаем до тех пор
пока, это возможно. Результат этого этaпа – построение всех простых
импликант, т.е. сокращенной ДНФ.
Этап 2. Нахождение минимальной ДНФ.
По найденным на предыдущем этапе простым импликантам
составляем импликантную таблицу, заголовки строк которой –
простые импликанты, заголовки столбцов – K1 наборов из СДНФ. В
таблице помечаем пересечение строки и столбца, если заголовок
строки является импликантой заголовка столбца. Если в столбце
имеется только одна метка, то импликанта, соответствующая этой
строке, называется существенной, и она обязательно должна
присутствовать в минимальной ДНФ. Включив эту импликанту в
минимальную ДНФ, можно исключить из дальнейшего рассмотрения
строку и все столбцы с пометками для этой импликанты.
Если все пометки i-ой строки имеются также в j-ой строке, то j-я
строка доминирует над i-ой, и i-ую строку можно исключить из
дальнейшего рассмотрения. В частности, из рассмотрения
исключаются строки без пометок.
Если все пометки k-го столбца имеются также в m-ом столбце
таблицы, то m-ый столбец доминирует над k-ым и m-ый столбец
можно исключить из дальнейшего рассмотрения. Исключение
существенных импликант, доминируемых строк и доминирующих
столбцов проводят до тех пор, пока это возможно. Полученная после
таких преобразований таблица называется циклической.
Для выбора минимальной ДНФ в циклической таблице
используют процедуру ветвления. Согласно алгоритму этой
процедуры выбирают столбец с минимальным количеством пометок

32
МУА 2021-2022 Дискретная математика. АЕС

(таких столбцов может быть несколько) и для этих столбцов


выбирают из строк, содержащих пометку в выбранном столбце, ту,
которая содержит максимальное количество пометок и включают ее
в минимальную ДНФ. После этого исключают строку,
соответствующую найденной импликанте, и все помеченные в этой
строке столбцы из дальнейшего рассмотрения. Если появилась
строка, в которой во всех столбцах стоят пометки, то эту импликанту
включают в минимальную ДНФ и на этом процесс нахождения
минимальной ДНФ закончен. В противном случае выполняют
преобразования для получения новой циклической таблицы.
В результате описанных преобразований таблицы должны
получить минимальную ДНФ.
Пример 3.13. Найдем минимальную ДНФ для функции
f ( x1 , x2 , x3 , x4 ) = V1 0,3,4,6,7,9,14,15  .
Выпишем все наборы, на которых функция принимает значение 1.
0  00002 , 3  21  2 0  0  23  0  2 2  1  21  1  2 0  00112 ,
4  2 2  0  23  1  2 2  0  21  0  2 0  01002 ,
6  2 2  21  0  23  1  2 2  1  21  0  2 0  01102 ,
7  2 2  21  2 0  0  23  1  2 2  1  21  1  2 0  01112 ,
9  23  2 0  1  23  0  2 2  0  21  1  2 0  10012 ,
14  23  2 2  21  1  23  1  2 2  1  21  0  2 0  11102 ,
15  23  2 2  21  2 0  11112.
Разобьем наборы на группы по количеству единиц. Первая группа
состоит из наборов, не содержащих единиц: {0000}. Вторая группа
состоит из наборов, содержащих одну единицу: {0100}. Третья
 0011
 
группа состоит из наборов, содержащих две единицы: 0110 .
1001
 
Четвертая группа состоит из наборов, содержащих три единицы:
0111
  . Пятая группа состоит из наборов, содержащих четыре
1110 
единицы: {1111}.
Выполним все возможные склеивания между элементами
соседних групп, помечая наборы, участвующие в склеивании.
0011 *
0000* 0100* 0110 *   1111*
0111 *
1001 1110*
 

33
МУА 2021-2022 Дискретная математика. АЕС

Результаты склеивания – импликанты, являющиеся K1 для


наборов
0Х00, 01Х0, 0Х11, 011Х, Х110, Х111, 111Х.
Импликанта, являющаяся K1 для набора 1001 – простая.
Разобьем все полученные в результате склеивания импликанты по
положению Х на группы.
 X 110
1-я группа:  
 X 111
0 X 00
2-я группа:  
 0 X 11
3-я группа: 01X 0
011X 
4-я группа:  
111X 
Произведем все возможные склеивания внутри каждой группы,
помечая наборы, участвующие в склеивании.
 X 110 * 0 X 00 011X  *
    01X 0  
 X 111 *  0 X 11 111X  *
Результат склеивания – импликанта, соответствующая X11X, и набор
простых импликант, соответствующих 0Х00, 0Х11, 01Х0.
Дальнейшее склеивание осуществить нельзя, поэтому Х11Х
соответствует простой импликанте. Можно переходить к
составлению импликантной таблицы.

0000 0011 0100 0110 0111 1001 1110 1111


1001 v
0Х00 v v
01Х0 v v
0Х11 v v
Х11Х v v v v

Импликанты, соответствующие 0Х00, 0Х11, 1001, X11X –


существенные, поэтому они обязательно входят в минимальную
ДНФ. Удалим строки и столбцы для этих импликант из таблицы.
Вычеркнутся все столбцы, следовательно, на этом процесс поиска
минимальной ДНФ закончен.
Минимальная ДНФ имеет следующий вид:
f ( x1 , x2 , x3 , x4 )  x1 x3 x4  x1 x3 x4  x1 x2 x3 x4  x2 x3

3.6 Нахождение минимальной ДНФ с помощью карт Карно

34
МУА 2021-2022 Дискретная математика. АЕС

Этот метод используется для формул с малым числом


переменных. Карта Карно для функции n переменных содержит 2n
ячеек, каждая из которых соответствует одной из 2n возможных
комбинаций значений n булевых переменных x1, x2, …, xn. Две
соседние ячейки отличаются значением только одной переменной. В
случае функции трех переменных карту Карно можно представить в
следующем виде:
x1 Все ячейки, отмеченные скобкой xi (по строке и
столбцу), представляют наборы с xi =1, а в
x3 неотмеченных строках и столбцах ячейки
соответствуют наборам с xi =0.
x2

В случае четырех переменных карта Карно имеет следующий


вид:

x1

x4
x3

x2
Булева функция может быть представлена на карте Карно
выделением на карте ячеек, соответствующих наборам, на которых
функция принимает значение 1. В этих ячейках будем писать 1.
Незаполненные ячейки соответствуют нулям функции.
Пример 3.14. Заполним карту Карно для функции
f ( x1 , x2 , x3 )  x1 x2 x3  x1 x2 x3  x1 x2 x3  x1 x2 x3
x1
1 1
x3 1 1

x2
2k соседних ячеек, содержащие единицы, называются покрытием
в том случае, если они расположены в виде прямоугольника или
квадрата. При этом считается, что ячейки на противоположных
концах строки или столбца являются соседними, как будто карта
расположена на торе. Каждое покрытие соответствует импликанте.
Покрытие, состоящее из двух ячеек, соответствует произведению
всех переменных кроме одной, значением которой отличаются эти
ячейки. Покрытие из четырех ячеек соответствует произведению, в

35
МУА 2021-2022 Дискретная математика. АЕС

котором отсутствуют две переменные и т.д. Чем больше ячеек в


покрытии, тем проще импликанта. Для получения простой
импликанты выбирается покрытие наибольшего размера.
Для построения минимальной ДНФ по карте Карно следуют двум
правилам.
1. Выбирают покрытия наибольшего размера, содержащие ячейки,
которые не могут быть ни в каком другом покрытии.
2. Для оставшихся ячеек выбирают покрытие наибольшего размера.
Пример 3.15. Найдем минимальную ДНФ для функции.
f ( x1, x2 , x3 , x4 ) = V 0,1,2,3,4,6,7,8,9,11,15
1
Выпишем двоичные номера всех K1:
0000, 0001, 0010, 0011, 0100, 0110, 0111, 1000, 1001, 1011, 1111.
Построим карту Карно и покроем все единицы на карте Карно
покрытиями наибольшего размера.
x1 x1

1 1 1 1 1 1
1 1 x4 1 1 x4
1 11 1 1 11 1
x3 x3
1 1 1 1
x2 x2
Порядок построения минимальной ДНФ будет таким:
- Выбираем покрытие наибольшего размера для ячейки,
соответствующей x1x2x3x4. Это будет импликанта x3x4.
- Выбираем покрытие для ячейки x1 x2 x3 x4 . Это будет импликанта
x 2 x3 .
- Выбираем покрытие для ячейки x1 x2 x3 x4 . Это будет импликанта
x1 x4 .
Больше непокрытых ячеек не осталось, следовательно, минимальная
ДНФ имеет вид x3 x4  x2 x3  x1 x4 .

36
МУА 2021-2022 Дискретная математика. АЕС

3.7 Булева алгебра и переключательные схемы


Первый опыт применения булевой алгебры был связан с
релейными цепями. Хотя эти цепи уже не используются в ЭВМ, они
находят применение в ряде систем управления движением.
Контактная цепь – устройство из проводов и контактов,
связывающих два полюса. Любой контакт может быть либо замкнут,
либо разомкнут. Контакты будем обозначать x1, x2, x3,…
0, если контакт разомкнут
xi  
1, если контакт замкнут.
Функция, реализуемая контактной цепью, принимает значение 1,
если контур между двумя полюсами замкнут, и 0 – в противном
случае. Основные операции булевой алгебры: конъюнкцию,
дизъюнкцию и отрицание можно реализовать следующими
контактными цепями.

Схема Булева операция

x2
x1  x2
x1

x1 x2
x1x2

x1 x1

Соответствие между схемой и булевой операцией легко


проверить, сравнив работу схемы с таблицей истинности булевой
функции. Операции булевой алгебры представляют цепь без указания
направления цепи. Это согласуется с тем, что релейные контакты
обладают двусторонней проводимостью. Для сложных контактных
цепей можно построить более простую реализацию, упростив
исходную булеву функцию с помощью аксиом булевой алгебры или
применив один из методов минимизации булевой функции.

37
МУА 2021-2022 Дискретная математика. АЕС

Пример 3.16. Упростить схему до пяти контактов.

x1 x2
x1
x1 x3

x1 x2 x3

Составим булеву функцию для исходной цепи и упростим ее.


f ( x1 , x2 , x3 , x4 )  ( x1 x2  x1 x3 ) x1  x1 x2 x3  x1 x1 x2  x1 x1 x3  x1 x2 x3 
 0  x1 x3  x1 x2 x3  x1 x3  x1 x2 x3 .
По упрощенной формуле составим упрощенную цепь.

x1 x3

x1 x2 x3

Большинство электронных переключательных элементов


обладают односторонней проводимостью. Такие элементы реализуют
операции булевой алгебры. Они имеют входы, на которые могут
подаваться 0 или 1, и выход, на котором может появляться 0 или 1.
Такие элементы называются логическими.

Логический элемент Булева операция


x1
x2 f

элемент «и» x1x2


x1
f
x2

элемент «или» x1  x2

x f

элемент «не» x1

38
МУА 2021-2022 Дискретная математика. АЕС

Входы одних логических элементов можно подсоединить к


выходам других элементов и получить логическую сеть. Логическая
сеть реализует некоторую булеву функцию. В случае контактных
цепей выражение для функции с наименьшим числом вхождений
переменных дает реализацию цепи с наименьшим количеством
контактов. Простота логической сети может определяться как числом
логических элементов, так и числом входов логических элементов.
Кроме того, логические элементы характеризуются запаздыванием,
поэтому быстродействие сети пропорционально числу ступеней сети
(т.е. максимальному числу логических элементов, через которые
проходит входной сигнал без учета инверторов). Представление
функции в ДНФ дает двухступенчатую быстродействующую
реализацию. Поэтому, для упрощения логической сети можно
использовать минимизацию булевой функции методом Квайна, но
при этом ввести понятие «стоимости» простой импликанты. В задаче
минимизации числа логических элементов стоимость простой
импликанты, содержащей две и более переменные, принимается
равной 1, а стоимость простой импликанты из одной переменной – 0
(т.к. для ее реализации не требуется логический элемент «и»). В
задаче минимизации общего числа входов логических элементов
стоимость простой импликанты складывает из входов логического
элемента «и», реализующего импликанту, и входов логического
элемента «или». При построении минимальной ДНФ по множеству
простых импликант, среди простых импликант выбирается
множество с суммарной минимальной стоимостью простых
импликант.
4 Теория графов
Часто бывает полезно и наглядно изобразить некоторую ситуацию
в виде рисунка, состоящего из точек (вершин), представляющих
основные элементы ситуации и линий (ребер), отражающих связи
между элементами. Такие рисунки называются графами.
Граф может изображать сеть улиц в городе (вершины –
перекрестки, улицы – ребра), блок-схемы программ (вершины –
блоки, ребра – переходы), электрические цепи, географические карты
и т.д. Более точно, граф определяется как упорядоченная пара (V, E),
где V – непустое множество вершин, E  V 2 - множество ребер. Граф
будем обозначать G. Число вершин графа называется его порядком и
обозначается V , число ребер обозначается как E . Вершины u и v
называются смежными, если существует ребро их соединяющее.
Вершина v и ребро e инцидентны, если v является концом е.

39
МУА 2021-2022 Дискретная математика. АЕС

Пример 4.1.
Вершины v1 и v2 являются смежными,
v1 v2 вершина v1 инцидента ребрам (v1, v2) и (v1, v3).
V  v1 , v2 , v3 , v4 , .
E  (v1 , v2 ), (v1 , v3 ), (v2 , v3 ), (v3 , v4 )}
v3 v4

Граф называется полным, если любые две его вершины смежны.


Такие графы обозначаются Kn.
Пример 4.2.

K3 K4 K5

Различные ребра графа могут быть инцидентны одной и той же


паре вершин, в этом случае они называются кратными, а сам граф –
мультиграфом. Ребро может соединять вершину саму с собой, тогда
такое ребро называется петлей, а граф – псевдографом. В некоторых
задачах инцидентные ребру вершины рассматриваются в
определенном порядке, тогда ребру приписывается направление от
одной вершины к другой, и ребро называется дугой. Граф, все ребра
которого являются дугами, называется орграфом. Иногда ребрам и
дугам графа приписывают некоторые числа, такой граф называется
взвешенным.
Граф называется помеченным, если всем его вершинам присвоены
некоторые метки 1,2,…,n. Степенью вершины v называется число
инцидентных ей ребер. Степень вершины обозначается deg v.

Пример 4.3.
v1

v4
degv1   3, degv4   1
v2
v3

40
МУА 2021-2022 Дискретная математика. АЕС

Лемма ("о рукопожатиях"). Сумма степеней всех вершин графа


равна удвоенному числу его ребер, т.е.
n

 deg(v)  2 E
vG

Последовательность степеней вершин графа, записанных в каком-


либо порядке, называется степенной последовательностью.
Пример 4.4.
Найдем степенную последовательность для графа G.

v1 v3

v2 v4 v5

Выпишем степени всех вершин графа в соответствии с их


номерами (2,2,3,2,1).

4.1 Способы задания графов


Пусть G – помеченный граф с n вершинами и m ребрами.
Определим матрицу смежности A(G) следующим образом:
1, если вершины vi и v j  смежные
aij  
0, иначе
Матрица смежности квадратная, размера n  n.
Пример 4.5.
0 1 1 0 0
1 2  
1 0 1 0 0
4
3 A(G )   1 1 0 1 0
 
5 0 0 1 0 1
0 0 
 0 0 1

Можно заметить, что матрица смежности является симметричной,


и количество единиц в каждой строке равно степени вершины,
которой соответствует эта строка. По матрице смежности легко
построить графическое представление графа.
Пример 4.6. Построить граф по матрице смежности

41
МУА 2021-2022 Дискретная математика. АЕС

0 0 0 1 0 0
  v1 v2 v3
0 0 1 1 1 0
0 1 0 0 0 1
A(G )   
1 1 0 0 1 0
0 1 0 1 0 1
  v4 v5 v6
0 0 
 0 1 0 1

Можно определить матрицу инцидентности I(G), имеющую n


строк и m столбцов, элементы которой задаются следующим образом:
1, если вершина vk инцидентна ребру еl
ik l  
0, иначе

Пример 4.7. Рассмотрим граф из примера 4.6, обозначив ребра.


1 0 0 0 0 0 0
v1 v2 e5 v3  
 0 1 0 1 1 0 0 
e2  0 0 0 0 1 0 1
e1 e4 e7 I (G )   
 1 1 1 0 0 0 0 
e3  0 0 1 1 0 1 0
v4 v5 e6 v6  
0 0 0 0 0 1 1
 

В каждой строке матрицы инцидентности только два элемента


отличные от 0 (или один, если ребро является петлей). Поэтому такой
способ описания оказывается неэкономным. Отношение
инцидентности можно задать также списком ребер графа. Каждая
строка этого списка соответствует ребру, в ней записаны номера
вершин, инцидентных ему.
Пример 4.8. Рассмотрим граф из примера 4.7. Список ребер имеет
вид:
e1 v1 ,v4  , e2 v2 , v4  , e3 v4 , v5  , e4 v2 ,v5  , e5 v2 ,v3  , e6 v5 ,v6  , e7 v3 , v6  .
По списку ребер графа легко построить матрицу инцидентности,
т.к. каждое ребро этого списка соответствует столбцу матрицы, а
номера вершин в каждом элементе списка – это номера элементов
строки матрицы инцидентности, которые равные 1.
Граф может быть представлен различными способами. Иногда не
легко понять, одинаковы ли графы, изображенные разными
чертежами или разными матрицами. Графы, отличающиеся только
нумерацией вершин, называются изоморфными. Перенумерация
задается строкой 1 , 2 ,, n новых номеров вершин, расположенных

42
МУА 2021-2022 Дискретная математика. АЕС

в исходном порядке. Новая матрица смежности получается в


результате перемещения каждого элемента aij в  i строку и  j столбец,
т.е. в результате перестановки ( 1 , 2 ,, n ) строк и столбцов
исходной матрицы. Можно выполнить все возможные перестановки
строк и столбцов для того, чтобы убедиться в неизоморфности
графов, но это потребует n! перестановок, что достаточно трудоемко.
4.2 Маршруты, цепи, циклы
Маршрутом от вершины u к вершине v или (u,v) маршрутом в
графе G называется всякая последовательность вида
u  v0 , e1 , v1 , e2 ,, en , vn  v ,
где ek – ребро, соединяющее вершины vk 1 и vk , k  1,2,, n. В случае
орграфа vk 1 – начало ребра еk , a vk – его конец. При этом вершину u
называют началом маршрута, а вершину v – его концом. В маршруте
некоторые вершины и ребра могут совпадать. Маршрут можно
задавать последовательностью вершин v0 , v1 ,, vn , а также
последовательностью ребер e1 , e2 ,, en . Число ребер в маршруте
называется его длиной. Маршрут называется цепью, если в нем нет
совпадающих ребер, и простой цепью – если дополнительно нет
совпадающих вершин, кроме, может быть, начала и конца цепи. Если
начало цепи (простой цепи) совпадает с ее концом, то такая цепь
называется циклом (простым циклом). Граф без циклов называется
ациклическим.
Пример 4.9.
(1,2,4,7) – простая цепь;
1 2 (1,2,4,7,8,4) – цепь, не являющаяся
простой;
3 4 5 6 (1,2,4,7,8,4,2) – маршрут, не являющийся
цепью;
(1,2,4,7,8,4,1) – цикл, не являющийся
7 8 простым;
(1,2,4,1) – простой цикл.
Граф называется связным, если любые две вершины u и v в нем
можно соединить (u,v) маршрутом. Легко видеть, что отношение
связности на множестве вершин является отношением
эквивалентности. Данное отношение разбивает множество вершин
графа на классы, объединяющие вершины, которые можно связать
друг с другом маршрутом. Такие классы называются компонентами
связности. Связный граф имеет одну компоненту связности.
Пример 4.10.

43
МУА 2021-2022 Дискретная математика. АЕС

Граф на рисунке имеет две


v2 v5
v1 компоненты связности.
v6
v4 v3 v7

4.3 Эйлеровы графы


Цикл в графе называется эйлеровым, если он содержит все ребра
графа. Связный граф, в котором существует эйлеров цикл, также
называется эйлеровым. Эйлеровый граф можно нарисовать не
отрывая карандаша от бумаги.
Пример 4.11.

сабли Магомета звезда Давида

Теорема Эйлера. Связный граф является эйлеровым тогда и


только тогда, когда степени всех его вершин четные.
Для нахождения эйлеровой цепи в связной графе, который имеет
вершины только четной степени, используют алгоритм Флери. Этот
алгоритм использует два правила:
1. Стартуем из произвольной вершины графа и идем по ребрам,
включая эти ребра в эйлерову цепь и удаляя их из графа.
2. Выбираем в очередной вершине путь по перешейку только в том
случае, если нет пути по циклу. Перешейком называется ребро, не
принадлежащее никакому циклу.
Пример 4.12.
v5
e1
v1 e2
v4
e5
e7 e6 e4 e3

v2 e8 v3
Начать построение эйлерового цикла можно с любого ребра графа.
Начиная с е1, получим цикл
v1, e1, v5, e2, v4 ,e3, v3 ,e4 , v4 ,e5 ,v1,e6 ,v3, e8, v2, e7 ,v1.
В данном случае сразу получили эйлерову цепь. Если в графе
остаются ребра, которые нельзя использовать для продолжения

44
МУА 2021-2022 Дискретная математика. АЕС

имеющегося пути, то следует начать строить простой замкнутый цикл


из уже пройденной вершины и инцидентного ей ребра, если
последнее ранее не использовалось.
4.4 Задача поиска минимального остова графа
Эта задача возникает при проектировании линий электропередач,
трубопроводов, дорог и т.д., когда требуется заданные центры
соединить некоторой системой каналов связи таким образом, чтобы
любые два центра были связаны непосредственно или через другие
каналы, и чтобы общая длина (стоимость) каналов связи была
минимальной.
Остовом графа называется связный подграф без циклов,
содержащий все вершины исходного графа. Подграф содержит часть
или все ребра исходного графа. Задача о минимальном остове
формулируется следующим образом: во взвешенном связном графе
найти остов минимального веса. Рассмотрим алгоритм Краскала
решения этой задачи. В алгоритме используются два правила:
1. Первое ребро остова – ребро минимального веса в исходном графе.
2. Если граф Ti уже построен (i<n-1), то новый граф Ti+1 получается
из графа Ti присоединением ребра ei+1 , имеющего минимальный
вес среди ребер, не входящих в Ti, и не составляющего циклов с
ребрами из Ti.
Пример 4.13. Найти минимальный остов во взвешенном графе.

2 v2 1
v1 v5
1 3 8
4
5
v3 v4
Построение остова начнем с ребра (v1, v3). Порядок присоединения
ребер к остову:
(v1, v3), (v2, v5), (v1, v2), (v4, v5).
2 v2 1
v1 v5
1 4

v3 v4
Вес остова W=1+2+1+4=8.

45
МУА 2021-2022 Дискретная математика. АЕС

4.5 Задача поиска кратчайших расстояний между всеми


парами вершин графа
Пусть имеется граф G со множеством вершин V={v1,…,vn}.
Обозначим через d i( mj ) длину кратчайшего пути из vi в vj с
промежуточными вершинами во множестве {v1,…,vm}. Рассмотрим
алгоритм Флойда-Уоршалла нахождения матрицы D, элементы
которой – кратчайшие пути между всевозможными парами вершин
графа G. Алгоритм использует три правила:
1. d i( 0j )  ai j , где aij – вес дуги, соединяющий вершины vi и vj.
2. d i( mj1)  min d i( mj) , d i(,mm)1  d m( m1), j  .
3. Длина кратчайшего пути из вершины vi в вершину vj
d vi , v j   di(jn ) .
Если V (G )  n , то алгоритм Флойда-Уоршалла содержит n шагов.
Если из вершины vi нет дуги в вершину vj, то считаем вес дуги равным
. Для ребер, являющихся петлями, считаем вес дуги равными 0, т.е.
в матрице D0 зануляем диагональ.
Пример 4.14. Найдем матрицу кратчайших расстояний для графа.

v2
3
8 2
v1 5
2
v3

v1 v2 v3
 0 8 5  v1
 
D   3 0   v2
(0)

 2 0 v
  3
Элементы матрицы D(1) находим по правилу d i(1j)  min d i( 0j ) , d i(10)  d1( 0j ) 
 0 8 5
 
. Получаем D (1)   3 0 8  .
  2 0
 
Элементы матрицы D(2) находим по правилу d i( 2j )  min d i(1j) , d i(21)  d 2(1j) .
 0 8 5
 
D ( 2)
  3 0 8
 5 2 0
 

46
МУА 2021-2022 Дискретная математика. АЕС

Элементы матрицы D(3) находим по правилу d i( 3j )  mind i( 2j ) , d i(32)  d 3( 2j ) .


0 7 5
 
D ( 3)   3 0 8 , D  D ( 3) .
5 2 0
 
5 Конечные автоматы
5.1 Определение, способы представления конечного
автомата
Конечный автомат содержит управляющее устройство, входной и
выходной каналы. Для управляющего устройства выделено
начальное состояние q0. Работа автомата осуществляется в
дискретные такты времени t= 1, 2, 3, …. На входной канал автомата
последовательно поступают символы x1, x2, …, при этом
управляющее устройство изменяет свое состояние, а на выходе
появляются выходные символы y1, y2, …. Работа автомата
определяется системой команд, каждая из которых имеет вид
qixr  qjys, где qi, qj – внутренние состояния автомата, xr – входной
символ, ys – выходной символ. Обычно требуют, чтобы выполнялось
условие однозначности, т.е. не может быть двух команд с
одинаковыми левыми и различными правыми частями. Такой автомат
называется детерминированным. Выходной символ,
вырабатываемый автоматом, зависит не только от входного символа
на текущем такте времени, но и от внутреннего состояния. В свою
очередь, внутреннее состояние автомата зависит от входных
символов, поступивших в предыдущие такты времени. В этом смысле
автомат обладает памятью.
Дадим формальное определение конечного автомата. Конечный
автомат M=(Q, X, Y,  , ), где Q={q0, q1, …, qk } – конечное
множество внутренних состояний автомата, X={x1, x2, …, xn} –
множество входных символов (входной алфавит), Y={y1, y2, …, ym} –
множество выходных символов (выходной алфавит),
(q,x) : QX  Q – функция переходов автомата из одного состояния
в другое, (q,x) : QX  Y – функция выходов. Состояние автомата
соответствует памяти о прошлом, позволяя устранить время как
явную переменную. Автомат обычно задают таблицей переходов, в
заголовках строк которой стоят все возможные состояния автомата, в
заголовках столбцов – все символы входного алфавита, а на
пересечениях строк и столбцов – следующее состояние автомата и
выходной символ.

47
МУА 2021-2022 Дискретная математика. АЕС

Пример 5.1. Рассмотрим таблицу переходов некоторого автомата


с входным алфавитом X={a, b}, выходным алфавитом – Y={b, c},
множеством состояний Q={q1, q2, q3}.

a b
q1 q2 , c q3 , c
q2 q1 , b q2 , c
q3 q2 , b q1 , b

Пусть на вход автомата поступает последовательность символов


a, a, b, a. Рассмотрим работу автомата:
q1  q2 , c 
a
 q1 , b 
a
 q3 , c 
b
 q2 , b .
a

На выходе автомата получится последовательность c, b, c, b.


Автомат можно также наглядно задать с помощью
ориентированного мультиграфа, называемого графом переходов
состояний. Вершины этого графа соответствуют состояниям, дуга
ведет из вершины qi в вершину qj, если  (qi, xr)=qj и  (qi, xr)=ys,
причем каждой дуге приписана пара xr, ys. Кратные дуги из вершины
qi в вершину qj заменяются одной дугой, которой приписаны
несколько пар входной – выходной символы.
Пример 5.2. Построим граф переходов состояний для примера
5.1.
b,c

a,c q2
a,b
a,b
b,c
q1
q3
b,b

Не любой ориентированный мультиграф, все дуги которого


помечены подобным образом, соответствует некоторому автомату.
Для соответствия автомату в каждой вершины qi должны
выполняться следующие два условия:
1) для любого входного символа xr имеется дуга, выходящая из qi и
помеченная xr (условие полноты);
2) любой символ xr встречается только на одной дуге, выходящей из
qi (условие детерминированности).

48
МУА 2021-2022 Дискретная математика. АЕС

Пример 5.3. Построим граф переходов для двоичного сумматора,


который по данным двум n-разрядным двоичным числам вычисляет
их сумму. Входные данные начинаются с битов с наименьшими
значениями, пары битов читаются справа налево.

11,0
01,0
10,0
01,1
q q 11,1
10,1
0 1
00,0 00,1
Двойная окружность на вершинах означает, что эти состояния –
заключительные. Пусть суммируются числа 011010 и 001100. Тогда
на вход автомата поступает последовательность 00, 10, 01, 11, 10, 00.
Рассмотрим работу автомата:
q0 
00
q0 ,0 
10
q0 ,1 
01
q0 ,1 

11
q1 ,0 
10
q1 ,0 
00
q0 ,1 .
На выходе автомата получим последовательность 0, 1, 1, 0, 0, 1.
5.2 Минимизация конечных автоматов
Два автомата называются эквивалентными, если они для любой
последовательности символов из входного алфавита X выдают
одинаковую последовательность символов из выходного алфавита Y.
Переход от автомата M к эквивалентному автомату называется
эквивалентным преобразованием автомата M. Можно ставить много
задач о поиске автоматов, эквивалентных данному и обладающих
заданными свойствами. Наиболее изученной является задача о
минимизации числа состояний автомата: среди всех автоматов,
эквивалентных автомату M, найти автомат с наименьшим числом
состояний (минимальный автомат).
Пусть имеется автомат M=(Q, X, Y,  , ). Рассмотрим алгоритм
Мили поиска минимального автомата. На каждом шаге алгоритма
будем строить некоторое разбиение множества состояний Q на
классы, причем разбиение на каждом шаге алгоритма будет
получаться расщеплением некоторых классов предыдущего
разбиения.
Шаг 1. Два состояния q и q относим в один класс C1j, если для
каждого символа входного алфавита совпадают выходные символы
для этих состояний, т.е. (q, x)= (q,x).
Шаг i+1. Два состояния q и q из одного класса Cij относим в один
класс Ci+1,j, если для каждого символа входного алфавита
осуществляется переход из состояний q и q в состояния,
принадлежащие одному и тому же классу Cis, т.е.  (q, x) и  (q,x)

49
МУА 2021-2022 Дискретная математика. АЕС

принадлежат одному и тому же классу. Если (i+1)-ый шаг не изменяет


разбиения, то алгоритм заканчивается. Каждый класс соответствует
состоянию минимального автомата.
Пример 5.4. Построим минимальный автомат для автомата,
заданного следующей таблицей переходов.
Шаг 1. Разбиваем множество состояний на два
0 1 класса по выходным символам:
1 3,0 2,1
1, 3, 5, 6 и 2, 4.
2 1,1 6,0
3 5,0 2,1 Шаг 2. Рассмотрим переходы в новые
4 5,1 6,0 состояния для класса 1, 3, 5, 6 при входном
5 5,0 4,1 символе 0:
6 2,0 1,1 1, 3, 5, 6  
0
3, 5, 5, 2.
Состояния 3 и 5 принадлежат одному классу, а
состояние 2 – другому. Следовательно, делаем разбиение класса
1, 3, 5, 6 на два новых класса: 1, 3, 5 и 6. После этого шага алгоритма
имеем три класса: 1, 3, 5; 6 и 2, 4.
Шаг 3. Рассмотрим переходы в новые состояния для класса 1, 3, 5 при
входном символе 1: 1, 3, 5  
1
2, 2, 4. Так как состояния 2 и 4
находятся в одном классе, то нового разбиения на этом шаге не
получим.
Шаг 4. Рассмотрим переходы в новые состояния для класса 2, 4 при
входном символе 0: 2, 4  0
1, 5. Так как состояния 1 и 5 находятся
в одном классе, то нового разбиения на этом шаге не получим.
Шаг 5. Рассмотрим переходы в новые состояния для класса 2, 4 при
входном символе 1: 2, 4  1
6, 6. Нового разбиения на этом шаге не
получим.
Окончательно, разбиение на классы имеет вид: 1, 3, 5; 6; 2, 4. Таблица
переходов минимального автомата будет иметь следующий вид:
0 1
1 1,0 3,1
2 3,0 1,1
3 1,1 2,0

Состоянию 1 минимального автомата соответствует класс 1, 3, 5,


состоянию 2 – класс 6, состоянию 3 – класс 2, 4.

50
МУА 2021-2022 Дискретная математика. АЕС

Дискретная математика

Программа, методические указания и


задания для контрольной работы

51

Вам также может понравиться