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

Лекции по дискретной математике

.pdf
Скачиваний:
184
Добавлен:
02.05.2014
Размер:
2.56 Mб
Скачать

Пусть G – связный граф. Тогда остовное дерево графа G должно

содержать n(G)-1 ребер. Значит, для получения остовного дерева из графа

G нужно удалить m(G) (n 1)

ребер. Число v(G) = m(G) n(G) +1

называется цикломатическим числом графа G.

Алгоритм выделения остовного дерева

1) Выберем в G произвольную вершину u1 , которая образует подграф, являющийся деревом. Положим i=1.

2)Если i=n(G), то задача решена и Gi – искомое остовное дерево графа G. Иначе переходим к п. 3.

3)Пусть уже построено дерево Gi являющееся подграфом графа G, в

которое входят вершины

u1,u2 ,..., ui , где 1i n 1. Строим граф Gi+1 ,

добавляя к графу Gi новую вершину

ui+1 V ,

смежную с

некоторой

вершиной ui графа Gi и

новое ребро

{ui+1 ,ui }.

Во-первых,

это можно

всегда сделать, поскольку граф связен. Во-вторых,

Gi+1 - дерево, т.к. если в

Gi не было циклов, то и в Gi+1 их не могло появиться. Присваиваем i:=i+1 и переходим к шагу 2).

Замечание. Остовное дерево может быть выделено, вообще говоря, не единственным способом.

Если граф – нагруженный, то можно выделить остовное дерево с минимальной суммой длин содержащихся в нем ребер.

Алгоритм выделения минимального остовного дерева нагруженного графа

1)Выберем в графе G ребро минимальной длины. Вместе с

инцидентными ему двумя вершинами оно образует подграф G2 графа G. Положим i=2.

2)Если i=n(G), то задача решена и Gi – искомое минимальное ост. дерево графа G. Иначе переходим к шагу 3).

3)Строим граф Gi+1, добавляя к графу Gi новое ребро минимальной длины из оставшихся, которое инцидентно какой-нибудь верш. графа Gi и одновременно вершине, не содержащейся в Gi. Вместе с этим ребром включаем в Gi+1 и эту инцидентную ему верш. Присваиваем i:=i+1 и переходим к шагу 2).

Лекция №15 Планарность и раскраска графов

опр || мультиграф называется планарным если его можно нарисовать на плоскости так, что 2 дуги (ребра) либо не имеют общих точек, либо имеют общие точки, совпадающие с вершинами графа.

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

Такая функция называется плоским мультиграфом.

граф не является плоским

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

Простой цикл ограничен. Называется её границей.

Часть плоскости состоящая из точек принадлежащих графу и какой либо её плоскости называется её высшей степенью.

Для связанных плоских мультиграфов выполняется соотношение Эйлера n m + γ = 2

n – количество вершн m – количество ребер λ - гр. внеш

Критерий планарности Теорема Плантрагина-Куратовского

Теорема || Граф планарен тогда и только тогда, когда ни одна из его подграфов не гомопотрофна следующим графам

Раскраской вершин графа (или ребер мультиграфа) называется сопоставление вершинам определенных цветов.

Раскраска называется правильной если смежные вершины (ребра) окрашены в разные цвета.

Наименьшее число цветов для каждого прав. раскраски графа G

называется хроматическим числом и обозначается X(G)

G(u, x)

1)X(G) ≥ ω(G), ω(G)

2)

X(G)

 

n2

 

n = n(G) вершины m = m(G) ребра

n2

2m

 

 

 

3) X(G) ≤ ∆(G) + d,

(G) = max d(υ) υ V

Для хроматического индекса свойства:

1)(G) X(G) 32 (G)

2)G граф

(G) X(G) ≤ ∆(G) + γ

Транспортные сети Транспортной сетью называется орт граф D = (u, x) U ={υ1 ,υ2 ,..., υn } для которого выражаются условия:

1)одна и только одна вершина называется источником D1 (υ1 ) = 0 D1 (υ1 ) множество дуг заходящих в точку υ

2)-//- верш . υ называется истоком т.ч. D(υn ) = 0

3) Каждой дуге x X сопоставляется число (целое и не

отрицательное) т.ч. C(x) = 0 называемое пропускной способностью дуги

