Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Дискретная математика в программировании. Практикум. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
1 Мб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РФ

ФГБОУ ВО «ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ

УНИВЕРСИТЕТ ИНЖЕНЕРНЫХ ТЕХНОЛОГИЙ»

С. Н. ЧЕРНЯЕВА, Л. А. КОРОБОВА, И. С. ТОЛСТОВА

ДИСКРЕТНАЯ МАТЕМАТИКА В ПРОГРАММИРОВАНИИ

Утверждено редакционно-издательским советом университета

в качестве учебного пособия

ВОРОНЕЖ

2023

УДК 330.131.7 ББК В18я7+З973.2-018я7

Ч-49

Научный редактор профессор Д. В. АРАПОВ

Р е ц е н з е н т ы:

зав. кафедрой вычислительной техники и информационных систем Воронежского лесотехнического университета им. Д.С. Морозова доц. В. В. ЛАВЛИНСКИЙ;

к. т. н. Н. В. АКАМСИНА (Воронежский государственный технический университет)

Печатается по решению редакционно-издательского совета

Воронежского государственного университета инженерных технологий

 

Черняева, С. Н.

 

 

 

 

 

Дискретная

математика

в

программировании. Практикум :

Ч-49

учеб. пособие /

С. Н. Черняева, Л. А. Коробова, И. C. Толстова;

 

Воронежский

государственный

университет

инженерных

 

технологий. - Воронеж: ВГУИТ, 2023. – 59 с. – Текст:

 

непосредственный.

 

 

 

 

 

ISBN 978-5-00032-623-7

 

 

 

 

 

Учебное пособие

разработано

в

соответствии с требованиями ФГОС ВО

подготовки выпускников

по направлениям

09.03.02

- «Информационные

системы

и технологии», 09.03.01 – «Информатика и вычислительная техника». Оно предназначено для закрепления теоретических знаний дисциплин цикла1. БВ пособии рассмотрены примеры решения задач теории множеств, бинарных отношений, алгебры логики и теории графов. Приведены задания для самостоятельного решения.

Ч

140202000 – 04

Без объявл.

УДК 330.131.7

ОК2(03)-2023

ББК В18я7+3973.2-018я7

 

 

ISBN 978-5-00032-623-7

© Черняева С. Н., Коробова Л. А., Толстова И. С., 2023

© ФГБОУ ВО «Воронеж. гос. ун-т инж. технол.», 2023

Оригинал-макет данного издания является собственностью Воронежского государственного университета инженерных технологий, его репродуцирование (воспроизведение) любым способом без согласия университета запрещается.

2

Практическая работа № 1. Основные понятия теории множеств

Цель

работы:

получение навыков задания

множеств

в ЭВМ и выполнения операций с ними.

 

 

Множеством

Теоретические сведения

 

называется

совокупность

некоторых

предметов,

объединенных

общим

признаком. Элементы

множества - это те предметы, из которых состоит множество. Пусть имеется множество А, элементом которого является

предмет а, это записывается как А={а}. Например, В={1,2, 3}. Если какой-то элемент а принадлежит множеству А, то это

обозначается аÎА, а если b не принадлежит А, то - bÏА. Например, пусть А - множество четных натуральных чисел, тогда

6ÎА, а 3ÏА.

Пусть имеется два множества А и В, причем все элементы множества А принадлежат множеству В, т.е. если хÎА, то хÎB. В этом случае говорят, что множество А включено в множество В. Обозначается: АÍВ (Í - символ нестрогого включения, т.е.

возможно совпадение множеств). Множество А совпадает со

множеством В (А = В), если все элементы множества В являются

 

элементами множества В и все элементы множества В являются

 

элементами множества А. Это можно записать в виде

 

 

ÍВ и ВÍА) <=> (А = В).

 

Множество А строго включено в множество, еслиВ все

 

элементы множества А принадлежат множеству В, но не все

 

элементы множества В принадлежат множеству А.

 

Пример: А = { 1, 2, 3 }, В = { 0, 1, 2, 3 }, АÌВ.

 

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

 

1.

Перечислением

элементов, т.е. в

фигурных скобках

дается

полное перечисление элементов данного множества.

Например : N= {1,2,...,n,...} - множество натуральных чисел.

 

2. С помощью указания характерного свойства(указание

 

свойства,

которым

обладают

только

элементы

данного

множества). Символически это записывается в видеA={x | P(x)}

