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

Книги и конспекты / Горьковой Дискретная Математика

.pdf
Скачиваний:
151
Добавлен:
28.05.2022
Размер:
1.1 Mб
Скачать

САНКТ–ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

В. Ф. ГОРЬКОВОЙ

ЛЕКЦИИ ПО ДИСКРЕТНОЙ МАТЕМАТИКЕ

САНКТ– ПЕТЕРБУРГ

2004

УДК 519.8

Р е ц е н з е н т ы: проф. Чернецкий В. И. (Петрозав.гос. ун-т) проф. Романов М. Ф (С.-Петерб.гос.политехн. ун-т)

Печатается по постановлению Редакционно-издательского совета факультета прикладной математики-процессов управления Санкт-Петербургского государственного университета

Г о р ь к о в о й В. Ф.

–Лекции по дискретной математике. — СПб.:

ISBN

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

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

Библиогр. 10 назв. Ил. 8

ISBN

°c

В.Ф.Горьковой, 2003

°c

 

 

 

1

МНОЖЕСТВА И ФУНКЦИИ.

1.1. Множества и подмножества.

О п р е д е д е л е н и е 1. Система, состоящая из множества элементов a1, a2, ..., an, ..., над которыми определены операции типа сложения или умножения, не выводящие за пре-

делы данного множества, называется алгебраической системой.

В дальнейшем мы будем употреблять следующие обозначения. Z – все целые числа, включая нуль.

Q – все рациональные числа.

R – все вещественные числа.

C – все комплексные числа.

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

P – множество всех целых положительных чисел {1, 2, 3, ...}. N – множество всех неотрицательных целых чисел {0, 1, 2, ...}. Подмножеством S множества T называется любое множество, все элементы которого принадлежат T , т.е. из a S следует, что a T . Это отношение включения записывается так: S T . Оно

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

 

S S для любого множества S,

(1.1.1)

из S T и T U следует, чтоS U .

(1.1.2)

Свойство (1.1.1) называется рефлексивным свойством, а(1.1.2)

— транзитивным.

S = T тогда и только тогда, когда S T и T S. (1.1.3)

Множество всех подмножеств ( частей) данного множества U обозначается через P(U ).