4) Вершины отличные от источника и истока называются промежуточными

опр || потока

Функция ϕ(x) определенная на множестве X граф D и принимающая

целочисленные значения называется потоком транспортной сети D, если

1)

для дуги x X 0 ≤ ϕ(x) C(x)

2)

для промежуточной дуги x

2,5) для промежуточной вершины υ

ϕ(ω,υ) = ϕ(υ,ω)

ω D1 (υ) ω D(υ)

Сколько вышло столько и вошло.

ϕ(υ1 ,υ) = ϕ(υ1 ,υn ) = ϕ

υ D(υ ) υ D1 (υ

n

)

 

 

 

 

 

1

 

 

 

 

 

 

опр ||

x X называется насыщенным, если поток по ней равен ее

пропускной способности ϕ(x) = C(x)

 

 

 

 

опр || поток ϕ называется полным, если его путь из

υ1 в

υn содержит

хотя бы одну насыщенную дугу

 

 

 

 

опр ||

Поток

называется максимальным, если

 

 

 

принимает

ϕ

максимальное значение по сравнению с другим допустимым потоком. Замечан || максимальный поток является полным, но обратно не верно.

Алгоритм построения полного потока

1) ϕ(x) = 0 x X

2)из Dудаляем дуги являющиеся насыщенными D′ → D

3)ищем в Dпростую цепь

η: υ1 → υn , если не находим, то конец.

ϕ- искомый поток по определению

4)Увеличим поток по всем дугам на одинаковую величину т.ч. хотя бы одна дуга из η является насыщенной, потоки по остальным не

превышают их пропускных способностей

Лекция №14 (14.03.00)

Булева алгебра, математическая логика, алгебра логики.

Литература:

1.Яблонский. Введение в дискретную математику. 1986, Москва, “Наука”

2.Гаврилов, Сапоженко. Задачи и упражнения по курсу дискретной математики.

опр || набор

~ n

=(α1,

α2,…, αn) где αi {0,1}, i=1,…,n называется

α

Булевым (двоичным) набором.

-αi - компоненты набора (координаты вектора)

-n – длина набора (размерность).

опр || нормой вектора называют сумму его координат.

 

 

~ n

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

|| α

 

|| = αi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

опр || множество всех двоичных наборов длины n образуют n-мерный

булев (или двоичный) куб B

n

 

 

 

 

~ n

называют вершинами куба B

n

.

 

 

 

 

 

. Наборы α

 

 

 

 

 

Каждому двоичному набору

~ n

можно сопоставить число (номер)

 

 

 

 

 

 

 

α

 

 

 

 

 

 

 

~ n

 

 

 

 

~ n

n

 

 

ni

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

α

 

↔ ν(α

) = αi 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

~ n

 

~ n

 

 

 

 

 

 

 

B

 

 

 

опр || расстоянием Хемминга между вершинами

и

 

куба

 

n

 

 

α

β

 

 

 

называется число

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

~ n

~ n

) =

n

−βi |

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ρ(α

 

 

, β

 

| αi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i=1

 

~ n

 

 

 

~ n

 

 

 

 

 

 

 

 

 

~ n

 

~ n

 

 

 

 

 

 

 

 

 

опр

 

||

 

наборы

 

и

 

называются соседними

если

,

)

=1

 

и

 

 

 

 

α

 

 

β

 

 

 

ρ(α

 

β

 

противоположными если

 

~ n

~ n

)

= n

(все координаты разные).

 

 

 

 

 

 

 

 

 

 

 

 

ρ(α

 

 

, β

 

 

 

 

 

 

 

 

 

 

 

 

 

опр ||

 

 

~ n

предшествует (или не больше) набора

~ n

(

~ n

p

~ n

),

 

 

набор α

β

α

β

 

если αi ≤βi, i=1,…,n.

 

 

 

 

 

 

~ n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если

 

~ n

~ n

,

 

~ n

,

 

 

то

набор

~ n

строго

меньше

 

 

 

(строго

 

 

 

α

p β

 

α

 

β

 

 

α

 

 

 

предшествует) набору

~ n

 

~ n

 

 

 

~ n

).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