3

аmin
аmin

и читается A есть множество

всех

элементов, обладающих

свойством P(x).

 

 

 

 

 

При

задании

множеств

вторым

способом

возможны

различные

противоречия и

парадоксы. Рассмотрим примеры

таких парадоксов.

1)Парадокс парикмахера: в городе жил парикмахер, который брил всех, кто не брился сам. Кто же брил парикмахера?

2)Пусть имеем натуральное число 11218321 - одиннадцать миллионов двести восемнадцать тысяч триста двадцать один. Это число можно описать с помощью восьми слов. Пусть А - множество натуральных чисел, которые нельзя определить с помощью фразы, имеющей меньше 20 русских слов. Обозначим

- наименьшее число из множества А, причем аminÎA. Число можно определить следующим образом: наименьшее натуральное число, которое нельзя определить с помощью фразы, имеющей менее двадцати слов. В этой фразе 14 слов. Значит, аmin

можно определить с помощью фразы, содержащей менее 20 слов.

 

Тогда получается, что аminÏ А.

накопилось

много

подобных

К

настоящему времени

примеров, когда определение множества оказывалось внутренне

 

противоречиво. Выяснение условий, при

которых

это

может

иметь

место, потребовало

специальных

 

исследований,

составивших предмет математической логики и выходящих за

рамки собственно теории множеств. Поэтому в данном пособии

 

мы не станем касаться спорных случаев и будем рассматривать

лишь

множества,

которые

определяются

точно

и

без

противоречий.

 

 

 

 

 

 

 

В теории множеств имеется специальное множество,

называемое пустым

множеством(Æ), которое не содержит ни

 

одного элемента. Пустое множество по определению содержится

 

в любом

множестве А (ÆÎА).

Это

понятие

 

вводится

из

следующих соображений. Задавая множество вторым способом

 

не всегда заранее можно быть уверенным, существуют ли

 

элементы,

ему принадлежащие. Например, можно говорить о

 

множестве четырехугольников на плоскости, у которых все углы

 

прямые, а

диагонали

не равны. Только знания основ

геометрии

 

4

позволяют

убедиться, что

таких

четырехугольников

не

существует и, следовательно, это множество пусто.

 

Большинство утверждений теории множеств связано с равенством двух множеств и включением одного множества в

другое.

Поэтому

надо

детально

разобраться

в

методах

доказательства этих фактов.

 

 

 

 

1.

Доказательство

включения

ÍАВ.

Для этого

нужно

 

доказать, что любой элементx, принадлежащий множеству А,

 

одновременно является элементом множества В, т.е.

 

 

 

 

(x Î А) => (x Î В).

 

 

 

2. Доказательство равенства А = В. Оно сводится к

 

доказательству двух включений АÍВ и ВÍА.

 

 

 

Пример 1. Докажем

следующую

теорему. Для

любых

 

множеств А, В и С выполняется закон транзитивности нестрогого

 

включения, т.е. если АÍВ и ВÍС, то из этого следует, что АÍС.

 

Доказательство. Пусть x - любой элемент множества А,

 

(xÎА), тогда в силу условия АÍВ, по

определению нестрогого

 

включения, элемент

х принадлежит множеству В(хÎB). После

 

доказательства этого факта, аналогично, используя условие ВÍС, можно доказать, что х принадлежит С (хÎС).

В качестве исходного допущения мы приняли, что x – любой элемент из . АИз этого допущения при выполнении

условий а) и б) получено следствие хÎС. По

определению

нестрогого включения это означает ÍСА, что и

требовалось

доказать.

Пример 2. Пусть А={1,6}, В ={х | х2-7х+6=0}. Последнее читается как В является множеством элементов х, для которых

выполняется

условие 2 х- 7х + 6 = 0. Включение АÍВ

доказывается

подстановкой элементов множества А в это

условие. Для доказательства обратного включения ÍВА нужно найти все корни уравнения и убедиться, что они равны 1 и 6, т.е.

принадлежат

.А Выполнение

обоих

нестрогих

включений

означает равенство множеств А и В.

 

 

 

5

Над множествами определены следующие операции.

1.Объединение. Пусть А и В– произвольные множества. Их объединением называется множество С = А È В, которое состоит из всех элементов, принадлежащих хотя бы одному из множеств А или В.