Например, множество подмножеств U = {a, b, c} содержит шесть собственных подмножеств: {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, пустое множество и само множество U . Если U состоит из n различных элементов a1, a2, ..., an, то P(U ) состоит из 2n различных подмножеств.

3

1.2.Булевы алгебры.

Оп р е д е л е н и е 2. Бинарной операцией на множестве S называется правило, которое каждой упорядочной паре

(a, b) элементов из S ставит в соответствие третий элемент s — значение этой операции на паре (a, b). Примерами таких операций являются сложение и умножение на множестве Z целых чисел.

О п р е д е л е н и е 3. Унарной операцией на множестве S называется правило f , которое любому элементу a S ставит в соответствие однозначно определенный элемент f (a) S,

значение операции f на a.

На множестве подмножеств данного множества U определены две бинарные операции и одна унарная. Это — операции теоретико-множественного пересечения, объединения и дополнения; они называются также булевыми.

Обозначим через n(S) число элементов множества S. Если R и S — конечные множества, не имеющие общих элементов, то n(R S) = n(R) + n(S). Для любых конечных множеств R и S справедливо соотношение

n(R S) = n(R) + n(S) − n(R ∩ S).

В качестве примера рассмотрим подмножества M = {mk} и N = {nk} всех целых чисел кратных m, n Z. Тогда M ∩ N совпадает с множеством всех целых чисел кратных и m и n.

Пусть S — любое подмножество U . Множество тех элементов x U , которые не принадлежат S называется дополнением S и обозначается S.

Три булевых операции ∩, и на множестве всех подмножеств множества U удовлетворяют ряду основных алгебраических законов.

L1.

S ∩ S = S, S S = S (идемпотентность).

L2.

S ∩ T = T ∩ S, S T = T S

(коммутативность).

L3.

R ∩ (S ∩ T ) = (R ∩ S) ∩ T ,

 

 

R (S T ) = (R S) T (ассоциативность).

L4.

S ∩ (S T ) = S (S ∩ T ) = S

(поглощение).

L5. Если R T , то R (S ∩T ) = (R S) ∩T (модулярный закон).

4

L6. R ∩ (S T ) = (R ∩ S) (R ∩ T ),

R (S ∩ T ) = (R S) ∩ (R T ) (дистрибутивность).

L7. R ∩ = , R = R,

R ∩ U = R, R U = U (универсальные границы, нижняя и верхняя).

L8. R ∩ R= , R R= U (дополняемость).

L9. (S)= S (инволютивный закон).

L10. (S ∩ T )= ST и (S T )= S∩ T (законы де Моргана).

Докажем первый закон дистрибутивности. Если x R ∩(S T ), то x R и либо x S, либо x T . В первом случае x R и x S, поэтому x R ∩ S. Аналогично, во втором случае x R ∩ T . Следовательно, в любом случае либо x R ∩ S, либо x R ∩ T , так что x (R ∩ S) (R ∩ T ). Это показывает, что

R ∩ (S T ) (R ∩ S) (R ∩ T ).

Обратно, пусть x (R ∩ S) (R ∩ T ), т.е. либо x R ∩ S, либо x R ∩ T . Значит, в любом случае x R, а также в любом случае либо x S, либо x T . Таким образом, x R и x S T , а поэтому x R ∩ (S T ), т.е.

(R ∩ S) (R ∩ T ) R ∩ (S T ).

Объединяя этот результат с последней формулой предыдущего абзаца и используя (1.1.3), получим первый из двух законов дистрибутивности L6.

П р и м е р 1. Пусть U = {a} — одноэлементное множество. Переобозначив U через l, а через 0, получим простейшую нетривиальную булеву алгебру [P({a}), ∩, , ], операции в которой задаются следующими таблицами:

0

l

 

 

0

l

 

 

 

 

 

 

0

0

0

0

0

l

0

l

l

 

l

 

l

l

l

 

l

0

0

 

 

 

 

 

 

 

 

 

 

 

 

П р и м е р 2. Пусть U = {a, b}, тогда P(U ) = {, {a}, {b}, U }. Введем обозначения: = 0, {a} = S, {b} = S, U = I. Тогда булева алгебра {0, S, S, I} определена следующими таблицами

5

0 S S

l

 

 

0

S

S

l

 

x

x

0

0

0

0

0

0

0

S

S

l

0

l

S

0

S 0

S

 

S

S

S

l

l

 

S

S’

S

0

0

S

S

 

S

S

l

S

l

 

S’

S

l

0

S S

l

 

l

l

l

l

l

 

l

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

УПРАЖНЕНИЯ

1.Положим S + T = (S ∩ T ) (S∩ T ).

Найти необходимые и достаточные условия для того, чтобы S +T = S T .

2.a) Доказать, что S S ∩ (S T ) и S S ∩ (S T ).

б) Доказать, что S = S (S ∩ T ).

3.Доказать, что S T в том и только в том случае, если ST = U .

4.a) Доказать, что любое из трех соотношений S T , S ∩T = S и S T = T между подмножествами данного множества U влечет два других (закон согласованности).

б)Доказать, что для любых элементов S, T любой булевой алгебры свойства S ∩ T = S и S T = T равносильны.

5. Используя непосредственно существование универсальных границ и закон согласованности, доказать, что S U = U, S ∩ = , S ∩U = S, S = S.

В упражнениях 6 и 7 следует пользоваться только тождествами L1

— L10 .

6. a) ПоложивR + S = (R ∩ S) (R∩ S), доказать тождества R + S =

S + R, R + (S + T ) = (R + S) + T и R + R = .

б) Положив S − T = S ∩ T , доказать, что S + T = (S T ) − (S ∩ T ).

7. Исходя из определения булевой алгебры, доказать тождества:

а)S + S = , S + I = S, S + = S, S + S= I,

б) S + T = S+ T , (R + S) ∩ T = (R ∩ T ) + (S ∩ T ), в) R ∩ (S − T ) = (R ∩ S) − (R ∩ T ).

1.3.Функции

Оп р е д е л е н и е 4. Пусть S и T — множества. Функцией f из области S в кообласть T называется правило, которое сопоставляет каждому элементу s S единственный элемент из T , называемый значением f в s и обозначаемый через

f (s).

Мы будем также говорить, что f является функцией (или отображением, преобразованием) из S в T , и писать f : S → T . Образом Im f отображения f : S → T называется множество f (S) всех