β

 

 

( α

 

 

p β

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

опр ||

наборы

 

~ n

 

и

 

~ n

 

 

 

называются сравнимыми, если

~ n

 

 

 

~ n

 

или

~ n

 

 

α

 

 

 

β

 

 

 

 

α

 

p β

 

 

p

~ n

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

β

α

 

 

 

 

 

 

~ n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

~ n

 

 

~ n

 

 

~ n

 

 

 

 

 

опр

 

||

 

набор

 

непосредственно предшествует

если

p

 

и

 

 

 

 

α

 

 

β

α

 

β

 

 

 

 

~ n

~ n

)

 

=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ρ(α

, β

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

утв

 

 

||

 

отношениеp

 

является

отношением

частичного

порядка

 

 

на

множестве Bn .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

опр

 

 

||

функция

 

 

 

f

 

(x1 , x2 ,...xn )

определенная

 

на

множестве

Bn ={0,1}n ={{0,1}×{0,1}×... ×{0,1}}

 

 

и принимающая значения из множества {0,1}

называется функцией алгебры логики (булевой функцией).

 

 

 

 

 

 

 

 

 

 

 

 

 

Множество

всех

булевых функций, зависящих от x1...x n будем

обозначать

P2 (X) .

 

 

 

 

 

При n = 0 функция называется ноль местной (const) f=0 или f=1.

В произвольном случае f можно задать таблицей

 

x1

 

x2

 

x3

 

xn

f

 

 

0

 

0

 

0

 

 

0

0

 

 

0

 

0

 

0

 

 

0

1

 

 

0

 

0

 

 

 

 

1

0

 

 

0

 

0

 

0

 

 

1

1

 

 

 

 

1

 

1

 

1

 

1

1

 

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

(α0, α1, α2,…, αk), k=2n-1.

Элементарные функции

0 и 1 - местные

x

f=0

f=1

f1

f2

0

0

1

0

1

1

0

1

1

0

f=0 - тождественный ноль, f=1 - тождественная единица,

f1(x)=x – тождественная функция

f 2 (x)= x ; ¬x ; - отрицание x, не x, not x

Двуместные функции

x1

 

 

x2

f3

 

f4

f5

f6

f7

 

f8

 

f9

f10

f11

0

 

 

0

0

 

0

0

1

1

 

1

 

1

0

1

0

 

 

1

0

 

1

1

0

1

 

1

 

0

0

1

1

 

 

0

0

 

1

1

0

0

 

1

 

0

1

0

1

 

 

1

1

 

1

0

1

1

 

0

 

0

1

0

 

f3

- называется конъюнкция

 

 

 

 

 

 

 

 

 

f3 (x1 , x2 ) = x1 & x2 ; x1 x2 ; MIN (x1 , x2 ); x1 и x2 ; x1 and x2 ; x1 x2

 

 

 

 

f4

- дизъюнкция

 

 

 

 

 

 

 

 

 

 

 

x1 x2 ; x1 + x2 ; MAX(x1 , x2 ); x1 или x2 ; x1 or x2

 

 

 

 

 

A1 A2

f5 - сложение по модулю 2

x1 x2 , (x1 + x2 ) mod 2

f6 - эквиваленция (когда xi1 = xi 2 ) x1 ~ x 2 x1 x 2 x1 x 2

f7 - импликация

x1 x2 ; x1 x2 из правды правда, из лжи правда/ложь

f8 - штрих Шеффера, (антиконъюнкция, не-и)

x1 | x2 ;

f9 стрелка Пирса, антидизъюнкция, функция Вебба, не или x1 x2

Символы … называются логическими связками.

опр ||

f

= f (x1 , x2 ,..., xi1 , xi , xi+1 ,..., xn ) зависит существенным образом от

аргумента

xi , если такие значения

α1 ,...αi1 ,αi ,αi+1 ,...αn переменных

x1...xi1 , xi , xi+1 ,..., x n , что

f (α1...αi1 , αi , αi+1 ,..., αn ) f (α,...αi1 ,

 

i , αi+1 ,..., αn ) .

α

опр

||

Если

для

 

всех

наборов

α1 ,...αi1 ,αi ,αi+1 ,...αn

f (α1...αi1 , αi , αi+1 ,..., αn ) f

(α,...αi1 ,

 

i , αi+1 ,..., αn ) то переменная xi называется

α

фиктивной переменной.

 

 

 

 

 

 

 

опр || функции f1 и f2 называются равными, если f1 получается из f2 добавлением или изъятием фиктивных элементов.

Формулы

опр ||Формулой над множеством Ф функциональных символов будем называть всякое (и только такое) выражение вида

1)0, 1- константы;