2.Пересечение. Пересечением множеств А и В называется множество , С состоящее из элементов, одновременно

принадлежащих А и В. Обозначается так: C = A Ç B.

3.Разность. Разность множеств А и В – это множество С (С

=А \ В), состоящее из элементов множества А, не

принадлежащих множеству В. Если В Í А, то разность С = А \ В называется дополнением В до А. Считается, что все множества включены в некоторое множествоU, которое называют

универсальным множеством (универсумом). В этом случае дополнение какого-либо множества А доU обозначается С(А) или A .

4. Симметричная разность. По определению симметричная разность двух множеств А и В – это множество

С = А D В = (А \ В) È (В \ А).

Перечисленные операции удобно изображать графически с помощью т.н. диаграмм Вена.

Основные свойства операций.

1.Коммутативность:

АÇ В = В Ç А; А È В = В È А.

2.Ассоциативность:

Ç В) Ç С = А Ç Ç С) = А Ç В Ç С; (А È B) È С = А È È С) = А È В È С.

3. Взаимная дистрибутивность:

а) (А È В) Ç С = (А Ç С) È Ç С); б) (А Ç B) È С = (А È С) Ç È С).

4.Идемпотентность: A È A = A; A Ç A = A.

5.Законы поглощения: (A Ç B) È A = A; (A È B) Ç A = A.

6.Свойства нуля: A È Æ =A; A Ç Æ = Æ.

7.Свойства единицы: A È U =U; A Ç U = A.

8.Инволютивность: A = A .

6

9.Законы де Моргана: A Ç B = A È B ; A È B = A Ç B .

10.Свойства дополнения: A È A = U ; A Ç A = Æ .

Законы де Моргана можно обобщить на произвольное количество множеств. Пусть А1, А2, . . . – некоторые множества и пусть все они включены в S (А1, А2, . . . Í S). Тогда выполняются следующие соотношения:

11.

S \ UAk = I(S \ Ak )

дополнение

объединения

 

k

k

 

 

 

множеств равно пересечению их дополнений.

 

12.

S \ IAk = U(S \ Ak )

дополнение

пересечения

 

k

k

 

 

 

множеств равно объединению их дополнений.

Задание

1. В универсальном множествеU={1,2,3,4,5,6,7} заданы подмножества A={x| x < 4}, B={2,4,5,7}, C={1,2,5,6}. Найти:

а) C È A;

б) В Ç С; в) С D В;

г) U \ A.

2. Написать программу, которая формирует заданные множества и выполняет операции в соответствии с вариантом:

1.A Ç (B Ç C).

2.A È (B È C).

3.А È (A Ç B).

4.А Ç (A È B).

5.(A \ C) È (B \ C).

6.(A \ B) È (A \ C). 7.(AÈB) \ C

8.A \ (B Ç C).

9.А D В

10.(А \ В) È (В \ А).

7

Практическая работа № 2. Отображения и функции. Свойства отображений. Нечеткие множества, функция принадлежности.

Операции над нечеткими множествами

Цель работы: получение навыков задания нечетких множеств в ЭВМ и выполнения операций с ними.

Теоретические сведения

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

возникает

противоречие

между

формальной

природой

математики и привычкой человека мыслить неопределенными,

расплывчатыми понятиями.

 

 

 

Пусть Е – универсальное множество, x – элемент E, а Р –

некоторое

свойство. Обычное (четкое)

подмножество

A

универсального множества E, элементы которого удовлетворяют

свойству Р, определяется как множество упорядоченных пар

 

 

A = {mA (х) | x},

 

(*)

где mA(х) – характеристическая функция, принимающая значение 1, если x удовлетворяет свойству Р, и 0 – в противном случае.

Нечеткое подмножество отличается от обычного тем, что для элементов x из E нет однозначного ответа “да-нет” относительно свойства Р. В связи с этим нечеткое подмножество A универсального множества E определяется как множество

упорядоченных пар вида (*) где mA(х) принимает значения уже в некотором вполне упорядоченном множествеM (например, M°=°[0, 1]). Функция принадлежности указывает степень(или уровень) принадлежности элемента x подмножеству A. Множество M называют множеством принадлежностей. Если M°=°{0, 1}, то нечеткое подмножество A может рассматриваться как обычное или четкое множество.