6

значений f (s), которые оно принимает при всевозможных s S. Образ f является подмножеством кообласти T .

Один из способов задания функции — перечисление значений, которые она принимает на элементах области. Например, функция

с областью S = {a, b, c}, кообластью T

= {a, b, c, d} и образом

f (S) = {a, b} задается предписанием

 

f : a 7→

7→

7→.

a, b

a, c

b

Другая функция g : S → T с образом g(S) = {b, c, d} задается предписанием

g : a 7→d, b 7→c, c 7→b.

Очевидно, к образам этих функций можно применять булевы операции: в наших примерах f (S) g(S) = {a, b, c, d} и f (S)∩g(S) =

{b}.

Определим функцию следования Пеано σ, для которой множество P всех положительных целых чисел является и областью, и кообластью. Каждому целому положительному числу n она ставит в соответствие число n + 1 : σ(n) = n + 1, σ : P → P — функция из P в P. Функцию σ также можно задать (бесконечным) списком предписаний:

σ : 1 7→2, 2 7→3, 3 7→4, ..., n 7→n + 1, ...

Очевидно, образом Im σ функции σ : P → P является множество

σ(P) = {2, 3, 4, ...}

, которое мы обозначим символом P2.

Чтобы задать функцию, мы должны определить ее область, кообласть и значения, которые она сопоставляет каждому элементу области. Если f : S → T и g : S1 → T1, то f = g в том и только том случае, когда

f (x) = g(x) для всех x S,

S = S1 и T = T1.

Согласно этому определению, функции могут быть строго одинаковыми, только если их области и кообласти совпадают. Например, предписание n 7→n + 1 определяет также функцию σ: P → P2. Эта функция не совпадает с функцией следования σ : P → P, поскольку кообласть у σне совпадает с кообластью функции σ.

Для любого множества S тождественная функция 1S : S → S отображает любой элемент S в себя: 1S (s) = s для всех s S. В силу сказанного выше тождественные функции разных множеств различны.

7

О п р е д е л е н и е 5. Левой композицией g ◦ f любых двух функций называется функция, полученная в результате их применения в порядке, обратном написанному при условии, что

область g совпадает с кообластью f .

Пусть

f : S → T и g : T → U .

Тогда левая композиция g ◦ f есть функция g ◦ f : S → U , определяемая правилом

(g ◦ f )(s) = g(f (s)) для всех s S.

О п р е д е л е н и е 6. Правой композицией f ♦g называется функция, получаемая из левой композиции перестановкой

символов: f ♦f = g ◦ f .

Пусть, например, ϕm : R → R —операция возведения в степень m, ϕm(x) = xm. Подобно показателю степени m, символ функции ϕm можно записать справа от аргумента: xm = xϕm. Если условиться писать символы функций ϕ, φ, ... справа, то естественно записывать их композицию также в правой форме, ибо тогда выполнено правило (xϕ)φ = x(ϕ♦φ). Так, в предыдущем примере

x(ϕm♦ϕn) = (xm)n = xmn = xϕmn; следовательно, ϕm♦ϕn = ϕmn. Преимущество правой композиции заключается в том, что функ-

ции пишутся в том же порядке, в каком они действуют.

Лемма 1. Композиция функций подчиняется ассоциативному закону:

(h ◦ g) ◦ f = h ◦ (g ◦ f ) = f ♦(g♦h) = (f ♦g)♦h.

Предполагается, что все записанные композиции определены.

Д о к а з а т е л ь с т в о. Пусть f : S → T, g : T → U, h : U → V . Любому элементу x S обе композиции приписывают значения

(hg)f

hg

h(gf )

[h(gf )]x.

[(hg)f ]x =

(hg)(f x) = h((gf )x)

=

Из определения равенства функций следует ассоциативный закон:

(hg)f = h(gf ) : S → V

. Для краткости записи символ ◦ здесь опущен.

Тождественные функции 1S и 1T в композиции с любой функцией f : S → T не меняют ее:

f ◦ 1S = 1T ◦ f = f, 1S ♦f = f ♦1T = f .

8

Чтобы убедиться в этом, следует заметить, что (f 1S )s = f (1S s) = f (s) для всех s S в силу леммы 1 и определения равенства функций.