2)x-любая переменная из множества X;

3)выражения вида (UB), где U,B – формулы, - символ любой двуместной связки (&, , ,,,|↓).

4)x, U - отрицание;

Для сокращения записи формул принимаются следующие соглашения:

а) внешние скобки опускаются; б) считается, что операция отрицания выполняется в первую очередь;

в) следующей по старшинству считается операция конъюнкции; затем

– все остальные.

Примеры:

x1 & (x2 & x1 )

x1 (x2 x1 )

U1 = x ( y & z( - не есть формула, так как неправильно стоят скобки,

xy z - не стоят скобки вообще

Сопоставим формуле U(x1 ,..., x m ) функцию f (x1 ,..., xn )

опр ||

Функцию fγ(x1 ,..., xn ) называют симметричной по переменным

(x1 ,..., x k )

 

 

 

 

 

 

 

 

 

 

1,..., k

 

2 k n , если для подстановки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j ,..., j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

k

f (x1 ,..., xk , xk +1 ,...xn ) = f (x j1 ,..., x jk , xk +1 ,..., xn )

 

 

 

 

 

 

 

Основные эквивалентности алгебры логики

Свойства:

 

1)

коммутативность x oy = y ox o {&, , , ~,|,}

 

2)

ассоциативность (x oy) oz = x o( y oz), o {&, , , ~}

3)

дистрибутивность

 

а) x & (y z) = (x & y) (x & z)

 

б)

x (y & z) = (x y) & (x z)

 

в)

x & (y z) = (x & y) (x & z)

 

4)

правила Деморгана

 

а)

 

x & y

=

x

 

y

 

 

б)

 

=

 

&

 

 

 

x y

x

y

 

5)

правила поглощения

 

а)

x (x & y) = x

 

б)

x & (x y) = x

 

6)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а) x (x & y) = x y б) x & (x y) = x & y

7

а) x & x = 0, x & 0 = 0, x x = 0

б) x x =1, x 1 =1, x ~ x =1, x x =1

в) x x = x, x & x = x, x &1 = x, x 0 = x, x 0 = x г) x 1 = x, x 0 = x, x ~ 0 = x, x | x = x, x x = x

д) x = x 8)

а) x y = (x & y) (x & y) = (x y) & (x y)

б) x ~ y = x y = (x & y) (x & y) = (x y) & (x y) в) x y = x y = ((x & y) x) 1

9)

а) x | y = x & y = x y б) x y = x y = x & y

Примеры Доказать эквивалентность формул

U = (xy) (x yz) ~ (x y) z B = (x y) (y z)

x y = x + y y z = yz + yz

(x + y) (yz + yz) = (x + y)(yz + yz) + (x + y)(yz + yz) =

=(x + y)(yz yz) + (x y)(yz + yz) = (x + y)(y + z)(y + z) + (x y)(yz + yz) =

=(x + y)(yy + yz + yz + zz) + (xy)(yz + yz) = (x + y)(yz + yz) + xy(yz + yz) =

=xyz + xyz + yyz + yyz + xyyz + xyyz = xyz + xyz + yz + xyz =

=x(yz + yz) + z(y + xy) = xyz + z(xy + x + y) = xyz + z(y(x +1) + x) =

=xyz + zx + zy

(x + yz) ~ (xy + z) = (x + yz)(xy + z) + (x + yz)(xy + z) =

=xxy + xz + xyyz + yzz + (x(y + z))((x + y) z) =

=xz + xyz + yz + (xy + xz)(xz + yz) =

=xz + yz + xyz + xxyy + xyyz + xzxz + xzyz =

=xz + xzy + yz + xyz = z(x + xy + y) + xyz = xyz + zx + zy