Примеры записи нечеткого множества. Пусть E = {x1, x2, x3, x4, x5 }, M = [0, 1]; A – нечеткое множество, для которого

8

mA(x1)°=°0,3; mA(x2)=0; mA(x3)=1; mA(x4)=0,5; mA(x5)=0,9. Тогда A

можно представить в виде:

A = {0,3 / x1; 0 / x2; 1 / x3; 0,5 / x4; 0,9 / x5 }

или

A = 0,3/x1 È 0/x2 È 1/x3 È 0,5/x4 È 0,9/x5,

или

A =

x1

x2

x3

x4

 

x5

 

 

 

 

 

 

 

 

0,3

0

1

0,5

 

0,9

 

 

 

 

Основные

 

 

 

 

 

 

 

характеристики

нечетких

множеств. Пусть

M°=°[0, 1] и A – нечеткое множество с элементами из универсального множества E и множеством принадлежностей M.

Величина

sup mA (x)

называется высотой

нечеткого

 

xÎE

 

 

множества A(sup F(x) – точная верхняя граница функции F(x)).

Нечеткое множество A нормально, если его высота равна 1, т.е. верхняя граница его функции принадлежности 1равна ( supmA (x) =1). При supmA (x) < 1 нечеткое множество называется

xÎE

xÎE

субнормальным.

Нечеткое множество пусто, если " xÎE mA(x) = 0. Непустое субнормальное множество можно нормализовать по формуле

 

 

(x) =

mA (x) .

mA

sup mA (x)

 

 

 

 

xÎE

Носителем нечеткого множества A является обычное

подмножество со свойством mA(x) > 0.

1. Включение. Пусть A и B – нечеткие множества на универсальном множестве E. Говорят, что A содержится в B, если

"x ÎE mA(x) > mB(x). Обозначение: A Ì B.

2.Равенство. A и B равны, если "xÎE mA(x) = mB(x). Обозначение: A = B.

3.Дополнение. Пусть M = [0, 1], A и B – нечеткие множества, заданные на E. A и B дополняют друг друга, если

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

"xÎE mA(x) = 1 – mB(x). Обозначение: B =

 

A

или

A = B .

Очевидно, что

 

 

= A .

 

 

 

 

 

 

 

 

 

A

 

 

 

 

 

 

 

 

 

4.

Пересечение.

A

BÇ – наибольшее

нечеткое

подмножество, содержащееся одновременно в A и B;

 

 

 

 

 

 

 

mA Ç B(x) = min{mA(x), mB(x)}.

 

 

 

 

5.

Объединение.

А

È

В – наименьшее

нечеткое

подмножество, включающее

 

как , Атак

и

, Вс

функцией

принадлежности

 

 

 

 

 

 

 

 

 

mAÈ B(x) = max {(mA(x), mB(x)}.

6. Разность. А \ B = А Ç B с функцией принадлежности: mA\B(x) = min { mA(x), 1 – mB(x)}.

Например, пусть: A = 0,4/ x1 È 0,2/ x2 È 0/ x3 È 1/ x4; B = 0,7/ x1 È 0,9/ x2 È 0,1/ x3 È1/ x4; C = 0,1/ x1 È 1/ x2 È 0,2/ x3 È 0,9/ x4.

Здесь:

1)A Ì B, т.е. A содержится в B, С несравнимо ни с A, ни с B.

2)A ¹ B ¹ C.

3)A = 0,6/ x1 È 0,8/ x2 È 1/ x3 È 0/ x4;

B = 0,3/ x1 È 0,1/ x2 È 0,9/ x3 È 0/ x4.

Свойства операций. Пусть А, В, С – нечеткие множества, тогда выполняются следующие соотношения:

а) A Ç B = B Ç Aüý– коммутативность;

A È B = A È Bþ

б) (A Ç B) Ç C = A Ç (B Ç C)üý– ассоциативность;

(A È B) È C = A È (B È C)þ

в) A Ç A = Aüý– идемпотентность;

A È A = Aþ

г) A Ç (B È C) = (A Ç B) È (A Ç C)üý– дистрибутивность;

A È (B Ç C) = (A È B) Ç (A È C)þ

д) AÈÆ = A, где Æ – пустое множество, т.е. mÆ(x)=0 "xÎE; AÇÆ = Æ;

AÇE = A, где E – универсальное множество;

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]