Оп р е д е л е н и е 7. Функция f : S → T называется инъективной, или инъекцией, или вложением, или взаимно однозначным отображением “в”, если из s =6 sв S следует, что f (s) =6 f (s) в T .

Оп р е д е л е н и е 8. Функция h : S → T называется сюръективной, или сюръекцией, или отображением “на”, если

ееобраз совпадает со всей кообластью, т.е. для каждого t T существует хотя бы один элемент s S, такой, что h(s) = t.

Оп р е д е л е н и е 9. Биекцией, или взаимно однозначным отображением “на”, называется функция, являющаяся одновре-

менно инъекцией и сюръекцией.

Например, среди функций из Z в Z отображение n 7→ −n биективно, отображение n 7→2n инъективно, но не сюръективно, а отображение n 7→n2 не инъективно и не сюръективно.

Пусть P — множество всех положительных целых чисел, σ : P → P — функция следования Пеано, σ(n) = n + 1 для всех n P. Это инъекция, но не сюръекция.

Пусть n = {1, 2, ..., n} — множество положительных целых чисел k ≤ n. К числу основных функций на нем принадлежит циклическая перестановка: νn : n → n. Она сопоставляет всем числам k n, кроме n, следующее k + 1, а n переводит в 1. Это биекция. При n = 3 функция ν3 задается предписанием 1 7→2, 2 7→3, 3 7→1. В общем случае

νn : 1 7→2, 2 7→3, ..., n − 1 7→n, n 7→1.

О п р е д е л е н и е 10. Характеристической функцией подмножества S данного множества U, eS : U → {0, 1}, опреде-

ляется предписанием

0,

если x

(

eS (x) =

1,

если x S,

 

 

/ S.

Пусть, например, U = {1, 2, 3} — множество, которое мы обозначим также символом 3. Вот списки значений функций eS , отвечающих всевозможным подмножествам S U :

7→(0, 0, 0), {1} 7→(1, 0, 0), {2} 7→(0, 1, 0), {3} 7→(0, 0, 1), {1, 2} 7→(1, 1, 0), {1, 3} 7→(1, 0, 1), {2, 3} 7→(0, 1, 1),

3 = {1, 2, 3} 7→(1, 1, 1).

9

Например, при U = 3 описанное отображение b : S → eS является биекцией между P(3) и множеством всех последовательностей из символов 0, 1 длины три. Для простоты мы можем обозначить любой элемент из P(3) одной из восьми двоичных троек: 000, 100, 010, 001, 110, 101, 011, 111.

1.4.Обратные функции

Оп р е д е л е н и е 11. Если левая композиция функций f : S → T и g : T → S совпадает с тождественной функцией 1S на S, мы будем говорить, что g — левая обратная к f , а f

правая обратная к g. Eсли, кром того, f ◦ g = 1T , мы будем говорить, что g — двусторонне обратна к f и, по симметрии, f двусторонне обратна к g. Функция, имеющая двусторонне обратную, называется обратимой.

Теорема 1. Функция обратима слева тогда и только тогда, когда она инъективна. Функция обратима справа тогда и толь-

ко тогда, когда она сюръективна.

Д о к а з а т е л ь с т в о. Покажем сначала, что любая обратимая слева функция взаимно однозначна. Пусть g : T → S — функция, обратная слева к f : S → T . Предположим, что f (s) = f (s). Тогда, по определению,

s = 1S (s) = g(f (s)) = g(f (s)) = 1S (s) = s.

Таким образом, из предположения, что f (s) = f (s), мы вывели, что s = s. Это доказывает инъективность f .

Проверим обратное утверждение. Пусть f инъективна. Выберем элемент s1 S и определим g1 : T → S так:

 

(t) =

s, если t = f (x) для некоторого s S,

g1

( s1

в противном случае, т.е. если t

 

 

 

/ Im f.

Тогда (g1 ◦ f )(s) = g1(f (s)) = s для всех s S, так что, по определению, g1 ◦ f = 1S и g1 является левой обратной к f .

Аналогично проверяется вторая часть теоремы. Если t T и f h = 1T , то t = 1T (t) = f (h(t)), так что любой элемент t T является образом f (s) подходящего элемента s = h(t) S, и f сюръективна. Обратно, если f : S → T сюръективна, то каждый элемент t T является образом t = f (s) хотя бы одного элемента s S. Для каждого элемента t T выберем из множества всех s,

10