student-online.plstudent-online.pl/pliki2/Semestr 3/Matematyka Dyskretna [MDA]/MDA... · Zasady...

160
Zasady zaliczania kursu z matematyki dyskretnej I-MDA-DA na studiach dziennych w sem. zimowym roku akad. 2011/12 1. Wystawiana jest jedna ocena końcowa z calego kursu na podstawie sumy punktów uzyskanych przez studenta w trakcie semestru i na egzaminie końcowym w sesji zimowej. Ocena wystawiana jest wylącznie studentom zapisanym na kurs. 2. W ciągu semestru przeprowadzane są na ćwiczeniach 3 kolokwia: na 4, 8 i 13 zajęciach. Pierwsze dwa sprawdzają opanowanie zagadnień kombinatorycznych a trzecie – z teorii grafów. 3. Każde kolokwium trwa 2 godz. akademickie, sklada się z nie więcej niż 10 zadań i oceniane jest w skali od 0 do 16 punktów (pierwsze) lub od 0 do 17 punktów (dwa pozostale). 4. Punkty z trzech kolokwiów są sumowane i warunkiem dopuszczenia do egzaminu jest uzyskanie na ćwiczeniach przynajmniej 26 punktów, co nazywane jest zaliczeniem ćwiczeń. Zatem nie uzyskanie przez studenta zaliczenia ćwiczeń oznacza brak możliwości zaliczenia calego kursu. 5. Kolokwium poprawkowe jest organizowane w ostatnim tygodniu zajęć semestru zimowego w wyznaczonym dodatkowym terminie. Na kolokwium poprawkowym student może wybrać do poprawy zakres tematyczny jednego z trzech kolokwiów przeprowadzanych na ćwiczeniach. Punkty uzyskane na kolokwium poprawkowym zastępują punkty uzyskane na wybranym do poprawy regularnym kolokwium i stają się skladnikiem sumy decydującej o dopuszczeniu do egzaminu (dotyczy to również studentów, którzy przystąpiliby do kolokwium poprawkowego po uzyskaniu na ćwiczeniach 26 lub więcej punktów). 6. Kolokwium poprawkowe trwa 2 godz. akademickie, sklada się z nie więcej niż 10 zadań i oceniane jest w tej samej skali, co wybrane do poprawy kolokwium regularne. Uzyskanie po kolokwium poprawkowym sumy przynajmniej 26 punktów dopuszcza do egzaminu końcowego. Brak zaliczenia ćwiczeń po kolokwium poprawkowym oznacza niezaliczenie kursu z przedmiotu. 7. Egzamin w sesji trwa 2,0 godz. zegarowe, sklada się z nie więcej niż 12 zadań i oceniany jest w skali od 0 do 50 punktów. Zatem maksymalna suma punktów, która jest podstawą wystawienia oceny końcowej z kursu wynosi 16+17+17+50=100. 8. Punkty uzyskane na ćwiczeniach i punkty z egzaminu są sumowane i na podstawie tej sumy wystawiana jest ocena końcowa z kursu wg skali: 51 – 60 pkt ocena 3,0, 61 – 70 pkt ocena 3,5, 71 – 80 pkt ocena 4,0, 81 – 90 pkt ocena 4,5, 91 – 100 pkt ocena 5,0. 9. Studentom, którzy przystępują do egzaminu dwukrotnie (w sesji są dwa terminy) wystawia się ocenę końcową na podstawie liczby punktów uzyskanych w II terminie. 10. Uzyskanie po egzaminie w sumie mniej niż 51 punktów oznacza niezaliczenie calego kursu. 11. Regulaminowy termin egzaminu poprawkowego jest w sesji wrześniowej. Zaliczenie ćwiczeń pozostaje warunkiem dopuszczenia do egzaminu poprawkowego. Wynik egzaminu poprawkowego uwzględniany jest w ocenie końcowej z kursu w taki sam sposób, jak wynik egzaminu podstawowego. J. Sikorski (prowadzący kurs)

Transcript of student-online.plstudent-online.pl/pliki2/Semestr 3/Matematyka Dyskretna [MDA]/MDA... · Zasady...

Zasady zaliczania kursu z matematyki dyskretnej I-MDA-DA na studiach dziennych w sem. zimowym roku akad. 2011/12

1. Wystawiana jest jedna ocena końcowa z całego kursu na podstawie sumy punktów uzyskanych przez studenta w trakcie semestru i na egzaminie końcowym w sesji zimowej. Ocena wystawiana jest wyłącznie studentom zapisanym na kurs.

2. W ciągu semestru przeprowadzane są na ćwiczeniach 3 kolokwia: na 4, 8 i 13 zajęciach. Pierwsze dwa sprawdzają opanowanie zagadnień kombinatorycznych a trzecie – z teorii grafów.

3. Każde kolokwium trwa 2 godz. akademickie, składa się z nie więcej niż 10 zadań i oceniane jest w skali od 0 do 16 punktów (pierwsze) lub od 0 do 17 punktów (dwa pozostałe).

4. Punkty z trzech kolokwiów są sumowane i warunkiem dopuszczenia do egzaminu jest uzyskanie na ćwiczeniach przynajmniej 26 punktów, co nazywane jest zaliczeniem ćwiczeń. Zatem nie uzyskanie przez studenta zaliczenia ćwiczeń oznacza brak możliwości zaliczenia całego kursu.

5. Kolokwium poprawkowe jest organizowane w ostatnim tygodniu zajęć semestru zimowego w wyznaczonym dodatkowym terminie. Na kolokwium poprawkowym student może wybrać do poprawy zakres tematyczny jednego z trzech kolokwiów przeprowadzanych na ćwiczeniach. Punkty uzyskane na kolokwium poprawkowym zastępują punkty uzyskane na wybranym do poprawy regularnym kolokwium i stają się składnikiem sumy decydującej o dopuszczeniu do egzaminu (dotyczy to również studentów, którzy przystąpiliby do kolokwium poprawkowego po uzyskaniu na ćwiczeniach 26 lub więcej punktów).

6. Kolokwium poprawkowe trwa 2 godz. akademickie, składa się z nie więcej niż 10 zadań i oceniane jest w tej samej skali, co wybrane do poprawy kolokwium regularne. Uzyskanie po kolokwium poprawkowym sumy przynajmniej 26 punktów dopuszcza do egzaminu końcowego. Brak zaliczenia ćwiczeń po kolokwium poprawkowym oznacza niezaliczenie kursu z przedmiotu.

7. Egzamin w sesji trwa 2,0 godz. zegarowe, składa się z nie więcej niż 12 zadań i oceniany jest w skali od 0 do 50 punktów. Zatem maksymalna suma punktów, która jest podstawą wystawienia oceny końcowej z kursu wynosi 16+17+17+50=100.

8. Punkty uzyskane na ćwiczeniach i punkty z egzaminu są sumowane i na podstawie tej sumy wystawiana jest ocena końcowa z kursu wg skali: 51 – 60 pkt ocena 3,0, 61 – 70 pkt ocena 3,5, 71 – 80 pkt ocena 4,0, 81 – 90 pkt ocena 4,5, 91 – 100 pkt ocena 5,0.

9. Studentom, którzy przystępują do egzaminu dwukrotnie (w sesji są dwa terminy) wystawia się ocenę końcową na podstawie liczby punktów uzyskanych w II terminie.

10. Uzyskanie po egzaminie w sumie mniej niż 51 punktów oznacza niezaliczenie całego kursu.

11. Regulaminowy termin egzaminu poprawkowego jest w sesji wrześniowej. Zaliczenie ćwiczeń pozostaje warunkiem dopuszczenia do egzaminu poprawkowego. Wynik egzaminu poprawkowego uwzględniany jest w ocenie końcowej z kursu w taki sam sposób, jak wynik egzaminu podstawowego.

J. Sikorski (prowadzący kurs)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (1) J.Sikorski Strona 1 / 6

MATEMATYKA DYSKRETNA

Program wykładu dla studiów stacjonarnych w semestrze zimowym:

KOMBINATORYKA – wykłady 1. – 8.

Literatura:

• M.Libura, J.Sikorski „Wykłady z matematyki dyskretnej. Cz.I: Kombinatoryka” Wydawnictwo WSISiZ (2003)

• Z.Palka, A.Ruciński „Wykłady z kombinatoryki” WNT (1998, 2004)

• W.Lipski „Kombinatoryka dla programistów” WNT (1989, 2004)

• K.Ross, C.Wright „Matematyka dyskretna” PWN (1996, 2003)

• R.Graham, D.Knuth, O.Patashnik „Matematyka konkretna” PWN (2002)

GRAFY i SIECI – wykłady 9. – 15.

Literatura:

• M.Libura, J.Sikorski „Wykłady z matematyki dyskretnej. Cz.II: Teoria grafów” Wydawnictwo WSISiZ (2002)

• N.Deo „Teoria grafów i jej zastosowania w technice” PWN (1980)

• R.Wilson „Wprowadzenie do teorii grafów” PWN (2000)

• K.Ross, C.Wright „Matematyka dyskretna” PWN (1996)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (1) J.Sikorski Strona 2 / 6

NOTACJA I POJĘCIA PODSTAWOWE

Funktory zdaniotwórcze:

∨∨∨∨ - lub (alternatywa, suma logiczna)

∧∧∧∧ - i (koniunkcja, iloczyn logiczny)

¬¬¬¬ - nie (negacja)

⇒⇒⇒⇒ - jeśli ..., to ... (implikacja)

⇔⇔⇔⇔ - ... wtedy i tylko wtedy, kiedy ... (równoważność)

Kwantyfikatory:

∃∃∃∃ - istnieje (kwantyfikator szczegółowy, egzystencjalny)

∀∀∀∀ - dla każdego (kwantyfikator ogólny)

Zbiory:

- zbiór liczb rzeczywistych, - zespolonych,

= 0, 1, 2, ... - zbiór liczb naturalnych,

= ..., −2, −1, 0, 1, 2, ... - zbiór liczb całkowitych,

= 0, 1 - zbiór „binarny”, ∅ - zbiór pusty,

a1, ..., an - zbiór składający się z n elementów a1, ..., an

a - zbiór jednoelementowy zawierający tylko a,

x ∈ X : W(x) - zbiór tych elementów zbioru X, dla których

funkcja zdaniowa W(x) ma wartość „prawda”,

∪∪∪∪ - suma zbiorów, ∩∩∩∩ - iloczyn zbiorów, \ - różnica zbiorów,

⊗⊗⊗⊗ - różnica symetryczna zbiorów: A ⊗ B = (A \ B) ∪ (B \ A)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (1) J.Sikorski Strona 3 / 6

C = A B∪

A B

C = A B∩

B

C = A B\ C = A B⊗

A B

A A B

⊆⊆⊆⊆ - zawieranie się zbiorów: A ⊆ B (A jest zawarty w B)

⊂⊂⊂⊂ - właściwe zawieranie się: A ⊂ B

(A jest podzbiorem właściwym zbioru B) ∀∀∀∀ A: A ⊆ A, ale A ⊄ A

(A) - zbiór wszystkich podzbiorów zbioru A;

∀∀∀∀ A: ∅∅∅∅ ⊆ A ⇒⇒⇒⇒ ∀∀∀∀ A: ∅∅∅∅ ∈ (A) oraz ∀∀∀∀ A: A ∈ (A)

| A | - liczność (moc) zbioru A, np. | a1, a2, a3 | = 3

( a, b ) - para uporządkowana: a - poprzednik, b - następnik

A × B - iloczyn kartezjański zbiorów A i B:

A × B = (a, b) : a ∈ A ∧ b ∈ B

( a1, ..., an ) - n-tka uporządkowana (wektor n-elementowy)

A1 × ... × An - iloczyn kartezjański zbiorów A1, ..., An A1 × ... × An = ( a1, ..., an ) : a1 ∈ A1 ∧ ... ∧ an ∈ An

Funkcje i operacje:

Q =

falszywejest Q zdanie jesli 0,

prawdziwejest Q zdanie jesli , 1 - „binarna wartość zdania”,

xyZyx ≤∈= :max - „podłoga”; xyZyx ≥∈= :min - „sufit”

yxyxyx ⋅−=mod - „modulo”, czyli reszta z dzielenia x przez y

x, y ∈ , y ≠ 0

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (1) J.Sikorski Strona 4 / 6

Relacja binarna

R ⊆ A × B

(relacja dwuczłonowa w iloczynie kartezjańskim zbiorów A i B)

A

B

A Bx( , ) x y R∈

Relacja binarna na zbiorze A: R ⊆ A × A

to, że elementy a i b są w relacji, zapisujemy: (a, b) ∈ R lub aRb

Dziedzina relacji R : a ∈ A : ( ∃ b ∈ B : ( a, b ) ∈ R)

- zbiór poprzedników par należących do R

Przeciwdziedzina relacji R : b ∈ B : ( ∃ a ∈ A : ( a, b ) ∈ R)

- zbiór następników par należących do R

Przykład relacji

A = 1, 2, 3, 4, 5 , B = 1, 2, 1, 4

R - relacja przynależności do zbioru

R = (1, 1, 2), (1, 1, 4), (2, 1, 2), (4, 1, 4) ⊆ A × B

dziedzina relacji R : 1, 2, 4

przeciwdziedzina relacji R : 1, 2, 1, 4

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (1) J.Sikorski Strona 5 / 6

graf relacji:

1

2

3

4

1, 2

1, 4

tablica relacji:

1

2

3

4

1, 2 1, 4

1

1

1

1

Relacja (binarna) R na zbiorze X jest:

• zwrotna, jeśli ∀ x ∈ X : xRx

• przechodnia, jeśli ∀ x, y, z ∈ X : ( xRy ∧ yRz ) ⇒ xRz

• symetryczna, jeśli ∀ x, y ∈ X : xRy ⇒ yRx

• antysymetryczna, jeśli ∀ x, y ∈ X : ( xRy ∧ yRx ) ⇒ x = y

Relację zwrotną, przechodnią i symetryczną

nazywamy relacją równoważności

typowe oznaczenie: ≈≈≈≈ , np. a ≈ b

Przykład relacji równoważności w zbiorze liczb rzeczywistych

dla x, y ∈ relacja x ≈ y zachodzi wtedy i tylko wtedy,

gdy x − y ∈ (różnica jest liczbą całkowitą)

Relację zwrotną, przechodnią i antysymetryczną

nazywamy relacją porządkuj ącą zbiór X

typowe oznaczenie: ¹ , np. a ¹ b

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (1) J.Sikorski Strona 6 / 6

Przykłady relacji porządkujących

Relacja podzielności w zbiorze : aRb ⇔ a jest podzielnikiem b

Relacja zawierania w zbiorze (X) : ARB ⇔ A ⊆ B

Pierwsze pytania „kombinatoryczne”:

• Ile jest relacji binarnych w iloczynie kartezjańskim X × Y ,

jeśli | X | = n i | Y | = m ?

• Ile jest relacji binarnych na zbiorze | X | = n ?

• Ile jest zwrotnych relacji binarnych na zbiorze | X | = n ?

• Ile jest (anty)symetrycznych relacji binarnych na zbiorze | X | = n ?

Funkcja f : X →→→→ Y

to taka relacja R ⊆ X × Y, że dla każdego x ∈ X istnieje

dokładnie jedna para postaci ( x, y = f (x) ) ∈ R

Fun(X, Y) – zbiór wszystkich funkcji z X w Y

Dla dowolnych zbiorów A ⊆ X i B ⊆ Y definiujemy:

f (A) = y ∈ Y : ∃ x ∈ A : y = f (x) (obraz zbioru A)

f −1(B) = x ∈ X : f (x) ∈ B (przeciwobraz zbioru B)

• o funkcji f : X → Y mówimy, że jest „na” jeśli f ( X ) = Y

Sur(X, Y) – zbiór wszystkich funkcji z X na Y (surjekcji )

• funkcja jest różnowartościowa (wzajemnie jednoznaczna), jeśli

∀ a, b ∈ X a ≠ b ⇒ f (a) ≠ f (b)

Inj(X, Y) – zbiór wszystkich funkcji różnowart. z X w Y (injekcji )

Bij(X, Y) = Sur(X, Y) ∩ Inj(X, Y) – zbiór wszystkich bijekcji z X na Y

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (2) J.Sikorski Strona 1 / 7

Zasada równoliczności

Bij(X, Y) ≠ ∅ ⇒ | X | = | Y |

Przykład zastosowania zasady

X – zbiór wszystkich rozmieszczeń n jednakowych przedmiotów

w k ponumerowanych pojemnikach,

Y – zbiór wszystkich wektorów binarnych (ai ∈ 0, 1 ) o n+k–1

składowych, z których n jest równych 0

| X | ? | Y |

Zasada włączania-wyłączania

Dla 2 zbiorów: | A ∪ B | = | A | + | B | − | A ∩ B |

Dla 3 zbiorów: | A ∪ B ∪ C | =

| A | + | B | + | C | − | A ∩ B | − | A ∩ C | − | B ∩ C | + | A ∩ B ∩ C |

A1 A2

A3

A1 A2

A3

A A∩1 2

A1 A2

A3

A A∩2 3

A1 A2

A3

A A∩1 3 A A A∩ ∩1 2 3

A1 A2

A3

A A A∪ ∪1 2 3

Dla n zbiorów: | A1 ∪ A2 ∪ ... ∪ An | = ?

Twierdzenie (zasada włączania-wyłączania)

...||||||1111

−∩∩+∩−= ∑∑∑≤<<≤≤<≤== nkji

kjinji

ji

n

ii

n

ii AAAAAAAU

... + (−1)n−1| A1 ∩ ... ∩ An |

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (2) J.Sikorski Strona 2 / 7

Przykłady zastosowania zasady włączania-wyłączania (prosty)

Zbadano 50 samochodów wykonując testy na poziom zawartości

trzech grup zanieczyszczeń: NOx, HC, CO;

1 samochód nie spełnia żadnej z trzech norm, 3 samochody

przekroczyły poziom NOx i HC, 2 samochody przekroczyły poziom

NOx i CO, 1 samochód przekroczył poziom HC i CO, 6 samochodów

ma zbyt wysoki poziom NOx, 4 samochody maja zbyt wysoki poziom

HC a 3 samochody maja zbyt wysoki poziom CO.

Ile samochodów spełnia wszystkie testowane normy?

A – zbiór samochodów, które przekroczyły poziom NOx ,

B – zbiór samochodów, które przekroczyły poziom HC ,

C – zbiór samochodów, które przekroczyły poziom CO ;

| A | = 6 , | B | = 4 , | C | = 3 ,

| A ∩ B | = 3 , | A ∩ C | = 2 , | B ∩ C | = 1 ,

| A ∩ B ∩ C | = 1

| zbiór samochodów, które nie spełniają co najmniej jednej normy| =

| A ∪ B ∪ C | = 6 + 4 + 3 – 3 – 2 –1 + 1 = 8

| zbiór samochodów, które spełniają wszystkie normy| = 50 – 8 = 42

Zasada szufladkowa

Twierdzenie (Dirichlet)

Dla skończonych zbiorów X i Y , takich że | X | > r ⋅ | Y | dla r > 0 :

dla każdej funkcji f ∈ Fun(X, Y) warunek | f −1( y) | > r jest

spełniony dla co najmniej jednego y ∈ Y.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (2) J.Sikorski Strona 3 / 7

J. Lejeune Dirichlet (1805 – 1869)

Dla r = 1:

jeśli chowamy do szuflad więcej przedmiotów niż mamy szuflad, to w

co najmniej jednej szufladzie znajdzie się więcej niż jeden przedmiot.

Przykład zastosowania zasady szufladkowej (mało ambitny)

W aglomeracji warszawskiej mieszkają co najmniej 4 osoby o tej

samej liczbie włosów na głowie.

Zliczanie funkcji

Dane są dwa zbiory X i Y o licznościach | X | = n i | Y | = m .

| Fun(X, Y) | = ?

Ile jest funkcji f : X → Y?

Interpretacja

Na ile sposobów można rozmieścić n ponumerowanych przedmiotów

w m ponumerowanych pudełkach?

X - zbiór przedmiotów, Y - zbiór pudełek,

każda funkcja f : X → Y określa pewne rozmieszczenie przedmiotów

w pudełkach przez wskazanie dla każdego przedmiotu x ∈ X pudełka

f (x) ∈ Y, w którym ten przedmiot zostaje umieszczony

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (2) J.Sikorski Strona 4 / 7

1

2

3

4

5

n

1 = (3)f

2 = (1) = (4)f f

3 = ( )f n

m f f = (2) = (5)

X Y

f :

4

Elementy w skończonych zbiorach X i Y można ponumerować

i przyjmować, że X = 1, 2, ..., n i Y = 1, 2, ..., m

Twierdzenie

Jeśli | X | = n i | Y | = m, to liczba wszystkich funkcji f : X → Y

jest równa m n ; | Fun(X, Y) | = m n

9

8

7

6

5

4

3

2

11

2

3

4

5

6

7

8

9

1 2 3 4 5 6 7 8 9

... ...

...

mn

1

1

1

1

1

1

1

1

1

1

81

64

49

36

25

16

9

4

729

512

343

216

125

64

27

6561

4096

2401

1296

625

256

59049

32768

16807

7776

3125

531441

262144

117649

46656

1 1 1 1 1 1 1 1

8

81

16

1024

243

32

15625

4096

729

64

4782969

2097152

823543

279936

78125

16384

2187

128

43046721

16777216

5764801

1679616

390625

65536

6561

256

387420489

134217728

40353607

10077696

1953125

262144

19683

512

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (2) J.Sikorski Strona 5 / 7

Zliczanie injekcji

Dane są dwa zbiory X i Y o licznościach | X | = n i | Y | = m (n ≤ m).

| Inj(X, Y) | = ?

Ile jest funkcji różnowartościowych f : X → Y ?

Interpretacja

Na ile sposobów można rozmieścić n ponumerowanych przedmiotów

w m ponumerowanych pudełkach, tak aby w żadnym pudełku nie był

więcej niż 1 przedmiot?

Twierdzenie

Jeśli | X | = n , | Y | = m i n ≤ m to liczba wszystkich funkcji

różnowartościowych (injekcji) f : X → Y jest równa

m⋅( m −−−− 1)⋅ ... ⋅( m −−−− n + 1 ) = m n ; | Inj(X, Y) | = m n

9

8

7

6

5

4

3

2

11

2

3

4

5

6

7

8

9

1 2 3 4 5 6 7 8 9

... ...

...

mn

1

1

1

1

1

1

1

1

1

1

72

56

42

30

20

12

6

2

504

336

210

120

60

24

6

3024

1680

840

360

120

24

15120

6720

2520

720

120

60480

20160

5040

720

181440

40320

5040

362880

40320

362880

1010 1 90 720 5040 3024015120060480018144003628800

10

3628800

Przyjmując formalne oznaczenie symbolu potęgi ubywającej:

m n = m⋅( m −−−− 1)⋅ ... ⋅( m −−−− n + 1 ) , dookreślamy jego wartość m 0 = 1

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (2) J.Sikorski Strona 6 / 7

Jeśli m = n , to każda funkcja różnowartościowa f : X → Y jest

wzajemnie jednoznacznym odwzorowaniem zbioru X na zbiór Y.

m = n ⇒ | Inj(X, Y) | = | Sur(X, Y) | = | Bij(X, Y) |

Permutacja

Permutacją zbioru X nazywamy wzajemnie jednoznaczne odwzorowanie

(bijekcję) f : X → X .

| Bij(X, X) | = n n = n⋅⋅⋅⋅( n −−−− 1)⋅⋅⋅⋅ ... ⋅⋅⋅⋅1 = n! , dla | X | = n

Twierdzenie

Liczba permutacji zbioru n-elementowego jest równa n!

Zasada mnożenia

Jeżeli rozważane są funkcje f : X → Y ,

dla których X = X1∪ X2 i Y = Y1∪ Y2 oraz spełnione są warunki

X1∩ X2 = ∅, f ( X1) ⊆ Y1 i f ( X2) ⊆ Y2 ,

to | Fun(X, Y) | = | Fun(X1, Y1) | ⋅ | Fun(X2, Y2) |

Jeżeli ponadto Y1∩ Y2 = ∅,

to | Inj(X, Y) | = | Inj(X1, Y1) | ⋅ | Inj(X2, Y2) |

Zliczanie rozmieszczeń uporządkowanych

Interpretacja

Na ile sposobów można rozmieścić n ponumerowanych przedmiotów

w m ponumerowanych pudełkach, jeśli dodatkowo rozróżniamy

uporządkowanie przedmiotów, które trafiły do tego samego pudełka?

Dwa rozmieszczenia są identyczne, jeśli w każdym pudełku jest taka

sama liczba i kolejność przedmiotów.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (2) J.Sikorski Strona 7 / 7

Twierdzenie

Liczba rozmieszczeń uporządkowanych n przedmiotów

w m pudełkach jest równa m n = m⋅( m ++++ 1)⋅ ... ⋅( m ++++ n −−−− 1 )

(symbol m n nazywa się potęgą przyrastającą)

9

8

7

6

5

4

3

2

11

2

3

4

5

6

7

8

9

1 2 3 4 5 6 7 8 9

... ...

...

mn

1

1

1

1

1

1

1

1

1

1

90

72

56

42

30

20

12

6

990

720

504

336

210

120

60

11880

7920

5040

3024

1680

840

154440

95040

55440

30240

15120

2162160

1235520

665280

332640

2 6 24 120 720 5040 40320 362880

24

360

120

6720

2520

720

151200

60480

20160

5040

32432400

17297280

8648640

3991680

1663200

604800

181440

40320

518918400

259459200

121080960

51891840

19958400

6652800

1814400

3628800

8821612800

4151347200

1816214400

726485760

259459200

79833600

19958400

3628800

Przykład rozmieszczania uporządkowanego

X = a, b , | X | = 2, | Y | = 3

a b1

b a1

a1

b1

a1

b1

b2

a2

b3

a3

2

2

2

2

3

3

3

3 a

b

a b

b a

b

a

a b

b a

1

1

1

1

1

1

2

2

3

3

2

2

2

2

3

3

3

31.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

32 = 3 ⋅ 4 = 12

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 1 / 11

PERMUTACJE

Permutacją zbioru n-elementowego X nazywamy każdą

wzajemnie jednoznaczną funkcj ę f : X →→→→ X

|Bij(X, X)| = n! , dla | X | = n

n n! 0 1 1 1 2 2 3 6 4 24 5 120 6 720 7 5040 8 40320 9 362880

10 3628800 11 39916800 12 479001600 13 6227020800 14 87178291200 15 1307674368000 16 20922789888000 17 355687428096000 18 6402373705728000 19 121645100408832000 20 2432902008176640000

Przykład permutacji

dla X = a, b, c, d : f (a) = d, f (b) = a, f (c) = c, f (d) = b

Zapis permutacji w postaci tablicy: fa b c d

d a c b=

,

w górnym wierszu - elementy zbioru X w dowolnej kolejności,

w dolnym wierszu - pod elementem x ∈ X wypisujemy f (x).

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 2 / 11

Jeśli uporządkujemy elementy w górnym wierszu tablicy, to danej

permutacji odpowiada jednoznacznie wektor z dolnego wiersza,

składający się z elementów zbioru X: ( d, a, c, b )

Zatem dowolny wektor n-elementowy, zawierający różne elementy

zbioru X (dla |X| = n), możemy także nazywać permutacją zbioru X.

Przyjmujemy dalej dla uproszczenia, że X = 1, 2, 3, ..., n

Sn - zbiór wszystkich permutacji zbioru 1, 2, ..., n

Każdy element f ∈∈∈∈ Sn identyfikujemy z wektorem (a1, ..., an ),

gdzie ai = f (i) lub zapisujemy w postaci tablicy:

fn

a a an

=

1 2

1 2

...

...

Definicja

Złożeniem permutacji f i g nazywamy permutację f g , taką że

f g (i) = ( )f g i( )

(jest to po prostu złożenie funkcji, gdzie g jest funkcją wewnętrzną)

Przykład złożenia permutacji

f =

1 2 3 4 5

5 3 2 1 4, g =

1 2 3 4 5

2 5 3 1 4

f g =

1 2 3 4 5

3 4 2 5 1

Definicja

Permutację en

n=

1 2

1 2

...

... nazywamy permutacją identycznościową

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 3 / 11

Permutacja e ∈ Sn jest elementem neutralnym dla operacji złożenia:

∀ f ∈ Sn : e f = f e = f

Definicja

Permutacją odwrotną do f ∈ Sn nazywamy permutację f -1 ∈ Sn ,

taką że : f -1 f = e

fi

j=

... ...

... ... f

j

i− =

1 ... ...

... ...

Dla każdej permutacji f zachodzi: f -1 f = f f -1 = e

Rozważmy trzy dowolne permutacje f, g, h ∈ Sn :

fk

l=

... ...

... ..., g

j

k=

... ...

... ..., h

i

j=

... ...

... ...

f ghi

l( )

... ...

... ...=

i ( )

... ...

... ...fg h

i

l=

zatem zachodzi f ( g h ) = ( f g ) h (łączność złożenia)

Dla dowolnych permutacji f, g, h ∈ Sn spełnione są zależności:

f ( g h ) = ( f g ) h

f e = e f = f

f -1 f = f f -1 = e

Zbiór permutacji Sn jest zatem grupą ze względu na działanie

złożenia (grupą symetryczną stopnia n)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 4 / 11

Dowolny podzbiór G ⊆ Sn spełniający warunki:

f, g ∈ G ⇒ f g ∈ G

f ∈ G ⇒ f -1 ∈ G

nazywany jest grupą permutacji stopnia n

Przykłady grup permutacji stopnia 3

G1 = 1 2 3

1 2 3

1 2 3

2 1 3

1 2 3

1 3 2

1 2 3

3 2 1

1 2 3

2 3 1

1 2 3

3 1 2

, , , , , ,

G2 =

312

321,

321

321.

GRAFICZNA REPREZENTACJA PERMUTACJI

f =

1 2 3 4 5

5 3 2 1 4

1

4 5

2

3

Permutacja przedstawiana jest w formie grafu skierowanego

o zbiorze wierzchołków X = 1, ..., n , w którym:

• z wierzch. l ∈ X wychodzi dokładnie jeden łuk do wierzch. f (l),

• do wierzch. l ∈ X dochodzi dokładnie jeden łuk z wierzch. f -1(l).

Graf każdej permutacji składa się z pewnej liczby fragmentów, z

których każdy jest zamkniętą skierowaną drogą, prowadzącą przez

pewien podzbiór wierzchołków grafu.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 5 / 11

Definicja

Permutacją f ∈ Sn nazywamy cyklem wyznaczonym przez ciąg

różnowartościowy (1ia ,

2ia , ..., kia ) o wyrazach ze zbioru 1, ..., n

dla 1 ≤ k ≤ n , jeśli:

• 21

)( ii aaf = , 32

)( ii aaf = , ..., 1

)( ii aafk

=

• jj aaf =)( dla j ≠ 1i , 2i , ..., ki

ai1 ai 2 aik aik+1 ain

Cykl oznaczamy symbolem [1ia ,

2ia , ..., kia ] (k jest jego długością)

np.

f 1 = [1, 5, 4] i f 2 = [2, 3]

ROZKŁAD PERMUTACJI NA CYKLE

Każdą permutację f ∈ Sn można przedstawić w postaci złożenia m

rozłącznych cykli ( 1 ≤ m ≤ n ) o długościach n1, ..., n m

( n1 + ... + n m = n ).

Przykład rozkładu permutacji na cykle

f =

1 2 3 4 5

5 3 2 1 4

f = f 1 f 2 , gdzie f11 2 3 4 5

5 2 3 1 4=

i f2

1 2 3 4 5

1 3 2 4 5=

Zapisujemy: f 1 = [ 1, 5, 4 ] , f 2 = [ 2, 3 ] i f = [ 1, 5, 4 ] [ 2, 3 ]

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 6 / 11

Definicja

Mówimy, że permutacja jest typu (λλλλ1, λλλλ2, ..., λλλλn) , jeśli zawiera w

rozkładzie na rozłączne cykle dokładnie λλλλi cykli o długości i

dla i = 1, 2, ..., n.

Typ permutacji często zapisujemy w postaci:

1 21 2λ λ λ... n n

( symbol i iλ pomijamy w zapisie, jeśli λi = 0 )

Przykład oznaczania typu permutacji

f =

1 2 3 4 5 6 7 8 9

7 5 1 4 2 3 6 9 8

(1 krok) rozkład na cykle: f = [ 1, 7, 6, 3 ] [ 2, 5 ] [ 4 ] [ 8, 9 ] ;

zatem typ permutacji: 11 22 41

Definicja

Parę ( a i , a j ), dla i < j ≤ n, nazywamy inwersją permutacji

( a1, a2, ..., a n ), jeśli a i > a j .

Liczbę wszystkich inwersji w permutacji f ∈ Sn oznaczamy I( f )

Definicja

Znakiem permutacji f ∈ Sn nazywamy liczbę sgn( ) ( ) ( )f I f= −1 .

Definicja

Permutację f ∈ Sn nazywamy parzystą, jeśli sgn( f ) = 1, albo nieparzystą, jeśli sgn( f ) = −1.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 7 / 11

Przykład wyznaczania znaku permutacji

f =

1 2 3 4 5

5 3 2 1 4

inwersje f : (5, 3), (5, 2), (5, 1), (5, 4), (3, 2), (3, 1), (2, 1) ;

zatem I( f ) = 7 ; znak permutacji sgn( f ) = (−1)7 = −1 .

g =

1 2 3 4 5

3 1 4 5 2

inwersje g : (3, 1), (3, 2), (4, 2), (5, 2) ;

zatem I( g ) = 4 ; znak permutacji sgn( g ) = (−1)4 = 1 .

Definicja

Permutację, która jest cyklem o długości 2, nazywamy transpozycją.

Przykład transpozycji

f =

1 2 3 4 5

1 2 5 4 3 = [ 3, 5 ]

Lemat

Dowolną permutację f ∈ Sn można przedstawić w postaci złożenia

I( f ) transpozycji sąsiednich elementów

(tzn. transpozycji postaci [ i, i+1 ] )

Przykład rozkładu na transpozycje

f =

1 2 3 4 5

3 1 4 5 2, I( f ) = 4 i f = [2, 3] [3, 4] [4, 5] [1, 2]

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 8 / 11

Lemat

Znak dowolnego cyklu o długości k jest równy (−1) k−1

Wniosek

Każda transpozycja jest permutacją nieparzystą.

Lemat

Dla dowolnych permutacji f , g ∈ Sn sgn( f g ) = sgn( f ) ⋅ sgn( g ).

Przykład wyznaczania znaku permutacji z zastosowaniem lematu

f =

1 2 3 4 5 6 7 8 9

7 5 1 4 2 3 6 9 8

rozkład na rozłączne cykle: f = [ 1, 7, 6, 3 ] [ 2, 5 ] [ 4 ] [ 8, 9 ]

znaki poszczególnych cykli: sgn([1, 7, 6, 3]) = (−1)3 = −1,

sgn([2, 5]) = (−1)1 = −1, sgn([4]) = (−1)0 = 1, sgn([8, 9]) = (−1)1 = −1

zatem znak permutacji sgn( f ) = (−1)⋅(−1)⋅1⋅(−1) = −1

i permutacja jest nieparzysta

Twierdzenie

Znak dowolnej permutacji f ∈ Sn , która jest typu 1 21 2λ λ λ... n n

wyraża się wzorem

sgn( ) ( )fj

j

n

= −∑=1

21

2

λ

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 9 / 11

Przykład wyznaczania znaku permutacji na podstawie twierdzenia

f =

1 2 3 4 5 6 7 8 9

7 5 1 4 2 3 6 9 8; n = 9 , n 2 4 5 4= =,

rozkład na cykle: f = [ 1, 7, 6, 3 ] [ 2, 5 ] [ 4 ] [ 8, 9 ]

typ permutacji: 11 22 41

sgn( ) ( ) ( )fj

j= −∑

= −= + + +1 12

1

4

2 4 6 8

λλ λ λ λ = (−1)2+1 = −1

i permutacja jest nieparzysta.

PODZBIORY ZBIORU

X = x1, ..., xn , (X) - zbiór wszystkich podzbiorów zbioru X

dla dowolnego podzbioru Y ∈ (X) wyznaczamy jego wektor

charakterystyczny ξ( Y ) = ( b1, b2, ..., bn ) według wzoru:

bx Y

x Yii

i

=∈∉

1

0

jeśli

jeśli , dla i = 1, ..., n

(ξ - grecka litera ksi)

• dowolny wektor ( b1, b2, ..., bn ), gdzie bi ∈ 0, 1 ,

jednoznacznie wyznacza pewien podzbiór zbioru X

• wektor charakterystyczny może być utożsamiony z funkcją

f : 1, 2, ..., n → 0, 1 ⇒ | (X) | = 2n

Liczba wszystkich podzbiorów zbioru n-elementowego wynosi n2

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 10 / 11

Wyznaczanie wszystkich podzbiorów zbioru X

1 sposób:

wystarczy zauważyć, że wektorowi charakterystycznemu ( b1, ..., bn ),

gdzie bi ∈ 0, 1 , odpowiada liczba z przedziału [ 0; n2 − 1 ]

Przykład

X = a, b, c, d, e , n = 5, Y = b, d, e ⊆ X ,

ξ( Y ) = ( 0, 1, 0, 1, 1 )

01011(2) = 0⋅24 + 1⋅23 + 0⋅22 + 1⋅21 + 1⋅20 = 8 + 2 + 1 = 11(10) ∈ [0; 31]

Zatem wypisując po kolei wszystkie liczby z przedziału [ 0; n2 − 1 ]

w systemie dwójkowym można wskazać wszystkie podzbiory zbioru

n-elementowego.

2 sposób (binarny kod Gray’a rzędu n):

kod rzędu n jest ciągiem n-elementowych wektorów binarnych o

długości n2 , w którym każdy kolejny wektor różni się od

poprzedniego tylko jedną współrzedną.

Dla dowolnego naturalnego n ≥ 1 kod Gray’a można wyznaczać

rekurencyjnie :

• dla n = 1 ciąg składa się z dwoch jednoelementowych wektorów

binarnych:

C1 = ( 0 ) i C2 = ( 1 )

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (3) J.Sikorski Strona 11 / 11

• jeśli dla n > 1 mamy wyznaczony ciąg n-elementowych wektorów

binarnych C1, C2, ..., Cm (m = n2 ), w których dwa sąsiednie

wektory różnią się dokładnie jedną współrzędną, to tworzymy ciąg

wektorów binarnych (n+1)-elementowych według schematu:

(C1, 0), (C2, 0), ..., (Cm−1, 0), (Cm, 0), (Cm, 1), (Cm−1, 1), ..., (C1, 1)

Przykład

n = 1 : 0 1

n = 2 : 00 10 11 01

n = 3 : 000 100 110 010 011 111 101 001

n = 4 : 0000 1000 1100 0100 0110 1110 1010 0010

0011 1011 1111 0111 0101 1101 1001 0001

n = 5 : 00000 10000 11000 01000 01100 11100 10100 00100

00110 10110 11110 01110 01010 11010 10010 00010

00011 10011 11011 01011 01111 11111 10111 00111

itd. 00101 10101 11101 01101 01001 11001 10001 00001

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 1 / 9

PODZBIORY k-ELEMENTOWE

X = x1, ..., xn

Przyjmijmy dla dowolnego naturalnego k oznaczenie:

n

k

- liczba wszystkich podzbiorów k-elementowych zbioru

n-elementowego (współczynnik dwumianowy)

Symbol n

k

występuje w tzw. wzorze dwumianowym:

( )x yn

ix yn i n i

i

n

+ =

=∑

0

Twierdzenie

k

knnn

knk

n

k

n

k

n k

⋅⋅⋅+−−=

−==

...21

)1(...)1(

)!(!

!

!

Tożsamości spełnione przez współczynniki dwumianowe:

n

ii

nn

=

=∑

0

2 n

ii n

i

nn

=

=

−∑0

12

n

k

n

n k

=

n

k

n

k

n

k

=

+

−−

1 1

1

W tzw. trójkącie Pascala i-ty wiersz zawiera kolejno i

0

,

i

1

, ...,

i

i

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 2 / 9

„Trójk ąt Pascala”

000

0000

00

0000

000

00

0 0 0

0

00

0

000

00

0

924 792792 495495 220220 6666 1212 111

11

11

11

11

11

1

11111111111

23 3456789

65

4

67

89

1011

1011

10 1015 152021 2135 3528 2856 567036 3684 84126 1264555

4555

120 120210 210252165 462 330462 165330

0 0

0 00 0

000000000

0000 0000000 0000000 0000000 0000 000n = 0

1

2

3

4

5

6

7

8

9

10

11

12

k = 0 1 2 3 4 5 6 7 8 9 10 11 12

... ...

...

nk

Interpretacja współczynnika dwumianowego na kracie:

A

B

n k = 7−

k = 4

Najkrótsza droga z A do B jest sekwencją n = 11 odcinków

z k = 4 pionowymi

A Bn = 11

Podzbiór k odcinków pionowych z n tworzących taką drogę można

wybrać na

k

n =

4

11 sposobów

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 3 / 9

A

B

n k = 7−

k = 4

Najkrótsza droga z A do B jest sekwencją n = 11 odcinków

z n – k = 7 pionowymi

A Bn = 11

Podzbiór n – k odcinków pionowych z n tworzących taką drogę można

wybrać na

− kn

n =

7

11 sposobów

Ponieważ najkrótszych dróg jest tyle samo, to n

k

n

n k

=

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 4 / 9

n k = 7−

k = 4

A

BC

D

k 1 = 3−

n k 1 = 6− −

liczba najkrótszych dróg z A do C

=

−=

4

101

k

nPC

A

liczba najkrótszych dróg z A do D

=

−−

=3

10

1

1

k

nPD

A

zbiór najkrótszych dróg z A do B

DA

CA

BA PPP ∪= , gdzie ∅=∩ D

ACA PP

Zatem

+

=+==

3

10

4

10

4

11 DA

CA

BA PPP

n

k

n

k

n

k

=

+

−−

1 1

1

A

B

1 1 1 1 1 1 1 1

1

1

1

1

2 3 4 5 6 7 8

3

4

5

6 10

10 20

15

15 21

35

35 70

56

28 36

84 120

126210330

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 5 / 9

W tzw. trójkącie Pascala i-ty wiersz zawiera kolejno i

0

,

i

1

, ...,

i

i

000

0000

00

0000

000

00

0 0 0

0

00

0

000

00

0

924 792792 495495 220220 6666 1212 111

11

11

11

11

11

1

11111111111

23 3456789

65

4

67

89

1011

1011

10 1015 152021 2135 3528 2856 567036 3684 84126 1264555

4555

120 120210 210252165 462 330462 165330

0 0

0 00 0

000000000

0000 0000000 0000000 0000000 0000 000n = 0

1

2

3

4

5

6

7

8

9

10

11

12

k = 0 1 2 3 4 5 6 7 8 9 10 11 12

... ...

...

nk

n

k

n

k

n

k

=

+

−−

1 1

1

Blaise Pascal (1623 – 1662)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 6 / 9

Współczynnik wielomianowy

Rozbicie zbioru X na m podzbiorów o zadanych liczbach elementów k1, k2, ..., km

mXXXX ∪∪∪= ...21

∅=∩ ji XX dla 1 ≤ i < j ≤ m ; ii kXnX == ,

mkkk

n

...21- liczba wszystkich rozbić zbioru n-elementowego

Twierdzenie

!...!!!

... mm kkk

n

kkk

n

⋅⋅⋅=

2121

Dowód

Podzbiór X1 można wybrać na

1k

n sposobów,

następnie podzbiór X2 można wybrać na

2

1

k

kn sposobów,

następnie podzbiór X3 można wybrać na

−−

3

21

k

kkn sposobów,

...

i w koncu podzbiór Xm można wybrać na

−−− −

m

m

k

kkn 11 ... sposobów.

Zatem

!...!!!...

...... mm

m

m kkk

n

k

kkn

k

kn

k

n

kkk

n

⋅⋅⋅=

−−−⋅⋅

−⋅

=

21

11

2

1

121

Przykład wyznaczania wartości wsp. wielomianowego

!!!!!

!!!

!!!

!!!

!!!

223411

022

224

437

7411

2

2

2

4

3

7

4

11

2234

11

⋅⋅⋅=

⋅⋅

⋅⋅

⋅⋅

⋅=

=

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 7 / 9

ZBIORY Z POWTÓRZENIAMI

W zbiorze z powtórzeniami ten sam element może występować

kilkakrotnie.

Liczbę wystąpień nazywamy krotnością tego elementu w zbiorze

X = x1, ..., xn - zbiór

k1, ..., kn - krotności elementów

A = < k1∗x1, ..., kn∗xn > - zbiór z powtórzeniami

Przykład zbioru z powtórzeniami

X = a, b, c ka = 2, kb = 1, kc = 3

Zbiór z powtórzeniami: A = < 2∗a, 1∗b, 3∗c > = < a, a, b, c, c, c >

Liczność zbioru z powtórzeniami: | A | = k1 + ... + kn

Podzbiór zbioru z powtórzeniami jest wyznaczany przez wektor

n-elementowy (m1, ..., mn ), w którym

0 ≤ m1 ≤ k1, . . . , 0 ≤ mn ≤ kn

Zatem liczba podzbiorów zbioru z powtórzeniami o krotnościach

k1, k2,..., kn jest równa ( k1 + 1) ⋅ ( k2 + 1) ⋅ ... ⋅ ( kn + 1)

Twierdzenie

Liczba k-elementowych podzbiorów zbioru z powtórzeniami

< k∗x1, ..., k∗xn > jest równa

−+=

k

kn

k

nk 1

!

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 8 / 9

Dowód

Rozważmy rozmieszczenie uporządkowane k obiektów w n pudełkach.

Liczba takich rozmieszczeń jest równa kn = n⋅( n + 1)⋅...⋅( n + k − 1).

Każde takie rozmieszczenie wyznacza wektor n-elementowy (r1, ..., rn ),

dla którego zachodzi r1 + ... + rn = k , gdzie r i jest liczbą obiektów w

pudełku i.

Wektor (r1, ..., rn ) odpowiada k-elementowemu podzbiorowi

< r1∗x1, ..., rn∗xn > ⊆ < k∗x1, ..., k∗xn >

Ponadto k! rozmieszczeń wyznacza ten sam podzbiór k-elementowy,

a zatem liczba różnych podzbiorów k-elementowych zbioru z

powtórzeniami o wszystkich krotnościach równych k wynosi

−+=

−−+=−+⋅⋅+⋅=

k

kn

nk

kn

k

knnn

k

nk 1

)!1(!

)!1(

!

)1(...)1(

!

Przykład zastosowania twierdzenia

Wyznaczanie liczby całkowitych nieujemnych rozwiązań linowego

równania diofantycznego: x1 + x2 + ... + xn = k

Każde rozwiązanie odpowiada k-elementowemu podzbiorowi

< x1∗z1, ..., xn∗zn > zbioru < k∗z1, ..., k∗zn >.

Zatem liczba rozwiązań wynosi

−+k

kn 1.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (4) J.Sikorski Strona 9 / 9

Interpretacja równania diofantycznego na kracie:

x1 + x2 + x3 + x4 + x5 = 7

k = 7

x1 x2 x4 x5x3

n 1 = 4−

A

B

x1 = 1, x2 = 0, x3 = 3, x4 = 2, x5 = 1

Każde rozwiązanie równania diofantycznego ma wzajemnie

jednoznacznie przyporządkowaną jedną z najkrótszych dróg z A do B.

Zatem liczba rozwiązań jest równa liczbie najkrótszych dróg:

=

+−=

+−7

11

7

7151

k

kn

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 1 / 11

FUNKCJA TWORZ ĄCA

Nieskończony ciąg liczbowy:

(ak) = a0, a1, a2, ..., ak, ...

możemy przedstawić w postaci szeregu potęgowego:

∑∞

==

0

)(k

kkxaxA

- uzyskujemy formalną reprezentację ciągu za pomocą funkcji A(x)

Funkcję A(x) nazywamy funkcja tworzącą dla ciągu (ak)

W oparciu o funkcje tworzące można zdefiniować operacje na ciągach:

∑∞

==

0

)(k

kkxaxA dla (ak) i ∑

==

0

)(k

kkxbxB dla (bk)

• dodawanie: ∑∞

=+=+

0

)()()(k

kkk xbaxBxA dla (ak + bk)

• mnożenie przez liczbę: ∑∞

=⋅=⋅

0

)(k

kkxapxAp dla (p⋅ak)

• iloczyn Cauchy’go: ∑∞

==⋅

0

)()(k

kkxcxBxA dla (ck)

gdzie ck = a0 bk + a1 bk−1 + ... + ak b0 = ∑=

k

iikiba

0

;

ciąg (ck) = c0, c1, ..., ck, ... nazywamy splotem ciągów (ak) i (bk)

(ck) = (ak)∗(bk)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 2 / 11

Jeżeli szereg ∑∞

=0k

kkxa jest zbieżny w pewnym otoczeniu zera, to jego

suma A(x) jest funkcją analityczną w tym otoczeniu i wtedy

!

)0()(

k

Aa

k

k = dla k = 0, 1, 2, ...

gdzie A(k)(0) jest wartością k-tej pochodnej funkcji A(x) dla x = 0

Jeśli szereg jest zbieżny to jego funkcją tworząca A(x) jest funkcją

analityczną, np.

xx

k

k

−=∑

= 11

0

x

k

k exk

=∑∞

=0 !1

Przykłady funkcji tworzących

1. ciąg współczynników dwumianowych dla ustalonego n

0

n,

1

n,

2

n, ...,

n

n, 0, 0, ...

i jego funkcja tworząca: ∑∑=

=+=

=

n

k

nk

k

k xxk

nx

k

n

00

)1(

2. ciąg 1, −1, 1, −1, ..., (−1)k, ...

i jego funkcja tworząca: ∑∑∞

=

= +=−=−

00 11

)()1(k

k

k

kk

xxx

3. ciąg 1, 2, 4, 8, ..., 2k, ...

i jego funkcja tworząca: ∑∑∞

=

= −==

00 211

)2(2k

k

k

kk

xxx

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 3 / 11

Jeżeli ciąg jest skończony, tzn. ak = 0 dla k > n , to funkcja tworząca

ciągu jest wielomianem A(x) = a0 + a1x + ... + an xn

Funkcja tworząca dla ciągu liczb podzbiorów k-elementowych

Zbiór X = a1, a2, ..., an

↓ ↓ ↓

(x0 + x1) ⋅ (x0 + x1) ⋅ ... ⋅ (x0 + x1)

↓ ↓ ↓

(1 + x) ⋅ (1 + x) ⋅ ... ⋅ (1 + x) = (1 + x)n =∑∞

=

0k

kxk

n

każdy podzbiór zbioru X może być wskazany przez podanie

czy dany element ak ( k = 1, ..., n ) jest w nim zawarty, czy nie:

x0 = 1 – odpowiada brakowi danego elementu (zero wystąpień)

x1 = x – odpowiada wystąpieniu danego elementu (jeden raz)

Podzbiór jest k-elementowy ⇔ w k czynnikach wybrano składnik x1

Zbiór z powtórzeniami:

Z = < 3∗a1, 1∗a2, 2∗a3 >

↓ ↓ ↓

(1 + x + x2 + x3) ⋅ (1 + x) ⋅ (1 + x + x2) = A(x) = ∑∞

=0k

kkxc

Podzbiór jest k-elementowy ⇔ z każdego nawiasu wybrano taki

składnik ikx , że kkkkkkk xxxxx ==⋅⋅ ++ 321321

Zatem ck , to liczba podzbiorów k-elementowych zbioru Z.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 4 / 11

A(x) = (1 + x + x2 + x3) ⋅ (1 + x) ⋅ (1 + x + x2)

= 1 + 3x + 5x2 + 6x3 + 5x4 + 3x5 + x6

⇒ występuje 1 podzbiór pusty, 3 podzbiory jednoelementowe,

5 podzbiorów dwuelementowych, 6 podzbiorów trzyelementowych,

itd.

Przykłady uwzględnienia dodatkowych warunków dla zb. z powtórz.

Z = < 5∗a1, 2∗a2, 4∗a3 >

Funkcja tworząca dla ciągu liczb podzbiorów k-elementowych:

A(x) = (1 + x + x2 + x3 + x4 + x5 ) ⋅ (1 + x + x2 ) ⋅ (1 + x + x2 + x3 + x4 ).

Trzeba wyznaczyć ile jest podzbiorów k-elementowych, w których

a1, a2 i a3 występują nieparzystą liczbę razy.

Modyfikujemy funkcję tworzącą usuwając potęgi o wykładnikach

parzystych:

A*(x) = (x + x3 + x5 ) ⋅ ( x ) ⋅ ( x + x3 ) = x3 + 2 x5 + 2 x7 + x9.

⇒ występuje

1 podzbiór 3-elementowy: < 1∗a1, 1∗a2, 1∗a3 > ,

2 podzbiory 5-elementowe: < 3∗a1, 1∗a2, 1∗a3 > i < 1∗a1, 1∗a2, 3∗a3 >,

2 podzbiory 7-elementowe: < 5∗a1, 1∗a2, 1∗a3 > i < 3∗a1, 1∗a2, 3∗a3 >,

i 1 podzbiór 9-elementowy: < 5∗a1, 1∗a2, 3∗a3 > .

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 5 / 11

PODZIAŁ ZBIORU NA BLOKI

Podziałem zbioru n-elementowego X na k bloków nazywamy

każdą rodzinę zbiorów,

A1 A2 A3

A4 A5

π = A1, ..., Ak , dla której zachodzi

A1 ∪ ... ∪ Ak = X , Ai ∩ Aj = ∅ dla 1 ≤ i < j ≤ k oraz Ai ≠ ∅ , 1 ≤ i ≤ k

A1, ..., Ak - bloki podziału π

Πk(X) - zbiór wszystkich podziałów zbioru X na k bloków

Π(X) - zbiór wszystkich podziałów zbioru X

Π(X) = Π1(X) ∪ ... ∪ Πn(X)

Przykład zbioru podziałów na zadaną liczbę bloków

X = a, b, c, d k = 3 Π3(X):

π 1 = a, b, c, d π 2 = a, b, c, d

π 3 = a, b, c, d π 4 = a, c, b, d

π 5 = a, b, d, c π 6 = a, d, b, c

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 6 / 11

Ile jest podziałów zbioru n-elementowego na k bloków?

Przykład c.d.

X = a, b, c, d , | X | = 4, k = 3

Π3(X) = π 1, π 2, ..., π 6 | Π3(X) | = 6

LICZBY STIRLINGA (drugiego rodzaju)

k

n = | Πk(X) | , dla | X | = n

k

n = 0 , dla k > n . Dodatkowo przyjmujemy, że

0

0 = 1

Wyznaczanie liczb Stirlinga drugiego rodzaju:

n

n = 1 , dla n ≥ 0

0

n = 0 i dodatkowo

1

n = 1 , dla n > 0

Twierdzenie

k

n =

−−

1

1

k

n + k

k

n 1 , dla 0 < k < n

Dowód

Rozważmy zbiór wszystkich podziałów zbioru X = 1, 2, ..., n na

k bloków. Dla dowolnego podziału π ∈ Πk(X) zachodzi jeden z

dwóch rozłącznych przypadków:

• zawiera blok jednoelementowy n albo

• n jest elementem bloku co najmniej dwuelementowego.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 7 / 11

Liczba podziałów w Πk(X), dla których zachodzi przypadek pierwszy,

jest równa liczbie podziałów zbioru n −1 elementowego na k −1

bloków, czyli wynosi

−−

1

1

k

n.

Liczba podziałów, dla których zachodzi przypadek drugi, jest równa

k

k

n 1, ponieważ podziały te otrzymujemy z podziałów zbioru

1, 2, ..., n −1 na k bloków poprzez dodawanie elementu n

kolejno do każdego z bloków takiego podziału.

Oba przypadki są rozłączne, a zatem | Πk(X) | =

−−

1

1

k

n + k

k

n 1.

Ile jest wszystkich podziałów zbioru n-elementowego?

Bn = |Π(X)| dla | X | = n ; ∑=

=

n

kn k

nB

0

; Bn - liczba Bella

Tablica liczb Stirlinga drugiego rodzaju i liczb Bella:

1

1

1

1

1

1

1

1

1

1

n = 0

1

2

3

4

5

6

7

8

9

10

k = 0 1 2 3 4 5 6 7 8 9 10

... ...

...

nk

1

0

0

0

0

0

0

0

0

0

0

511

255

127

63

31

15

7

3

1

9330

3025

966

301

90

25

6

1

34105

7770

1701

350

65

10

1

42525

6951

1050

140

15

1

22827

2646

266

21

1

2114741408772035215

5211

115975 5880

462

28

750

Bn

36

1

1

45

1

1...

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 8 / 11

GENEROWANIE PODZIAŁÓW ZBIORU

Jeśli mamy podział π = A1, ..., Ak na k bloków

dla zbioru 1, ..., n −1 ,

to możemy utworzyć k +1 podziałów zbioru X = 1, ..., n :

A1 ∪ n, A2 , ..., Ak

A1 , A2 ∪ n, ..., Ak . . . A1 , A2 , ..., Ak ∪ n

A1 , A2 , ..., Ak , n

Przykład generowania podziałów zbioru 1, 2, 3

1

1, 2

1, 2, 3

n = 1

1, 2

1, 2, 3 1, 3, 2 1, 2, 3 1, 2, 3

n = 2

n = 3

Tożsamości dla liczb Stirlinga i Bella

dla m, n ∈ zachodzi ∑∑ =−

= ⋅

⋅−=⋅

= n

kkknn

kkn m

k

nm

k

nm

001)(

in

in Bi

nB ⋅

=∑ =+ 01

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 9 / 11

ZWI ĄZEK PODZIAŁU ZBIORU NA BLOKI

Z RELACJĄ RÓWNOWAŻNOŚCI

Każdemu podziałowi π ∈ Π(X) można jednoznacznie przyporząd-

kować relację równoważności E(π) w zbiorze X , definiując ją jako

π∈

×=A

AAE )(

tzn. dwa elementy x, y ∈ X są w relacji E(π), czyli (x, y) ∈ E(π),

wtedy i tylko wtedy, gdy x i y należą do tego samego bloku podziału.

Przykład relacji definiowanej podziałem

X = a, b, c, d , e , π 5 = a, b, d, c, e

E(π 5) = (a, a), (b, b), (b, d), (d, b), (d, d), (c, c), (c, e), (e, c), (e, e) | a ×a b, d ×b, d c, e ×c, e

tablica relacji:

a b c d e a b d c e

a 1 a 1

b 1 1 b 1 1

c 1 1 d 1 1

d 1 1 c 1 1

e 1 1 e 1 1

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 10 / 11

Każdej relacji równoważności E w zbiorze X można jednoznacznie

przyporządkować podział zbioru X na bloki, definiując go jako

X|E = x|E : x ∈ X ,

gdzie pojedynczy blok x|E = y ∈ X : xEy nazywany jest

klasą abstrakcji elementu x

Przykład podziału zbioru na klasy abstrakcji

X = , xEy ⇔ x + y jest liczbą parzystą

podział |E = 0|E, 1|E

0|E = y ∈ : y jest parzysta , 1|E = y ∈ : y jest nieparzysta

Przykład podziału zbioru na klasy abstrakcji

tablica relacji E na zbiorze X = a, b, c, d , e:

a b c d e

a 1 1

b 1 1 1

c 1 1

d 1 1 1

e 1 1 1

podział X|E = a|E, b|E , gdzie a|E = a, c , b|E = b, d, e

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (5) J.Sikorski Strona 11 / 11

Ile jest wszystkich relacji równoważności na zbiorze n-element.?

Twierdzenie

Liczba wszystkich relacji równoważności w zbiorze X, dla | X | = n,

jest równa liczbie Bella nB .

Dowód

Istnieje bijekcja pomiędzy zbiorem relacji równoważności na danym

zbiorze a zbiorem wszystkich podziałów danego zbioru Π(X).

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (6) J.Sikorski Strona 1 / 6

ZLICZANIE SURJEKCJI

Ile jest funkcji ze zbioru X na zbiór Y ?

| Sur(X, Y) | = ?

Przyjmijmy oznaczenie:

mns , = | Sur(X, Y) | - liczba funkcji z X na Y , dla | X | = n, | Y | = m

1

2

3f :

1 = (2) = (3)f f

2 = (4)f

4 3 = (1)f

• każdej funkcji f ∈ Sur(X, Y) można przyporządkować podział

zbioru X na m bloków, definiując go jako

N( f ) = f −1( y) : y ∈ Y (tzw. jądro funkcji)

• każdemu podziałowi π ∈ Πk(X) odpowiada dokładnie m! funkcji

f ∈ Sur(X, Y) , dla których N( f ) = π . Każda z tych surjekcji

przyporządkowuje wzajemnie jednoznacznie blokom podziału π

elementy zbioru Y

⋅=m

nms mn !, = | Sur(X, Y) | , dla | X | = n, | Y | = m

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (6) J.Sikorski Strona 2 / 6

Przykład

1

2

3f :

1 = (2) = (3)f f

2 = (4)f

4 3 = (1)f

n = 4 , m = 3 , Π3(X) ∋ π = N( f ) = 1, 2, 3, 4

PODZIAŁ LICZBY

n, k ∈ 1, 2, ...

Na ile sposobów można zapisać liczbę n

w postaci sumy k składników: n = a1 + ... + ak ,

gdzie a1 ≥≥≥≥ a2 ≥≥≥≥ ... ≥≥≥≥ ak > 0 ?

Każdy taki ciąg składników a1 , ..., ak nazywamy podziałem liczby n

na k składników

P(n, k) - liczba podziałów liczby n na k składników

P(n) = ∑ =n

kknP

1),( - liczba wszystkich podziałów liczby n

Przyjmujemy dodatkowo, że P(0, 0) = P(0) = 1

Przykład zbioru podziałów liczby 6

n = 6 6 P(6,1) = 1 5 1 P(6,2) = 3 4 2 P(6,3) = 3 4 1 1 P(6,4) = 2

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (6) J.Sikorski Strona 3 / 6

3 3 P(6,5) = 1 3 2 1 P(6,6) = 1 3 1 1 1 2 2 2 P(6) = 11 2 2 1 1 2 1 1 1 1 1 1 1 1 1 1

Diagram Ferrersa

Dla podziału n = a1 + ... + ak tworzymy diagram o k wierszach,

który zawiera ai punktów w i-tym wierszu

Przykład diagramu dla podziału liczby 10

10 = 5 + 3 + 2 • • • • • • • • • •

Podział sprzężony powstaje po tzw. transpozycji diagramu Ferrersa

Przykład podziałów sprzężonych

10 = 5 + 3 + 2 • • • • • i 10 = 3 + 3 + 2 + 1 + 1 • • • • • • • • • • • • • • •

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (6) J.Sikorski Strona 4 / 6

Pk(n) - liczba podziałów liczby n o największym składniku równym k

Twierdzenie

Liczba podziałów liczby n na k składników jest równa liczbie takich

podziałów liczby n , w których największy składnik równy jest k :

P(n, k) = Pk(n) , dla k ≤ n

Dowód

Każdy podział liczby n na k składników po transpozycji wyznacza

dokładnie jeden, sprzężony z nim, podział liczby n , w którym

największy składnik równy jest k. Transpozycja tego podziału

sprzężonego wskazuje jednoznacznie na wyjściowy podział. Zatem

istnieje bijekcja pomiędzy tymi dwoma zbiorami podziałów.

Twierdzenie

Dla n ≥ k > 0 zachodzi P(n, k) = P(n −1, k −1) + P(n − k, k)

Dowód

Rozważmy zbiór wszystkich podziałów liczby n na k składników.

Podzielmy go na dwa rozłączne podzbiory:

• podziałów, które nie zawierają żadnego składnika równego 1

• podziałów, które zawierają co najmniej jeden składnik równy 1.

Każdemu podziałowi a1 + ... + ak z pierwszego podzbioru można

wzajemnie jednoznacznie przyporządkować podział

(a1 – 1) + ... + (ak – 1) = n – k .

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (6) J.Sikorski Strona 5 / 6

Zatem liczba podziałów w pierwszym podzbiorze wynosi P(n − k, k),

bo tyle jest podziałów liczby n – k na k składników.

Każdemu podziałowi a1 + ... + ak - 1 + 1 z drugiego podzbioru można

wzajemnie jednoznacznie przyporządkować podział

a1 + ... + ak - 1 = n – 1 .

Zatem liczba podziałów w drugim podzbiorze wynosi P(n − 1, k – 1),

bo tyle jest podziałów liczby n – 1 na k – 1 składników.

Oba podzbiory są rozłączne, a zatem wszystkich podziałów liczby n

na k składników jest P(n, k) = P(n −1, k −1) + P(n − k, k).

Tablica liczby podziałów liczby na składniki:

1

1

1

1

1

1

1

1

1

1n = 0

1

2

3

4

5

6

7

8

9

10

k = 0 1 2 3 4 5 6 7 8 9 10

... ...

...

1

0

0

0

0

0

0

0

0

0

0

2

1

1

12

1

15

1

13

1

11

1

3022151175

3211

42

P n( )

1

1

1

1

P n k( , )

111 056 1

112 077 2

11

1

1

12

1

2

33

44

5

5

6

10

1

2

3

4

57

8

11

1

2

3

56

9

10

1

2

35

7

1

23

5

7

12

3

5

7

1

2

3

5

1

2

3...

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (6) J.Sikorski Strona 6 / 6

Twierdzenie

Dla n ≥ k > 0 zachodzi P(n, k) = ∑ = −k

iiknP

0),(

Dowód

Rozbijmy zbiór wszystkich podziałów liczby n na k składników na

k + 1 bloków: B0, B1, ..., Bk, gdzie Bi (i = 0, 1, ..., k) oznacza zbiór

takich podziałów liczby n, które zawierają k – i składników równych 1.

Każdemu podziałowi a1 + a2 +... + ai + 1 + ... +1 ze zbioru Bi, można

wzajemnie jednoznacznie przyporządkować podział

(a1 – 1) + (a2 – 1) +... + (ai – 1) = n – k .

Zatem liczba podziałów w zbiorze Bi wynosi P(n − k, i), bo tyle jest

podziałów liczby n – k na i składników.

Sumując wszystkie P(n − k, i) po i = 0, 1, ..., k dostajemy liczność

zbioru wszystkich podziałów liczby n na k składników.

Pk(n) - liczba podziałów liczby n na składniki nie większe od k

( n = a1 + ... + aj i ai ≤ k dla i = 1, 2, ..., j ) Twierdzenie

Dla n ≥ k > 0 zachodzi Pk(n) = ∑ =k

iinP

1),(

Dowód

Zauważmy, że Pk(n) = ∑ =k

ii nP

1)( , a wcześniej wykazano, że

Pi(n) = P(n, i).

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 1 / 13

Zbiory uporządkowane

Relację binarną R ⊆ X × X , która jest

• zwrotna, jeśli ∀ x ∈ X : xRx

• przechodnia, jeśli ∀ x, y, z ∈ X : ( xRy ∧ yRz ) ⇒ xRz

• antysymetryczna, jeśli ∀ x, y ∈ X : ( xRy ∧ yRx ) ⇒ x = y

nazywamy relacją (częściowego porządku) i oznaczamy p .

Parę (X, p ) nazywamy zbiorem (częściowo) uporządkowanym:

X – zbiór podstawowy, p − relacja porządkująca X

Dwa elementy x, y ∈ X nazywamy porównywalnymi ,

jeśli x p y lub y p x ,

w przeciwnym przypadku są one nieporównywalne.

Jeśli każde dwa elementy x, y ∈ X są porównywalne, to parę (X, p )

nazywamy zbiorem liniowo uporządkowanym.

W zbiorze uporządkowanym (X, p ) wprowadzamy oznaczenie:

x p y ⇔ x p y ∧ x ≠ y

Jeżeli dla dwóch elementów s, t ∈ X zachodzi s p t i nie istnieje taki

element u ∈ X , że s p u i u p t , to s nazywamy bezpośrednim

poprzednikiem t, a t – bezpośrednim następnikiem s.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 2 / 13

Przykład zbioru uporządkowanego

X = 2, 3, 5, 6, 10, 12, 25, 50, 70, 100 ,

dla a, b ∈ X , a p b ⇔ b mod a = 0 (relacja podzielności).

Graf relacji:

100

502570

12

63

2 10

5

(X, p ) jest zbiorem częściowo uporządkowanym,

ale nie jest zbiorem liniowo uporządkowanym, bo ani (2, 3), ani (3, 2)

nie należy do relacji.

3 p 12, ale 3 nie jest bezpośrednim poprzednikiem 12, bo zachodzi:

3 p 6 i 6 p 12

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 3 / 13

Przykład zbioru uporządkowanego

X = p1, p2, p3, p4, p5, p6, p7, p8, p9, p10 – zbiór procesorów;

w(pi) – wydajność procesora i , o(pi) – opłacalność procesora i ;

pi p pj ⇔ w(pi) ≤ w(pj) ∧ o(pi) ≤ o(pj) (pj „nie gorszy od” pi)

pi = pj ⇔ w(pi) = w(pj) ∧ o(pi) = o(pj) (pj „taki sam jak” pi)

pi p pj − pj „lepszy od” pi

oplacalnosc

p1

p2

p3

wydajnosc

p4

p5p6

p7

p8

p9

p10

procesory p2 i p3 są nieporównywalne,

procesor p10 jest lepszy od p6 i jest jego bezpośrednim następnikiem,

procesor p10 jest lepszy od p4 , ale nie jest jego bezpośrednim

następnikiem.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 4 / 13

Wygodnym i czytelnym sposobem przedstawienia zbioru

uporządkowanego (X, p ) jest tzw. diagram Hassego, na którym łączymy odcinkami tylko bezpośrednie poprzedniki z ich następnikami

i następniki umieszczamy powyżej poprzedników.

Przykład diagramu Hassego

X = 2, 3, 5, 6, 10, 12, 25, 50, 70, 100 ,

a p b ⇔ b mod a = 0 .

Diagram:

100

50

25

70

12

6

3 2

10

5

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 5 / 13

Przykład diagramu Hassego

X = p1, p2, p3, p4, p5, p6, p7, p8, p9, p10 – zbiór procesorów;

pi p pj ⇔ pj „nie gorszy od” pi

p1

p8

p3

p7

p5

p2

p4

p6

p10p9

Element xo ∈ X nazywamy elementem maksymalnym w zbiorze

częściowo uporządkowanym (X, p ), jeśli w zbiorze X nie istnieje

element x ≠ xo, dla którego xo p x .

Element xo ∈ X nazywamy elementem minimalnym w zbiorze

częściowo uporządkowanym (X, p ), jeśli w zbiorze X nie istnieje

element x ≠ xo, dla którego x p xo .

Przykład

Procesory p7, p9, p10 są elementami maksymalnymi,

a procesory p1, p4, p5 są elementami minimalnymi.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 6 / 13

Element xo ∈ X nazywamy elementem największym w zbiorze

częściowo uporządkowanym (X, p ), jeśli dla każdego x ∈ X zachodzi

zależność x p xo.

Element xo ∈ X nazywamy elementem najmniejszym w zbiorze

częściowo uporządkowanym (X, p ), jeśli dla każdego x ∈ X zachodzi

zależność xo p x .

Przykład

X = 5, 10, 25, 50, 100 , a p b ⇔ b mod a = 0 ;

100

50

2510

5

Element 100 jest elementem największym, a element 5 jest elementem

najmniejszym,

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 7 / 13

Twierdzenie

W zbiorze częściowo uporządkowanym istnieje co najwyżej jeden

element największy i co najwyżej jeden element najmniejszy.

Przy tym element największy jest elementem maksymalnym, a element

najmniejszy jest elementem minimalnym.

Twierdzenie

W zbiorze liniowo uporządkowanym (X, p ) następujące stwierdzenia

są równoważne:

xo ∈ X jest elementem największym,

x p xo dla każdego x ∈ X \ xo ,

xo ∈ X jest elementem maksymalnym.

Twierdzenie

W zbiorze liniowo uporządkowanym (X, p ) następujące stwierdzenia

są równoważne:

xo ∈ X jest elementem najmniejszym,

xo p x dla każdego x ∈ X \ xo ,

xo ∈ X jest elementem minimalnym.

Twierdzenie

Jeśli (X, p ) jest zbiorem liniowo uporządkowanym oraz X jest

zbiorem skończonym i niepustym, to w (X, p ) istnieją elementy

największy i najmniejszy.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 8 / 13

Element xo ∈ X nazywamy ograniczeniem dolnym zbioru A ⊆ X ,

jeśli dla każdego x ∈ A zachodzi zależność xo p x .

Element xo ∈ X nazywamy ograniczeniem górnym zbioru A ⊆ X ,

jeśli dla każdego x ∈ A zachodzi zależność x p xo .

Przykład

p1

p8

p3

p7

p5

p2

p4

p6

p10p9

A

Procesor p7 jest ograniczeniem górnym dla zbioru procesorów A ;

a procesor p5 jest ograniczeniem dolnym dla zbioru A.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 9 / 13

Jeśli zbiór ograniczeń górnych zbioru A ma element najmniejszy, to

nazywamy go kresem górnym zbioru A i oznaczamy sup A

(łac. supremum – wyżej stojące)

Jeśli zbiór ograniczeń dolnych zbioru A ma element największy, to

nazywamy go kresem dolnym zbioru A i oznaczamy inf A

(łac. infimum – niżej położone)

Przykład

100

50

25

70

12

6

3 2

10

5

A

zbiór ograniczeń górnych zbioru A

inf A

sup A

zbiór ograniczeń dolnych zbioru A

Jeśli xo = sup A oraz xo ∈ A , to stosujemy zapis xo = max A

(łac. maximum – największe)

Jeśli xo = inf A oraz xo ∈ A , to stosujemy zapis xo = min A

(łac. minimum – najmniejsze)

np. 50 = sup A i 50 = max A

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 10 / 13

Przykład

p1

p8

p3

p7

p5 p4

p6

p10p9

Bp2

p9, p10 jest zbiorem ograniczeń górnych dla zbioru procesorów B,

ale w tym zbiorze nie ma elementu najmniejszego;

zatem nie istnieje kres górny zbioru B.

Kres dolny oczywiście istnieje i p4 = inf B .

Pokryciem zbioru X nazywamy taką rodzinę jego podzbiorów

Y1, Y2, ..., Yk (Yi ⊆ X), dla której zachodzi X = Y1 ∪ Y2 ∪ ... ∪ Yk.

Zbiory Y1, Y2, ..., Yk pokrywają zbiór X.

Przykład

Rodzina 2, 3, 5, 5, 6, 10, 12, 25, 50, 25, 50, 70, 100 ,

jest pokryciem zbioru 2, 3, 5, 6, 10, 12, 25, 50, 70, 100 ,

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 11 / 13

Łańcuchem z zbiorze uporządkowanym (X, p ) nazywamy taki

podzbiór L ⊆ X , w którym każde dwa elementy x, y ∈ L są

porównywalne, tzn. zawsze zachodzi x p y lub y p x .

Para złożona z łańcucha L i relacji porządku p obciętej do L tworzy

zatem zbiór liniowo uporządkowany (L, p L).

Antyłańcuchem z zbiorze uporządkowanym (X, p ) nazywamy taki

podzbiór A ⊆ X , w którym żadne dwa różne elementy x, y ∈ L nie są

porównywalne, tzn. zawsze zachodzi x p y ⇔ x = y .

Przykład łańcucha i antyłańcucha

p1

p8

p3

p7

p5

p2

p4

p6

p10p9

L = p3 , p5 , p7 , p8 lub L = p2 , p5 , p10 ;

A = p1 , p2 , p6 lub A = p3 , p9 , p10

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 12 / 13

Robert P. Dilworth (1914 – 1993, California)

Twierdzenie

W każdym skończonym zbiorze częściowo uporządkowanym (X, p )

maksymalna liczność antyłańcucha jest równa minimalnej liczbie

łańcuchów pokrywających zbiór X.

Twierdzenie (dualne)

W każdym skończonym zbiorze częściowo uporządkowanym (X, p )

maksymalna liczność łańcucha jest równa minimalnej liczbie

antyłańcuchów pokrywających zbiór X.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (7) J.Sikorski Strona 13 / 13

Przykład

100

50

25

70

12

6

3 2

10

5

100

50

25

70

12

6

3 2

10

5

100

50

25

70

12

6

3 2

10

5

Jeśli istnieją 3 łańcuchy, które pokrywają zbiór X, to maksymalna

liczność antyłańcucha nie może być większa od 3.

Jeśli najliczniejszy łańcuch ma 4 elementy, to potrzeba nie mniej niż 4

antyłańcuchy, aby pokryć zbiór X.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 1 / 9

Techniki rozwiązywania problemów kombinatorycznych

zasada mnożenia

zasada równoliczności

zasada szufladkowa Dirichleta

zasada włączania-wyłączania

funkcje tworzące

Zasada mnożenia

Jeżeli rozważane są funkcje f : X → Y ,

dla których X = X1∪ X2 i Y = Y1∪ Y2 oraz spełnione są warunki

X1∩ X2 = ∅, f ( X1) ⊆ Y1 i f ( X2) ⊆ Y2 ,

to | Fun(X, Y) | = | Fun(X1, Y1) | ⋅ | Fun(X2, Y2) |

Jeżeli ponadto Y1∩ Y2 = ∅,

to | Inj(X, Y) | = | Inj(X1, Y1) | ⋅ | Inj(X2, Y2) |

Przykład

Jaka jest maksymalna liczba tablic rejestracyjnych typu WI07049?

Tablica to zbiór 7 znaków X = z1, z2, z3, z4, z5, z6, z7,

X1 = z1, z2, X2 = z3, z4, z5, z6, z7, Y1 – zbiór liter, Y2 – zbiór cyfr,

| X1| = 2, | X2| =5, | Y1| = 26, | Y2| = 10, |Fun(X, Y)| = 262 ⋅⋅⋅⋅ 105

Jaka jest maksymalna liczba tablic o różnych literach i różnych cyfrach?

| Inj(X, Y) | = 262 ⋅⋅⋅⋅ 105

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 2 / 9

Zasada równoliczności

Bij(X, Y) ≠ ∅ ⇒ | X | = | Y |

Przykład

Dlaczego podziałów liczby n na k składników jest tyle samo co

podziałów liczby n o największym składniku równym k ?

Bo możemy wzajemnie jednoznacznie przyporządkować podziałowi

liczby n na k składników jego podział sprzężony, który jest podziałem

liczby n o największym składniku równym k.

Zasada szufladkowa

Dla skończonych zbiorów X i Y , takich że | X | > r ⋅ | Y | dla r > 0 :

dla każdej funkcji f ∈ Fun(X, Y) warunek | f −1( y) | > r jest

spełniony dla co najmniej jednego y ∈ Y.

(jeśli wkładamy n przedmiotów do m pudełek i n > r ⋅ m , to w

przynajmniej jednym pudełku znajdzie się ponad r przedmiotów)

Przykład

Dlaczego na egzaminie dla 401 studentów, na którym każdy student

może dowolnie wybrać do rozwiązania 7 zadań z 9, będzie co

najmniej 12 studentów rozwiązujących ten sam zestaw zadań?

Bo wszystkich zestawów, które mogą powstać jest

7

9= 36, a zatem

liczba studentów 401 > 11 ⋅ 36 = 396 i w twierdzeniu r = 11.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 3 / 9

Zasada włączania-wyłączania

...||||||,...,,,,...,,

−∩∩+∩−= ∑∑∑⊆⊆== nkji

kjinji

ji

n

ii

n

ii AAAAAAA

1111U

... + (−1)n−1| A1 ∩ ... ∩ An | =

= ∑∑⊆=

− ∩∩∩−,...,,...,,

|...|)(nppp

ppp

n

i

i

ii

AAA11

1

2121

1

dla n = 3: | A ∪ B ∪ C | =

= | A | + | B | + | C | − | A ∩ B | − | A ∩ C | − | B ∩ C | + | A ∩ B ∩ C |

Zastosowanie zasady włączania-wyłączania do wyznaczenia liczby

podzbiorów k-elementowych zbioru z powtórzeniami

Rozważmy zbiór z powtórzeniami X = < 5∗a, 2∗b, 3∗c >

Ile jest 7-elementowych podzbiorów zbioru X ?

Wprowadźmy pomocniczy zbiór Y = < 7∗a, 7∗b, 7∗c >

Wśród 7-elementowych podzbiorów zbioru Y są takie, które są także

podzbiorami zbioru X i takie, które nimi nie są.

Oznaczmy przez P zbiór 7-elementowych podzbiorów zbioru Y :

| P | =

−+7

173=

7

9= 36

Podzbiorami zbioru X nie są te 7-elementowe podzbiory zbioru Y,

które zawierają ponad 5 powtórzeń elementu a lub ponad 2

powtórzenia elementu b, lub ponad 3 powtórzenia elementu c.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 4 / 9

Rozważmy następujące zbiory:

Pa – zbiór 7-elementowych podzbiorów zbioru Y, które zawierają

ponad 5 powtórzeń elementu a ,

Pb – zbiór 7-elementowych podzbiorów zbioru Y, które zawierają

ponad 2 powtórzenia elementu b :

Pc – zbiór 7-elementowych podzbiorów zbioru Y, które zawierają

ponad 3 powtórzenia elementu c :

Zbiór 7-elementowych podzbiorów zbioru Y, które nie są podzbiorami

zbioru X to Pa ∪ Pb ∪ Pc ,

a zatem liczba 7-elementowych podzbiorów zbioru Y, które są

podzbiorami zbioru X wynosi | P | − | Pa ∪ Pb ∪ Pc |

| Pa ∪ Pb ∪ Pc | = | Pa | + | Pb | + | Pc | +

− | Pa ∩ Pb | − | Pa ∩ Pc | − | Pb ∩ Pc | + | Pa ∩ Pb ∩ Pc |

Każde A ∈ Pa może być zapisane jako A = < 6∗a, 0∗b, 0∗c > ∪ A',

gdzie A' jest 1-elementowym podzbiorem zbioru < 1∗a, 7∗b, 7∗c > :

| Pa | =

−+1

113=

1

3= 3

Każde B ∈ Pb może być zapisane jako B = < 0∗a, 3∗b, 0∗c > ∪ B',

gdzie B' jest 4-elementowym podzbiorem zbioru < 7∗a, 4∗b, 7∗c > :

| Pb | =

−+4

143=

4

6= 15

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 5 / 9

Każde C ∈ Pc może być zapisane jako C = < 0∗a, 0∗b, 4∗c > ∪ C',

gdzie C' jest 3-elementowym podzbiorem zbioru < 7∗a, 7∗b, 3∗c > :

| Pc | =

−+3

133=

3

5= 10

| Pa ∩ Pb | = 0, bo podzbiór należący do Pa ∩ Pb musiałby mieć co

najmniej 9 elementów < 6∗a, 3∗b, ?∗c >.

| Pa ∩ Pc | = 0, bo podzbiór należący do Pa ∩ Pc musiałby mieć co

najmniej 10 elementów < 6∗a, ?∗b, 4∗c >.

| Pb ∩ Pc | = 1, bo podzbiór należący do Pb ∩ Pc jest tylko jeden

< 0∗a, 3∗b, 4∗c >.

| Pa ∩ Pb ∩ Pc | = 0, bo podzbiór należący do Pa ∩ Pb ∩ Pc musiałby

mieć co najmniej 13 elementów < 6∗a, 3∗b, 4∗c >.

Czyli | Pa ∪ Pb ∪ Pc | = 3 + 15 + 10 – 0 – 0 – 1 + 0 = 27,

27 podzbiorów 7-elementowych zbioru Y nie jest podzbiorami X.

Liczba 7-elementowych podzbiorów zbioru X wynosi zatem

| P | − | Pa ∪ Pb ∪ Pc | = 36 – 27 = 9

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 6 / 9

Zastosowanie zasady włączania-wyłączania

do wyznaczenia liczby surjekcji

Dla | X | = n, | Y | = m , | Sur(X, Y) | =

⋅=m

nms mn !, ,

ale spróbujmy ominąć odwołanie do liczb Stirlinga drugiego rodzaju.

Przyjmijmy, że Y = y1, y2, ..., ym i podzbiór Fi ⊆ Fun(X, Y) jest

zbiorem takich funkcji f , dla których yi ∉ f (X).

Zatem zbiór F1 ∪ F2 ∪ ... ∪ Fm jest zbiorem funkcji f ∈ Fun(X, Y) ,

które nie są surjekcjami:

mns , = | Fun(X, Y) | − | F1 ∪ F2 ∪ ... ∪ Fm |, | Fun(X, Y) | = mn

| F1 ∪ F2 ∪ ... ∪ Fm | = ∑∑⊆=

− ∩∩∩−,...,,...,,

|...|)(mppp

ppp

m

i

i

ii

FFF11

1

2121

1

Należy zatem wyznaczyć liczności zbiorów ippp FFF ∩∩∩ ...

21dla

i = 1, 2, ..., m i mppp i ,...,,...,, 121 ⊆ .

Zauważmy, że jeśli f ∈ ippp FFF ∩∩∩ ...

21, to

ippp yyy ,...,,21

∉ f (X).

Zatem ippp FFF ∩∩∩ ...

21= Fun(X, Y \

ippp yyy ,...,,21

) ;

|ippp FFF ∩∩∩ ...

21| = | Fun(X, Y \

ippp yyy ,...,,21

) | = nim )( −

Podzbiór ippp yyy ,...,,

21 można wybrać ze zbioru Y na

i

m sposobów,

a zatem n

mpppppp im

i

mFFF

ii

)(|...|,...,,...,,

=∩∩∩∑⊆ 121

21

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 7 / 9

i ostatecznie | F1 ∪ F2 ∪ ... ∪ Fm | = ∑=

− −

−m

i

ni imi

m

1

11 )()( .

Liczba surjekcji mns , = | Fun(X, Y) | − | F1 ∪ F2 ∪ ... ∪ Fm | =

= nm − ∑=

− −

−m

i

ni imi

m

1

11 )()( = nm + ∑=

−m

i

ni imi

m

1

1 )()(

mns , =∑−

=−

−1

0

1m

i

ni imi

m)()(

Porównując

⋅m

nm! = ∑

=−

−1

0

1m

i

ni imi

m)()( otrzymujemy wzór pozwalający bez

rekurencji wyznaczać liczby Stirlinga drugiego rodzaju:

∑∑−

=

= ⋅−−−=−

−=

1

0

1

0

111 m

i

ni

m

i

ni

iim

imim

i

m

mm

n

!)!()(

)()()(!

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 8 / 9

Zastosowanie zasady włączania-wyłączania

do wyznaczenia liczby nieporządków

Sn − zbiór wszystkich permutacji zbioru 1, 2, ..., n

Każdy element f ∈ Sn możemy zapisać w postaci tablicy:

=)(...)()(

...

nfff

nf

21

21

Nieporządkiem nazywamy taką permutację f ∈ Sn ,

dla której f (i) ≠ i dla każdego i ∈ 1, 2, ..., n

Dn − zbiór wszystkich nieporządków w zbiorze 1, 2, ..., n

| Dn | = ?

Przyjmijmy, że Ai = f ∈ Sn : f (i) = i dla i ∈ 1, 2, ..., n .

W zbiorze A1 ∪ A2 ∪ ... ∪ An są wszystkie permutacje f ∈ Sn , które

nie są nieporządkami, a zatem | Dn | = | Sn | − | A1 ∪ A2 ∪ ... ∪ An |.

| Sn | = n! ,

| A1 ∪ A2 ∪ ... ∪ An | = ∑∑⊆=

− ∩∩∩−,...,,...,,

|...|)(nppp

ppp

n

i

i

ii

AAA11

1

2121

1 .

Należy zatem wyznaczyć liczności zbiorów ippp AAA ∩∩∩ ...

21dla

i = 1, 2, ..., n i mppp i ,...,,...,, 121 ⊆ .

ippp AAA ∩∩∩ ...21

jest zbiorem wszystkich takich permutacji

f ∈ Sn , dla których f (pj) = pj dla j = 1, 2, ..., i , a zatem

|ippp AAA ∩∩∩ ...

21| = (n – i)!

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (8) J.Sikorski Strona 9 / 9

Podzbiór p1, p2, ..., pi można wybrać ze zbioru 1, 2, ..., n na

i

n

sposobów, a zatem )!(|...|,...,,...,,

ini

nAAA

npppppp

ii

=∩∩∩∑⊆ 121

21

i ostatecznie | A1 ∪ A2 ∪ ... ∪ An | = ∑=

− −

−n

i

i ini

n

1

11 )!()( .

Liczba nieporządków | Dn | = | Sn | − | A1 ∪ A2 ∪ ... ∪ An | =

n! − ∑=

− −

−n

i

i ini

n

1

11 )!()( = n! + ∑=

−n

i

i ini

n

1

1 )!()( = ∑=

−n

i

i

i

n

0

1!!

)( .

| Dn | = ∑=

−n

i

i

in

0

1!)(

!

Na przykład

Dla n = 5 liczba nieporządków

| Dn | =

−+−+−!!!!!

!51

41

31

21

11

15 = 44

spośród wszystkich 5! = 120 permutacji, czyli ponad 36%

36787944011

0

,!)( ≈ →−=

∞→=∑

eiS

Dn

n

i

i

n

n

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 1 / 13

GRAFY i SIECI

GRAFY – podstawowe definicje

Graf : G = ( V, E ) - para uporządkowana

V = 1, 2, ..., n - zbiór wierzchołków grafu

E ⊆ i, j : i ≠ j i i, j ∈ V - zbiór krawędzi grafu

Terminologia:

graf = graf symetryczny, graf nieskierowany, graf niezorientowany

Rysunek grafu:

• wierzchołek i przedstawiamy symbolicznie i

• krawędź i, j przedstawiamy i j

Przykład grafu

G = ( V, E ):

1

2 3

4

5

6

7

V = 1, ..., 7 , E = 1, 2, 1, 3, 1, 4, 2, 3, 3, 4, 6, 7

Graf skierowany: D = ( V, A ) - para uporządkowana

V = 1, 2, ..., n - zbiór wierzchołków grafu

A ⊆ V × V - zbiór łuków grafu

Terminologia:

graf skierowany = digraf, graf zorientowany

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 2 / 13

Rysunek grafu skierowanego:

• wierzchołek i przedstawiamy symbolicznie i

• łuk ( i, j ) przedstawiamy ji

Przykład grafu skierowanego

D = ( V, A ): V = 1, ..., 7 ,

1

2 3

4

5

6

7

A = (1, 4), (2, 1), (2, 3), (2, 4), (3, 2), (3, 4), (5, 7), (6, 6), (7, 5)

Dla grafu skierowanego D = ( V, A ) definiujemy pochodny graf

nieskierowany G(D) = ( V, ED ):

i, j ∈ ED ⇔ ( i, j ) ∈ A ∨ ( j, i ) ∈ A dla i ≠ j

Przykład grafu pochodnego

G(D) = ( V, ED ):

1

2 3

4

5

6

7

V = 1, ..., 7 , ED = 1, 2, 1, 4, 2, 3, 2, 4, 3, 4, 5, 7

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 3 / 13

Graf nazywamy pełnym, jeśli dla każdej pary wierzchołków istnieje

krawędź łącząca te wierzchołki.

Symboliczne oznaczenie grafu pełnego o n wierzchołkach − K n

Przykłady grafów pełnych

K5K4K3K2K1 K6

Liczba krawędzi w grafie pełnym K n wynosi 2

)1(2

−=

nnn

Dopełnieniem grafu G = (V, E) nazywamy graf G , który ma ten sam

zbiór wierzchołków co G i wszystkie krawędzie grafu pełnego VK

nie występujące w grafie G.

Przykład dopełnienia grafu

1

2

3

4

5

6

1

2

3

4

5

6

G G

W grafie G = ( V, E ) dla krawędzi e = i, j ∈ E mówimy, że

wierzchołki i, j są incydentne z krawędzią e. Dwa wierzchołki grafu

incydentne z tą samą krawędzią nazywamy sąsiednimi lub zależnymi.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 4 / 13

Dwie krawędzie grafu incydentne z tym samym jego wierzchołkiem

nazywamy zależnymi.

Grafem krawędziowym grafu G = (V, E) nazywamy graf L(G),

którego wierzchołki odpowiadają krawędziom grafu G, a krawędzie

odpowiadają parom zależnych krawędzi grafu G.

Przykład grafu krawędziowego

a

bg

c

d

f

e

a

b

g

c

d e

f

L G( )

1

2

3

4

5

6

G

Podgrafem grafu G = ( V, E ) nazywamy każdy graf G′ = ( V′, E′ ),

dla którego V′ ⊆ V oraz E′ ⊆ E.

Przykład grafu i jego podgrafu

G :

1

2 3

4

5

6

7 G′ :

1

2 3 5

6

7

Grafy a relacje

• Dla grafu skierowanego D = ( V, A ): A – relacja na zbiorze V

• Dla grafu (nieskierowanego) G = ( V, E ):

E może wynikać z relacji R na zbiorze V, która jest symetryczna i

nie jest zwrotna: ( i, j ) ∈ R ∨ ( j, i ) ∈ R ⇒ i, j ∈ E

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 5 / 13

STOPNIE WIERZCHOŁKÓW

Graf (nieskierowany) G = ( V, E )

krawędź e = i, j ∈ E

− wierzchołki i oraz j są incydentne z krawędzią e, a ona z nimi.

− krawędź e łączy dwa wierzchołki i oraz j, które są jej końcami.

− wierzchołki i oraz j są sąsiednie lub inaczej zależne.

V(i) – zbiór wierzchołków sąsiednich z wierzchołkiem i

V(i) = j∈V : i, j ∈ E

d(i) = | V(i) | − stopień wierzchołka i (inne oznaczenie deg(i) )

Wierzchołek stopnia 0 nazywamy wierzchołkiem izolowanym.

Dla podzbioru M ⊆ V definiujemy:

VM (i) = j∈M : i, j ∈ E

dM (i) = | VM (i) | − stopień wierzchołka i względem podzbioru M

Przykład wyznaczania stopni wierzchołków w grafie

3

4 2

1

6

5

V(1) = 2, 3, 4, 5 ⇒ d(1) = 4 ; V(4) = 1, 2, 3 ⇒ d(4) = 3

V(6) = ∅ ⇒ d(6) = 0 (wierzchołek izolowany)

dla M = 3, 4: dM (1) = 2, dM (4) = 1, dM (5) = 0

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 6 / 13

Graf skierowany D = ( V, A )

łuk a = ( i, j ) ∈ A

− wierzchołki i oraz j są incydentne z łukiem a

− wierzchołek i jest początkiem łuku a

− wierzchołek j jego końcem łuku a

V +(i) – zbiór końców łuków wychodzących z wierzchołka i

V +(i) = j∈V : (i, j)∈ A

V −(i) – zbiór początków łuków wchodzących do wierzchołka i

V −(i) = j∈V : (j, i)∈ A

d +(i) = | V +(i) | − stopień wyjściowy wierzchołka i

d −(i) = | V −(i) | − stopień wejściowy wierzchołka i

d(i) = d +(i) + d −(i) − stopień wierzchołka i

Dla podzbioru M ⊆ V definiujemy:

)(iVM+ = j∈M : (i, j) ∈ A

)(iVM− = j∈M : j, i ∈ A

)(idM+ = | )(iVM

+ | − stopień wyjściowy wierzchołka i względem M

)(idM− = | )(iVM

− | − stopień wejściowy wierzchołka i względem M

dM(i) = )(idM+ + )(idM

− − stopień wierzchołka i względem M

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 7 / 13

Przykład wyznaczania stopni wierzchołków w grafie skierowanym

1

2 3

4

5

6

V +(3) = 2, 4, 5 ⇒ d +(3) = 3; V −(3) = 2, 5 ⇒ d −(3) = 2;

zatem d(3) = d +(3) + d −(3) = 5

V +(6) = 6 ⇒ d +(6) = 1; V −(6) = 6 ⇒ d −(6) = 1;

zatem d(6) = d +(6) + d −(6) = 2

dla M = 2, 4: )3(+Md = 2, )3(−

Md = 1, dM(3) = 3

Twierdzenie (lemat o uściskach dłoni)

Dla dowolnego grafu (nieskierowanego) G = ( V, E ) zachodzi

EidVi

2)( =∑∈

Twierdzenie

Dla dowolnego grafu skierowanego D = ( V, A ) zachodzi

AididViVi

==∑∑∈

+

− )()(

Zatem dla grafu skierowanego D = ( V, A ) także zachodzi

AidVi

2)( =∑∈

Wniosek

W każdym grafie skierowanym lub nieskierowanym liczba

wierzchołków stopnia nieparzystego jest parzysta.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 8 / 13

MACIERZ INCYDENCJI

Graf (nieskierowany) G = ( V, E )

zbiór wierzchołków V = 1, 2, ..., n

zbiór krawędzi E = e1, e2,..., em ⊆ i, j: i, j ∈ V

Macierz incydencji grafu:

I(G) = [ a ij ] i =1, ..., n , j =1, ..., m

=przypadkuprzeciwnymw0

jesli1 jij

eia

Przykład wyznaczania macierzy incydencji

V = 1, 2, 3, 4, 5

E = e1, e2, e3, e4, e5, e6 = 1, 2, 1, 3, 2, 3, 2, 4, 3, 4, 4, 5

1

2 4

3

5

e1

e2

e3 e5

e4 e6

e1 e2 e3 e4 e5 e6

1 1 1 0 0 0 0 d(1) = 2

2 1 0 1 1 0 0 d(2) = 3

IE = 3 0 1 1 0 1 0 d(3) = 3

4 0 0 0 1 1 1 d(4) = 3

5 0 0 0 0 0 1 d(5) = 1

ΣΣΣΣ d = 12

Aby wykazać, że EidVi

2)( =∑∈

wystarczy zsumować wiersze

macierzy incydencji i policzyć w niej wszystkie jedynki.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 9 / 13

Graf skierowany (bez pętli) D = ( V, A )

zbiór wierzchołków V = 1, 2, ..., n

zbiór krawędzi A = a1, a2,..., am ⊆ V × V

Macierz incydencji grafu skierowanego bez pętli:

I(D) = [ a ij ] i =1, ..., n , j =1, ..., m

==−

=przypadkuprzeciwnymw0

),(jesli1

),(jesli1

kia

ika

a j

j

ij

Przykład wyznaczania macierzy incydencji

V = 1, 2, 3, 4, 5

E = a1, a2, a3, a4, a5, a6 = (1, 3), (3, 1), (2, 1), (3, 2), (2, 4), (5, 3)

2

1 3

4

5a1

a2

a3 a4

a5

a6

a1 a2 a3 a4 a5 a6

1 1 −1 −1 0 0 0 d+(1) = 1, d −(1) = 2, d(1) = 3

2 0 0 1 −1 1 0 d+(2) = 2, d −(2) = 1, d(2) = 3

IA = 3 −1 1 0 1 0 −1 d+(3) = 2, d −(3) = 2, d(3) = 4

4 0 0 0 0 −1 0 d+(4) = 0, d −(4) = 1, d(4) = 1

5 0 0 0 0 0 1 d+(5) = 1, d −(5) = 0, d(5) = 1

Σ d+ = 6, Σ d − = 6, Σ d = 12

Aby wykazać, że AididViVi

==∑∑∈

+

− )()( wystarczy policzyć ile jest

niezerowych elementów o jednakowych znakach w wierszach

macierzy incydencji i w całej macierzy.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 10 / 13

MACIERZ SĄSIEDZTWA WIERZCHOŁKÓW

Graf (nieskierowany) G = ( V, E ), V = 1, 2, ..., n

Macierz sąsiedztwa wierzchołków grafu:

B(G) = [ b ij ] i =1, ..., n , j =1, ..., n

==przypadkuprzeciwnymw0

,jesli1 Ejibb jiij

Przykład wyznaczania macierzy sąsiedztwa wierzchołków

V = 1, 2, 3, 4, 5

1

2 4

3

5

e1

e2

e3 e5

e4 e6

1 2 3 4 5

1 0 1 1 0 0 d(1) = 2

2 1 0 1 1 0 d(2) = 3

BE = 3 1 1 0 1 0 d(3) = 3

4 0 1 1 0 1 d(4) = 3

5 0 0 0 1 0 d(5) = 1

d(1) = 2 d(2) = 3 d(3) = 3 d(4) = 3 d(5) = 1

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 11 / 13

Graf skierowany D = ( V, A ), V = 1, 2, ..., n

Macierz sąsiedztwa wierzchołków grafu:

B(D) = [ b ij ] i =1, ..., n , j =1, ..., n

=przypadkuprzeciwnymw0

),(jesli1 Ajibij

Przykład wyznaczania macierzy sąsiedztwa wierzchołków

V = 1, 2, 3, 4, 5

2

1 3

4

5a1

a2

a3 a4

a5

a6

1 2 3 4 5

1 0 0 1 0 0 d+(1) = 1

BA = 2 1 0 0 1 0 d+(2) = 2

3 1 1 0 0 0 d+(3) = 2

4 0 0 0 0 0 d+(4) = 0

5 0 0 1 0 0 d+(5) = 1

d−(1) = 2 d−(2) = 1 d−(3) = 2 d−(4) = 1 d−(5) = 0

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 12 / 13

IZOMORFIZM GRAFÓW

Dwa grafy (nieskierowane) G = ( V, E ) i G′ = ( V′, E′ ) są

izomorficzne, jeśli istnieje wzajemnie jednoznaczne odwzorowanie

VVf ′→ −11: , takie że dla dowolnej pary wierzchołków i, j ∈ V

zachodzi i, j ∈ E ⇔ f ( i ), f ( j ) ∈ E′

Dla grafów skierowanych D = ( V, A ) i D′ = ( V′, A′ ) odpowiednio:

( i, j ) ∈ A ⇔ ( f ( i ), f ( j ) ) ∈ A′

Izomorfizm grafów zapisujemy GG ′≅

Przykład grafów izomorficznych

7

1

5

4

6

2

3

8

e

d

f

b

c

h

a g

Izomorfizm:

i 1 2 3 4 5 6 7 8

f (i) a b c d e f g h

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (9) J.Sikorski Strona 13 / 13

TYPY GRAFÓW

Graf nazywamy regularnym, jeśli wszystkie jego wierzchołki mają

ten sam stopień.

Uwaga

Dwa grafy regularne o tej samej liczbie wierzchołków i tym samym

stopniu wierzchołków nie muszą być izomorficzne.

Przykład ilustrujący brak izomorfizmu

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 1 / 12

TYPY GRAFÓW c.d.

Graf nazywamy dwudzielnym, jeśli zbiór jego wierzchołków można

podzielić na dwa rozłączne podzbiory, tak że żadne dwa wierzchołki

należące do tego samego podzbioru nie są sąsiednie.

G = ( V1 ∪ V2 , E )

|V1| = r , |V2| = s , V1 ∩ V2 = ∅

Graf G = ( V1 ∪ V2 , E ) nazywamy pełnym grafem dwudzielnym,

jeśli jest dwudzielny i zawiera wszystkie krawędzie łączące

wierzchołki ze zbioru V1 z wierzchołkami ze zbioru V2.

Oznaczenie pełnego grafu dwudzielnego − K r, s

Przykłady pełnych grafów dwudzielnych

K2, 3 K1, 5

Graf jest planarny (płaski), jeśli można go narysować na płaszczyźnie

bez przecięć krawędzi.

a

ed

b

c

a

ed

b

c

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 2 / 12

Twierdzenie (Kuratowski)

Graf jest planarny wtedy i tylko wtedy, gdy nie zawiera podgrafu,

który można otrzymać z grafów K 5 lub K 3, 3 przez podział krawędzi

wierzchołkami o stopniu 2.

Grafy, które można otrzymać z danego grafu przez podział krawędzi,

polegający na wstawieniu dodatkowych wierzchołków stopnia 2,

nazywamy grafami homeomorficznymi (z jęz. łac. „podobnego

kształtu”) z tym grafem.

Przykłady grafów homeomorficznych z K 5 i K 3,3

Kazimierz Kuratowski (1896 – 1980)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 3 / 12

Przykład zastosowania twierdzenia Kuratowskiego

Tzw. graf Petersena:

g

a

e

d

fb

c

hi

j

g

a

e

d

f b

ch i

j

(a) (b)

⇒ graf Petersena nie jest planarny

DROGI i CYKLE w grafach

Dla grafu (nieskierowanego) G = ( V, E )

drogą z wierzchołka v0 ∈∈∈∈ V do vt ∈∈∈∈ V nazywamy ciąg

(naprzemienny) wierzchołków i krawędzi grafu:

( v0, e1, v1, e2, ..., vt−1, et, vt ),

spełniający warunek ei = vi−1, vi dla i = 1, ..., t

Przykład drogi w grafie

1

2 4

3

5

a

b

c e

d f

droga: ( 1, a, 2, c, 3, e, 4, f, 5), t = 4

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 4 / 12

Dla drogi ( v0, e1, v1, e2, ..., vt−1, et, vt ):

wierzchołek v0 nazywamy jej początkiem, wierzchołek vt − jej końcem

a liczbę t nazywamy długością drogi.

Drogę można utożsamiać dla uproszczenia

z ciągiem wierzchołków sąsiednich (v0, v1, ..., vt)

lub ciągiem krawędzi zależnych (e1, ..., et)

Dla grafu skierowanego D = ( V, A )

drogą z wierzchołka v0 ∈∈∈∈ V do vt ∈∈∈∈ V nazywamy ciąg

(naprzemienny) wierzchołków i łuków grafu:

( v0, a1, v1, a2, ..., vt−1, at, vt ),

spełniający warunek ai = ( vi−1, vi ) dla i = 1, ..., t

Przykład drogi w grafie skierowanym

2

5d

e

b c

a

f31

4

droga ( 5, f, 3, e, 1, d, 3, c, 2, a, 4 ), t = 5

Drogę w grafie skierowanym można utożsamiać dla uproszczenia

z ciągiem odpowiednio skierowanych łuków zależnych (e1, ..., et)

droga prosta - droga, w której wszystkie krawędzie (łuki) w

ciągu są różne

droga elementarna - droga, w której wszystkie wierzchołki w ciągu

są różne

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 5 / 12

Przykłady dróg w grafie

1

2 4

3

6

5

droga prosta (1, 3, 4, 5, 3, 6)

droga elementarna (1, 2, 4, 3, 5, 6)

Cyklem nazywamy drogę, dla której v0 = vt (droga zamknięta) i t >>>> 0

Cyklem elementarnym nazywamy cykl, w którym wierzchołki

v1, v2, ..., vt−1 są różne

Twierdzenie (Dirac, 1952)

Jeśli G = ( V, E ) jest grafem, w którym minimalny stopień

wierzchołka jest równy δ, to

• w grafie G istnieje droga elementarna o długości co najmniej δ,

• dla δ ≥ 2 w grafie G istnieje cykl elementarny o długości co

najmniej δ + 1

Dowód

cykl C

v0

v1

v2

v3

v4

vk

vt

droga P

v0

v1

v2

v3

v4

vk

vt

d( ) >iv

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 6 / 12

Niech P = (v0, v1, ..., vt) będzie drogą elementarną w grafie G o

maksymalnej długości (tzn. nie można jej przedłużyć na żadnym

końcu). Wówczas wszystkie wierzchołki sąsiednie z v0 muszą

należeć do P.

Niech k = max i : v0, vi ∈ E .

Z założenia o maksymalnej długości drogi wynika, że k ≥ d(v0) ≥ δ.

Zatem droga P ma długość co najmniej δ.

Ponadto, jeśli δ ≥ 2, to C = (v0, v1, ..., vk, v0) jest cyklem elementarnym

o długości co najmniej δ + 1.

Graf (nieskierowany) nazywamy spójnym, jeśli dla każdej pary

wierzchołków u i v istnieje w nim droga z u do v.

Graf skierowany jest spójny (słabo spójny), jeśli jego pochodny graf

nieskierowny jest spójny.

Graf skierowany jest silnie spójny, jeśli dla każdej pary wierzchołków

u i v istnieje w nim droga z u do v.

Przykład skierowanego grafu spójnego, ale nie silnie spójnego

2

1 3

4

5a1

a2

a3 a4

a5

a6

Składową spójną grafu nazywamy taki jego podgraf, który jest spójny

i nie jest podgrafem innego grafu spójnego.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 7 / 12

Przykład grafu o 3 składowych spójnych

1

2 3

4

5

6

7

Twierdzenie

Dla grafu o n wierzchołkach i k składowych spójnych liczba

krawędzi m jest ograniczona przez nierówność:

2

)1)(()(

+−−≤≤− knknmkn

Wniosek

W grafie spójnym liczba krawędzi m spełnia nierówność:

2)1(

)1(−≤≤− nn

mn

Uwaga

• m jest maksymalne dla grafu pełnego Kn : 2

)1( −= nnm

• m jest minimalne dla drzewa : m = n − 1

Warunek konieczny i dostateczny dwudzielności grafu

Twierdzenie

Graf o n wierzchołkach, gdzie n ≥ 2, jest dwudzielny wtedy i tylko

wtedy, kiedy nie zawiera cyklu o nieparzystej długości.

Zauważmy, że w grafie dwudzielnym każdy cykl musi mieć parzystą

długość.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 8 / 12

Warunki konieczne planarności grafu

Rozważmy rysunek grafu planarnego G = ( V, E ) bez przecięć

krawędzi:

1

2 3

4

5

6

7

f 1

f 2 f 3

Na tym rysunku można wyróżnić podzbiory punktów płaszczyzny,

które mają dwie cechy:

każde dwa punkty z tego samego zbioru można połączyć krzywą na

płaszczyźnie, nie przecinając żadnej z krawędzi grafu;

każdy z tych podzbiorów jest maksymalny w sensie relacji

zawierania.

Takie podzbiory nazywamy ścianami grafu planarnego (np. f1, f2 i f3 ).

Dokładnie jedna ze ścian jest „nieograniczona”.

Przykład interpretacji pojęcia „ ściany” dla grafu planarnego

Graf ośmiościanu foremnego (jeden z tzw. grafów platońskich):

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 9 / 12

Twierdzenie

Jeśli graf o n wierzchołkach, m krawędziach, k składowych

spójnych i f ścianach jest planarny, to n – m + f = k + 1

Wniosek

Jeśli graf planarny jest spójny, to n – m + f = 2 (tzw. wzór Eulera)

Wniosek

Jeśli graf jest planarny i n ≥ 3, to m ≤≤≤≤ 3n – 6

Wniosek

Jeśli graf dwudzielny jest planarny i n ≥ 3, to m ≤≤≤≤ 2n – 4

Wniosek

Każdy graf planarny musi zawierać co najmniej jeden wierzchołek

o stopniu mniejszym niż 6.

PRZESZUKIWANIE GRAFÓW

Przeszukaniem grafu nazywamy dokonanie systematycznego

przeglądu grafu w celu wymienienia kolejno wszystkich jego

wierzchołków, bądź krawędzi.

Rozważmy spójny graf G = ( V, E ) o uporządkowanym zbiorze

wierzchołków – przyjmijmy dla prostoty, że jego zbiór wierzchołków

to V = 1, 2, 3, ..., n.

Wynikiem przeszukania grafu będzie ciąg ( )niii vvv ...,,,

21

zawierający bez powtórzeń wszystkie jego wierzchołki.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 10 / 12

Obie przedstawione metody oparte są na badaniu zbiorów wierzchoł-

ków sąsiednich, dopisywaniu wierzchołków do wyznaczanego ciągu

i nadawaniu lub usuwaniu etykiet z wierzchołków.

Metoda przeszukiwania grafu w głąb

W trakcie działania metody kolejnym wierzchołkom będą nadawane

etykiety „zamknięty”.

Rozpoczynamy od wskazania pierwszego wierzchołka w ciągu – v0.

1. wstaw v0 jako pierwszy element ciągu,

2. powtarzaj co następuje, aż do nadania wierzchołkowi v0 etykiety

„zamknięty”:

2.1. wybierz z aktualnego ciągu ostatni z jego wierzchołków,

który nie ma jeszcze etykiety „zamknięty”,

2.2. jeśli dla wybranego wierzchołka zbiór wierzchołków

sąsiednich, które jeszcze nie zostały dopisane do ciągu jest

pusty, to nadaj temu wierzchołkowi etykietę „zamknięty”,

w przeciwnym przypadku dopisz do ciągu pierwszy w

kolejności z jego wierzchołków sąsiednich, które jeszcze

nie został umieszczone w ciągu.

Uwaga:

przed rozpoczęciem przeszukiwania grafu żaden z jego wierzchołków

nie może mieć etykiety „zamknięty”.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 11 / 12

Przykład przeszukania grafu metodą w głąb

7

1

5

4

6

23

8

9

10

Jeśli rozpoczynamy od wierzchołka 5, to zostaje wyznaczony ciąg

wierzchołków grafu (5, 6, 3, 2, 7, 1, 10, 4, 9, 8)

Metoda przeszukiwania grafu wszerz

W trakcie działania metody będą z kolejnych wierzchołków usuwane

etykiety „nowy”.

Rozpoczynamy od wskazania pierwszego wierzchołka w ciągu – v0.

1. nadaj etykietę „nowy” wszystkim wierzchołkom drzewa,

2. wstaw v0 jako pierwszy element ciągu,

3. dopóki w tworzonym ciągu występuje wierzchołek z etykietą

„nowy”, powtarzaj co następuje:

3.1. wybierz z aktualnego ciągu pierwszy z wierzchołków,

które mają jeszcze etykietę „nowy”, dodaj do ciągu kolejno

wszystkie jego wierzchołki sąsiednie i usuń z tego

wierzchołka etykietę „nowy”.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (10) J.Sikorski Strona 12 / 12

Przykład przeszukania grafu metodą wszerz

7

1

5

4

6

23

8

9

10

Jeśli rozpoczynamy od wierzchołka 5, to zostaje wyznaczony ciąg

wierzchołków grafu (5, 6, 8, 3, 7, 9, 10, 2, 4, 1)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 1 / 12

DROGI i CYKLE EULERA w grafach

Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie

mosty w Królewcu dokładnie jeden raz?

Czy można narysować podaną figurę nie odrywając ołówka od

papieru i nie rysując dwukrotnie żadnego odcinka?

Drogą Eulera w grafie (skierowanym) nazywamy taką drogę prostą,

która zawiera wszystkie krawędzie (łuki) grafu.

Cyklem Eulera nazywamy zamkniętą drogę Eulera.

Graf, który ma cykl Eulera nazywamy grafem eulerowskim,

a taki, który ma drogę Eulera nazywamy grafem półeulerowskim.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 2 / 12

Twierdzenie (Euler, 1736)

Spójny graf G (nieskierowany) ma cykl Eulera wtedy i tylko wtedy,

gdy stopień każdego wierzchołka w G jest parzysty.

Leonhard Euler (1707 – 1783)

Dowód

(⇒) Załóżmy, że graf ma cykl Eulera. Jeśli będziemy przechodzili

wzdłuż krawędzi tego cyklu, usuwając je po przejściu, to w każdym

przechodzonym wierzchołku stopień będzie malał o 2. Ponieważ ten cykl

zawiera wszystkie krawędzie grafu dokładnie raz, to po przejściu całego

cyklu wszystkie wierzchołki będą stopnia 0. Zatem na początku wszystkie

musiały mieć stopień parzysty.

(⇐) Indukcja względem liczby krawędzi m.

Dla m = 3 twierdzenie oczywiście zachodzi.

Rozważmy graf o m > 3, zakładając, że każdy graf o mniejszej liczbie

krawędzi ma cykl Eulera.

Ze spójności grafu i parzystości stopni wierzchołków wynika, że

minimalny stopień wierzchołka jest równy 2. Zatem graf musi

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 3 / 12

zawierać cykl elementarny o długości co najmniej 3 (tw. Diraca).

Wybierzmy taki cykl i oznaczmy go przez C. Jeśli cykl C zawiera

każdą krawędź grafu, to dowód jest zakończony.

Jeśli nie, to usuwamy z grafu krawędzie należące do cyklu C.

Powstaje podgraf H, który ma mniej krawędzi niż graf G (może nie

być spójny), ale nadal każdy wierzchołek ma w nim stopień parzysty

(po usunięciu cyklu C stopień zmniejsza się o 0 lub 2). Na mocy

założenia indukcyjnego w każdej składowej spójnej podgrafu H

istnieje cykl Eulera. Ponadto ze spójności grafu G wynika, że każda

składowa podgrafu H ma wierzchołek wspólny z cyklem C.

Zatem cykl Eulera w grafie G można skonstruować przechodząc

kolejne krawędzie cyklu C w ustalonym kierunku od wybranego

wierzchołka początkowego i włączając do drogi cykle Eulera w

napotkanych składowych spójnych podgrafu H. W każdym

wierzchołku, który nie jest w H wierzchołkiem izolowanym,

przechodzimy krawędzie cyklu Eulera w tej składowej podgrafu H,

która zawiera ten wierzchołek. Po obejściu cyklu Eulera w składowej

podgrafu H kontynuujemy poruszanie się wzdłuż cyklu C i wracamy

na końcu do wierzchołka początkowego. Obchodzimy w ten sposób

dokładnie jeden raz wszystkie krawędzie grafu G.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 4 / 12

Przykład rekurencyjnego wyznaczania cyklu Eulera

1

2

3

4

5

6

7

8

9

1410

13

12

11

15

16C

Wniosek (z tw. Eulera)

Graf spójny, który ma nie więcej niż dwa wierzchołki stopnia

nieparzystego, ma drogę Eulera.

Grafy reprezentujące przykładowe problemy („spacer” i ‘koperta”)

nie ma drogi Eulera jest droga E., ale nie ma cyklu

Mostem nazywamy taką krawędź grafu, której usunięcie zwiększa

liczbę składowych spójnych tego grafu.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 5 / 12

Prosty algorytm wyznaczania drogi Eulera (tzw. alg. Fleury’ego)

Budujemy iteracyjnie ciąg krawędzi grafu (drogę lub cykl).

1. Wybierz dowolny wierzchołek v0 o nieparzystym stopniu, o ile taki

istnieje; w przeciwnym przypadku wybierz dowolny wierzchołek v0 ;

podstaw v ← v0 ;

2. Dopóki są w grafie krawędzie incydentne z v wykonuj:

2.1. Jeśli jest dokładnie jedna krawędź incydentna z v : v, w, to ją

wybierz;

2.2. Jeśli istnieje więcej niż jedna krawędź incydentna z v, to wybierz

dowolną krawędź incydentną v, w, która nie jest mostem;

2.3. wstaw wybraną krawędź jako kolejny wyraz ciągu i usuń ją z

grafu; podstaw v ← w ;

3. Jeśli ciąg zawiera wszystkie krawędzie grafu, to została wyznaczona

w nim droga lub cykl Eulera, a jeśli nie, to graf nie był spójny i

algorytm wyznaczył drogę lub cykl Eulera w jego składowej spójnej,

która zawiera wybrany początkowo wierzchołek v0.

Przykład działania algorytmu Fleury’ego

2

45

7

6

31

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 6 / 12

DROGI i CYKLE EULERA w grafach skierowanych

Twierdzenie

Spójny graf skierowany ma cykl Eulera wtedy i tylko wtedy, gdy dla

każdego wierzchołka v zachodzi d +(v) = d −(v).

Wniosek

Spójny graf skierowany ma drogę Eulera, gdy dla każdego

wierzchołka v zachodzi d +(v) = d −(v), albo gdy istnieją dokładnie

dwa wierzchołki v1 i v2 nie spełniające tego warunku, dla których

zachodzi d +(v1) – d −(v1) = d −(v2) – d +(v2) = 1.

DROGI i CYKLE HAMILTONA w grafach

Rozważmy graf (nieskierowany) G = ( V, E )

Drogą Hamiltona w grafie G nazywamy taką drogę elementarną,

która zawiera wszystkie wierzchołki grafu.

Cyklem Hamiltona w grafie G nazywamy taki cykl elementarny, który

zawiera wszystkie wierzchołki grafu (jest zamkniętą drogą Hamiltona).

Długość cyklu Hamiltona jest równa | V |.

Graf, który ma cykl Hamiltona nazywamy grafem hamiltonowskim, a

taki, który ma drogę Hamiltona nazywamy półhamiltonowskim.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 7 / 12

Przykłady

graf dwunastościanu foremnego graf Petersena (graf platoński) nie jest hamiltonowski jest hamiltonowski

Przykład cyklu Hamiltona w grafie sześcianu (związek z kodem Graya)

Kod Graya rzędu trzeciego (n =3):

(0,0,0) (1,0,0) (1,1,0) (0,1,0) (0,1,1) (1,1,1) (1,0,1) (0,0,1)

x

z

y

(1,0,1)

(1,1,1)

(1,1,0)

(1,0,0)

(0,0,1)

(0,0,0)

(0,1,1)

(0,1,0)

(nadawanie etykiet procesorom połączonym w tzw. kostkę)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 8 / 12

Graf pełny Kn jest hamiltonowski dla każdego n ≥ 3

i zawiera 2

)!1( −n cykli Hamiltona.

Przykład cykli Hamiltona w grafie K4 i K5

K4: 32

)!14( =−

1 2

34

1 2

34

1 2

34

K5: 122

)!15( =−

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

1

2

34

5

Twierdzenie

Dla każdego grafu dwudzielnego G = (V1∪V2, E) zachodzi:

• jeśli G ma cykl Hamiltona, to |V1| = |V2|,

• jeśli G ma drogę Hamiltona, to ||V1| − |V2|| ≤ 1.

Dla każdego pełnego grafu dwudzielnego, w którym |V1∪V2| ≥ 3 zachodzi:

• jeśli |V1| = |V2|, to G ma cykl Hamiltona,

• jeśli ||V1| − |V2|| ≤ 1, to G ma drogę Hamiltona.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 9 / 12

Warunki dostateczne istnienia cyklu Hamiltona

Twierdzenie (Ore, 1960)

Graf (nieskierowany) o n wierzchołkach dla n ≥ 3, w którym

d(v) + d(w) ≥ n dla każdej pary wierzchołków v i w niepołączonych

krawędzią (niezależnych), jest hamiltonowski

Przykład grafu hamiltonowskiego spełniającego warunek Ore

1

2

3

4

56

7

d(2)=4

d(3)=4

d(4)=3

d(5)=4

d(6)=3

d(7)=4

d(1)=4

Najniższy stopień mają wierzchołki 4 i 6.

Dla wierzchołków niezależnych z w. 4: d(v) + d(4) = 7 ≥ n = 7

Dla wierzchołków niezależnych z w. 6: d(v) + d(6) = 7 ≥ n = 7

Przykład grafu hamiltonowskiego, w którym warunek Ore nie jest spełniony

Dla grafu:

zachodzi d(v) + d(w) = 4 < n = 5

dla każdej pary wierzchołków v i w niepołączonych krawędzią,

a cykl Hamiltona oczywiście w nim istnieje.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 10 / 12

Wniosek (twierdzenie Diraca, 1952)

Jeśli graf (nieskierowany) ma n ≥ 3 wierzchołków i d(v) ≥ 2

n dla

każdego wierzchołka, to graf ten jest hamiltonowski.

Dowód

Vv∈∀ : d(v) ≥ 2

n ⇒ Vwu ∈∀ , : d(u) + d(w) ≥ n

Wniosek

Jeśli graf ma n ≥ 3 wierzchołków i co najmniej 22

)2)(1( +−− nn

krawędzi, to jest hamiltonowski.

Dowód

Załóżmy, że graf G = (V, E) ma |E| = 22

)2)(1( +−− nn krawędzi.

Wybierzmy u, v ∈ V takie, że u, v ∉ E i usuńmy z grafu

wierzchołki u i v oraz wszystkie krawędzie z nimi incydentne.

Zatem usunęliśmy d(u) + d(v) krawędzi i 2 wierzchołki.

Otrzymany podgraf G′ = (V′, E′) jest na pewno podgrafem Kn−2,

a zatem ma nie więcej niż 2

)3)(2( −− nn krawędzi.

Mamy więc: 22

)2)(1( +−− nn − d(u) − d(v) ≤ |E′ | ≤ 2

)3)(2( −− nn.

Stąd 2

)2)(1( −− nn −

2)3)(2( −− nn + 2 = n ≤ d(u) + d(v) i spełnione

są założenia twierdzenia Ore.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 11 / 12

Przykład grafu hamiltonowskiego (c.d.)

1

2

3

4

56

7

d(2)=4

d(3)=4

d(4)=3

d(5)=4

d(6)=3

d(7)=4

d(1)=4

Warunek Ore jest spełniony (patrz poprzedni przykład).

Warunek Diraca nie jest spełniony, bo np. d(4) = 3 < 2

n = 3,5.

Warunek na liczbę krawędzi także nie jest spełniony,

bo m = 13 < 22

)2)(1( +−− nn = 17.

W grafie G o n wierzchołkach uporządkujmy stopnie wszystkich

wierzchołków w ciąg niemalejący:

(d1(G), d2(G), ..., dn(G)), d1(G) ≤ d2(G) ≤ ... ≤ dn(G);

ciąg ten nazywamy sekwencją wstępującą stopni wierzchołków.

Ciąg liczb naturalnych (a1, a2, ..., an) nazywamy ciągiem

hamiltonowskim, jeśli każdy graf nieskierowany G o n wierzchołkach,

którego sekwencja wstępująca stopni wierzchołków spełnia warunek

di(G) ≥ ai , i = 1, 2, ..., n ,

jest grafem hamiltonowskim.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (11) J.Sikorski Strona 12 / 12

Twierdzenie (Chvátal, 1972)

Ciąg liczb naturalnych (a1, a2, ..., an),

w którym 0 ≤ a1 ≤ a2 ≤ ... ≤ an < n dla n ≥ 3, jest hamiltonowski

wtedy i tylko wtedy, gdy dla każdego i < 2

n spełniona jest implikacja:

ai ≤ i ⇒ an− i ≥ n – i .

Przykład grafu hamiltonowskiego

1

2

3

4

56

7

d(2)=3

d(3)=4

d(4)=3

d(5)=4

d(6)=2

d(7)=4

d(1)=4

Sekwencja wstępująca stopni wierzchołków: (2, 3, 3, 4, 4, 4, 4).

Zbadajmy, czy jest ona ciągiem hamiltonowskim.

i = 1 : a1 = 2 > 1 ⇒ a6 = 4 < 6 ; implikacja prawdziwa (0⇒0)

i = 2 : a2 = 3 > 2 ⇒ a5 = 4 < 5 ; implikacja prawdziwa (0⇒0)

i = 3 : a3 = 3 ≤ 3 ⇒ a4 = 4 ≥ 4 ; implikacja prawdziwa (1⇒1)

Zatem ciąg (2, 3, 3, 4, 4, 4, 4) jest ciągiem hamiltonowskim,

co oznacza, że graf o takiej sekwencji wstępującej ma cykl Hamiltona.

Warunek Ore nie jest spełniony, bo np. d(2) + d(6) = 5 < n = 7

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 1 / 13

DROGI i CYKLE HAMILTONA w grafach skierowanych

Dla grafu skierowanego D = ( V, A )

rozważmy zagadnienie istnienia cyklu elementarnego, który zawiera

wszystkie wierzchołki grafu, czyli cyklu Hamiltona,

Graf skierowany pełny bez pętli Dn jest hamiltonowski

dla każdego n ≥ 2 i zawiera (n−−−−1)! cykli Hamiltona.

Przykład cykli Hamiltona w grafie D3 i D4

D3: (3−1)! = 2 D4: (4−1)! = 6

1

2 3

1

2 3

1

2 3

4 1

2 3

4

1

2 3

4 1

2 3

4

1

2 3

4 1

2 3

4

Twierdzenie (Meyniel, 1973)

Jeśli D jest silnie spójnym grafem skierowanym bez pętli o n ≥ 2

wierzchołkach i dla dowolnej pary wierzchołków niezależnych

zachodzi warunek 12)()( −≥+ nwdvd , to graf D ma cykl Hamiltona.

(odpowiednik tw. Ore)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 2 / 13

Wniosek (twierdzenie Nash-Williams, 1969)

Jeśli D jest grafem skierowanym bez pętli, w którym 2

)(n

vd ≥+ i

2)(

nvd ≥− dla każdego wierzchołka v, to graf D ma cykl Hamiltona.

(odpowiednik tw. Diraca)

TURNIEJE

Graf skierowany bez pętli nazywamy turniejem, jeśli dla każdej pary

wierzchołków u i v zawiera on dokładnie jeden łuk:

albo (u, v), albo (v, u).

• turniej może reprezentować wyniki spotkań par uczestniczących w

rozgrywkach sportowych typu „każdy z każdym” (bez remisów)

Przykład turnieju

c

a b

d

Twierdzenie (Rédei, 1934)

Każdy turniej zawiera drogę Hamiltona.

Przykład dróg Hamiltona w turnieju:

(d, a, b, c), (d, b, c, a) i (d, c, a, b)

c

a b

d

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 3 / 13

Twierdzenie (Thomassen, 1982)

Każdy turniej zawiera drogę Hamiltona, która zaczyna się

w wierzchołku o najwyższym stopniu wyjściowym i kończy

w wierzchołku o najwyższym stopniu wejściowym.

Przykład turnieju bez cyklu Hamiltona

c

a b

d

Ten turniej nie jest silnie spójny.

Twierdzenie (Camion, 1959)

Każdy silnie spójny turniej zawiera cykl Hamiltona.

Przykład cyklu Hamiltona w silnie spójnym turnieju

c

a b

d

cykl Hamiltona: (a, b, d, c, a)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 4 / 13

DRZEWA i LASY

Lasem nazywamy graf nieskierowany, który nie zawiera cykli

elementarnych.

Drzewem nazywamy graf spójny, który nie zawiera cykli elementarnych.

Przykłady drzewa i lasu

takie krawędziesą wykluczone

drzewo las

Twierdzenie

Niech G będzie grafem nieskierowanym o n wierzchołkach.

Wówczas następujące stwierdzenia są równoważne:

1. Graf G jest drzewem.

2. Graf G nie zawiera cykli elementarnych i ma n−1 krawędzi.

3. Graf G jest spójny i ma n−1 krawędzi.

4. Graf G jest spójny i każda krawędź jest mostem.

5. Dowolne dwa wierzchołki grafu G są połączone dokładnie jedną

drogą.

6. Graf G nie zawiera cykli elementarnych, ale dołączenie dowolnej

nowej krawędzi do G tworzy dokładnie jeden taki cykl.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 5 / 13

Dowód

Dla n = 1 równoważność stwierdzeń jest oczywista.

Załóżmy zatem, że n ≥ 2.

(1. ⇒ 2.) Indukcja względem liczby wierzchołków; załóżmy, że implikacja

zachodzi dla dowolnego drzewa o liczbie wierzchołków nie większej od n −1.

Pokażemy, że zachodzi dla n. Usuńmy z G jedną krawędź. Ponieważ G nie

zawiera cykli elementarnych, to usunięcie krawędzi prowadzi do rozpadu G na

dwa drzewa, które na mocy założenia indukcyjnego mają razem (n −2)

krawędzi. Zatem G musi mieć (n −1) krawędzi.

(2. ⇒ 3.) Gdyby G nie był spójny, to łączna liczba krawędzi w jego

składowych, będących drzewami, byłaby co najmniej o 2 mniejsza od liczby

wierzchołków. Przeczy to założeniu, że G ma n−1 krawędzi.

(3. ⇒ 4.) Usunięcie dowolnej krawędzi daje graf o n wierzchołkach i n −2

krawędziach, który nie jest spójny.

(4. ⇒ 5.) Ponieważ G jest spójny, to każda para wierzchołków jest połączona co

najmniej jedną drogą. Gdyby dla pewnej pary wierzchołków były dwie takie

drogi, to powstałby cykl. Przeczy to założeniu, że każda krawędź jest mostem.

(5. ⇒ 6.) Graf G nie może zawierać cyklu elementarnego, bo oznaczałoby to,

że istnieje para wierzchołków połączona dwiema drogami wierzchołkowo

rozłącznymi. Dołączenie nowej krawędzi utworzy cykl elementarny. Może być

tylko jeden taki cykl, bowiem istnienie dwóch takich cykli oznaczałoby, że w G

istnieje cykl elementarny nie zawierający dołączanej krawędzi.

(6. ⇒ 1.) Graf G musi być spójny. Gdyby tak nie było, to dodanie krawędzi

łączącej składowe grafu nie powodowałoby powstania cyklu elementarnego.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 6 / 13

Wniosek

W drzewie o n ≥ 2 wierzchołkach co najmniej dwa z nich

są stopnia 1 (są liśćmi).

Dowód

22)1(22)( −=−==∑∈

nnEidVi

.

Wniosek

Jeśli graf G o n wierzchołkach jest lasem złożonym z k drzew, to

liczba jego krawędzi m = n – k.

Dla grafu spójnego G = (V, E) każde drzewo GT = (V, T) takie, że

T ⊆ E nazywamy drzewem rozpinającym (dendrytem) grafu G.

Przykład drzewa rozpinającego

5

4

31

2

Twierdzenie (Cayley, 1889)

Graf pełny Kn (dla n ≥ 2) ma n n−2 różnych drzew rozpinających.

Przykład liczby drzew rozpinających w grafie pełnym

K4 : 4 3

1 2

, n n−2 = 42 = 16

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 7 / 13

Dowód (zarys dowodu – konstrukcja kodu Prüfera dla drzewa)

Załóżmy, że wierzchołki grafu są ponumerowane liczbami

naturalnymi 1, ..., n. Łatwo sprawdzić, że dla n = 2 tw. zachodzi.

Pokażemy, że dla n ≥ 3 istnieje wzajemnie jednoznaczna

odpowiedniość pomiędzy drzewami rozpinającymi graf pełny Kn

a n n−2 ciągami (a1, a2, ..., an−2), gdzie ai jest liczbą naturalną

spełniającą nierówność 1 ≤ ai ≤ n.

Załóżmy, że T jest drzewem rozpinającym Kn . Wybieramy

wierzchołek v stopnia 1 o najmniejszym numerze i przyjmujemy jako

a1 numer wierzchołka sąsiedniego z v w drzewie T. Usuwamy z T

wierzchołek v wraz z incydentną z nim krawędzią. Powtarzamy

powyższe postępowanie kolejno dla a2, a3, ..., an−2 .

Aby ustalić odwrotną odpowiedniość pomiędzy ciągiem (a1, a2, ...,

an−2) a drzewem rozpinającym, weźmy dowolny ciąg (a1, a2, ..., an−2),

którego każdy wyraz spełnia warunek 1 ≤ ai ≤ n, i zbudujmy

odpowiadające mu drzewo T. Niech v będzie najmniejszą liczbą ze

zbioru N = 1, 2, ..., n, która nie występuje w ciągu (a1, a2, ..., an−2).

Dodajemy do T krawędź a1, v. Usuwamy a1 z ciągu i podstawiamy

N ← N \ v. Powtarzamy to postępowanie kolejno dla a2, a3, ..., an−2.

Na końcu łączymy krawędzią ostatnie dwa wierzchołki, które

pozostały w N.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 8 / 13

Przykład kodowania drzew rozpinających w grafie pełnym

K4 : n n−2 = 42 = 16

4 3

1 2(1, 1) (1, 2) (1, 3) (1, 4)

(2, 1) (2, 2) (2, 3) (2, 4)

(3, 1) (3, 2) (3, 3) (3, 4)

(4, 1) (4, 2) (4, 3) (4, 4)

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

4 3

1 2

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 9 / 13

Przykład użycia kodu Prüfera

kodowanie:

5

4 3

1

2

1

234

(1, 1, 4)

odkodowanie:

(3, 1, 5) 5

4 3

1

2

12

3

4

Drzewo przeglądu grafu w głąb

Po zakończeniu przeszukiwania grafu G = (V, E) metodą w głąb

uzyskujemy ciąg jego ponumerowanych wierzchołków: (1iv , ...,

niv ).

Wyznaczamy zbiór krawędzi T, który tworzy drzewo rozpinające G:

1. rozpocznij od T = ∅,

2. dla każdego j = n, n −1, ..., 2 wykonaj co następuje:

2.1. wybierz z ciągu (1iv , ...,

niv ) wierzchołek v, który jest

sąsiedni z wierzchołkiem jiv i ma największy indeks

spośród wierzchołków poprzedzających w ciągu jiv ,

2.2. dołącz do zbioru T krawędź jiv , v.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 10 / 13

Przykład drzewa przeglądu grafu w głąb

Ciąg wyznaczony metodą przeszukania w głąb: (5, 6, 3, 2, 7, 1, 10, 4, 9, 8)

7

1

5

4

6

23

8

9

10

Zbiór krawędzi drzewa rozpinającego:

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

Drzewo przeglądu grafu wszerz

Po zakończeniu przeszukiwania grafu G = (V, E) metodą wszerz

uzyskujemy ciąg jego ponumerowanych wierzchołków: (1iv , ...,

niv ).

Wyznaczamy zbiór krawędzi T, który tworzy drzewo rozpinające G:

1. rozpocznij od T = ∅,

2. dla każdego j = n, n −1, ..., 2 wykonaj co następuje:

2.1. wybierz z ciągu (1iv , ...,

niv ) wierzchołek v, który jest

sąsiedni z wierzchołkiem jiv i ma najmniejszy indeks

spośród wierzchołków ciągu,

2.2. dołącz do zbioru T krawędź jiv , v.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 11 / 13

Przykład drzewa przeglądu grafu wszerz

Ciąg wyznaczony metodą przeszukania wszerz: (5, 6, 8, 3, 7, 9, 10, 2, 4, 1)

7

1

5

4

6

23

8

9

10

Zbiór krawędzi drzewa rozpinającego:

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

Terminologia dla drzew rozpinających:

Dla GT = (V, T) , które jest drzewem rozpinającym grafu G = (V, E):

gałęziami (drzewa) nazywamy elementy zbioru T ,

cięciwami (grafu) nazywamy elementy zbioru E \ T .

Jeśli e jest cięciwą, to graf (V, T∪ e) zawiera dokładnie jeden cykl Ce.

Zbiór Ω = Ce : e ∈ E \ T nazywamy zbiorem cykli fundamentalnych

grafu G (względem drzewa rozpinającego GT)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 12 / 13

Przykład gałęzi, cięciw i cykli fundamentalnych

C2, 3 C2, 4 C4, 5

5

4

31

2

31

2 4

31

2

5

4

3

T = 1, 2, 1, 3, 3, 4, 3, 5, E \ T = 2, 3, 2, 4, 4, 5

Ω = C2, 3, C2, 4, C4, 5

Twierdzenie

Niech G = (V, E) będzie grafem spójnym a GT = (V, T) jego

dowolnym drzewem rozpinającym. Jeżeli każdy cykl będziemy

traktowali jak zbiór krawędzi, to każdy cykl prosty C w grafie G

można jednoznacznie przedstawić jako różnicę symetryczną cykli

fundamentalnych: C = 1e

C ⊗ 2eC ⊗ ... ⊗

keC ,

gdzie kee ...,,1 = C \ T jest zbiorem cięciw względem drzewa GT .

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (12) J.Sikorski Strona 13 / 13

Przykład przedstawiania cyklu prostego jako różnicy symetrycznej

C2, 3 C2, 4 C4, 5

5

4

31

2

31

2 4

31

2

5

4

3

5

4

31

2

C

T = 1, 2, 1, 3, 3, 4, 3, 5 , C \ T = 2, 3, 2, 4, 4, 5

zbiór cykli fundamentalnych C2, 3, C2, 4, C4, 5

C2, 3 C2, 4

C4, 5

31

2 4

31

2

4

3

2

=

2, 3, 3, 4, 2, 4

4

3

2

5

4

3

⊗ = 5

4

3

2

C2, 3, 3, 4, 2, 4

C = 2, 3, 3, 5, 4, 5, 2, 4 = (C2, 3 ⊗ C2, 4) ⊗ C4, 5

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 1 / 12

SPÓJNOŚĆ grafów

Przypomnienie

Graf (nieskierowany) G = ( V, E ) jest spójny, jeśli dla każdej pary

wierzchołków istnieje droga łącząca te wierzchołki;

graf spójny ma jedną składową spójną (tożsamą z tym grafem), a graf

niespójny ma co najmniej dwie składowe spójne.

Twierdzenie

Jeśli graf G ma n wierzchołków i k składowych spójnych, to liczba

jego krawędzi m spełnia nierówności: 2

)1)(( +−−≤≤− knknmkn

Przykład grafu niespójnego o maksymalnej liczbie krawędzi

1

2 3

4 5

6 7

8

dla n = 8 i k = 5 maksymalna liczba krawędzi wynosi m = 62

43 =⋅

Wniosek

Każdy graf, który ma n wierzchołków i ponad 2

)2)(1( −− nn krawędzi

jest spójny.

Dowód

Maksymalna liczba krawędzi dla k ≥ 2 wynosi 2

)2)(1( −− nn .

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 2 / 12

SPÓJNOŚĆ krawędziowa i wierzchołkowa

Zbiorem rozspajającym graf spójny G nazywamy taki podzbiór jego

krawędzi, którego usunięcie pozbawia ten graf spójności.

Minimalnym zbiorem rozspajającym graf G nazywamy taki zbiór

rozspajający, dla którego żaden z jego podzbiorów właściwych nie jest

zbiorem rozspajającym.

Przykład zbiorów rozspajających

4

3

2

1 5e2

e1e3

e4

e5

e6

e7

e1, e3, e4 - zbiór rozspajający,

e1, e4 i e2, e3, e4 - minimalne zbiory rozspajające

Spójnością krawędziową λλλλ (G) grafu spójnego G (dla n ≥ 2)

nazywamy najmniejszą moc jego zbioru rozspajającego.

Graf nazywamy k-spójnym krawędziowo, jeśli λ (G) ≥ k

Przykład

4

3

2

1 5e2

e1e3

e4

e5

e6

e7

λ(G) = 2 ; graf jest 2-spójny krawędziowo (także 1-spójny)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 3 / 12

Zbiorem rozdzielającym graf spójny G nazywamy taki podzbiór jego

wierzchołków, którego usunięcie pozbawia ten graf spójności.

Minimalnym zbiorem rozdzielającym graf G nazywamy taki zbiór

rozdzielający, dla którego żaden z jego podzbiorów właściwych nie jest

zbiorem rozdzielającym.

Spójnością wierzchołkową κκκκ (G) grafu spójnego G (dla n ≥ 2)

nazywamy najmniejszą moc jego zbioru rozdzielającego.

Graf nazywamy k-spójnym (wierzchołkowo), jeśli κ (G) ≥ k

Przykład zbioru rozdzielającego

4

3

2

1 5

1, 3, 4 - zbiór rozdzielający,

1, 4 i 3, 4 - minimalne zbiory rozdzielające

κ (G) = 2 , graf jest 2-spójny (wierzchołkowo)

Twierdzenie

Dla każdego spójnego grafu G zachodzi nierówność κ (G) ≤ λ(G).

Dowód

Ze zbioru wierzchołków incydentnych z krawędziami należącymi do

zbioru rozspajającego o najmniejszej mocy usuwamy jeden

wierzchołek z każdej pary wierzchołków sąsiednich. Powstaje zbiór

rozdzielający graf G o mocy nie większej niż λ(G).

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 4 / 12

Rozważmy graf spójny G = ( V, E ) oraz parę wyróżnionych

wierzchołków v, w ∈ V ( v ≠ w ):

• zbiorem rozspajającym wierzchołki v i w nazywamy taki podzbiór

krawędzi grafu, że każda droga łącząca wierzchołki v i w zawiera

krawędź z tego podzbioru.

• zbiorem rozdzielającym wierzchołki v i w nazywamy taki podzbiór

wierzchołków należących do V \ v, w, że każda droga łącząca

wierzchołki v i w zawiera wierzchołek z tego podzbioru.

• dwie drogi z v do w nazywamy krawędziowo rozłącznymi, jeśli nie

mają one wspólnych krawędzi,

• dwie drogi z v do w nazywamy wierzchołkowo rozłącznymi, jeśli nie

mają one wspólnych wierzchołków (z wyjątkiem v i w).

Przykłady zbiorów rozspajających, rozdzielających i dróg rozłącznych

d

b

e

a

c

v

g

f

h

i

w

a, d, b, d, e, h, e, i i v, a, v, b, v, c

- zbiory rozspajające v i w d, e i a, b, h, i - zbiory rozdzielające v i w (v, a, d, h, w) i (v, b, d, f, w) - drogi rozłączne krawędziowo, (v, a, d, h, w) i (v, c, e, i, w) - drogi rozłączne wierzchołkowo,

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 5 / 12

Twierdzenie (Mengera w wersji krawędziowej)

Maksymalna liczba dróg krawędziowo rozłącznych, łączących dwa

różne wierzchołki v i w w grafie spójnym G, jest równa minimalnej

liczbie krawędzi w zbiorze rozspajającym v i w.

Twierdzenie (Mengera w wersji wierzchołkowej, Menger 1927)

Maksymalna liczba dróg wierzchołkowo rozłącznych, łączących dwa

różne wierzchołki niesąsiednie v i w w grafie spójnym G, jest równa

minimalnej liczbie wierzchołków w zbiorze rozdzielającym v i w.

Wniosek

Graf jest k-spójny krawędziowo wtedy i tylko wtedy, gdy każda para

różnych jego wierzchołków jest połączona co najmniej k drogami

krawędziowo rozłącznymi.

Dowód (połowa)

Każda para różnych wierzch. jest połączona co najmniej k drogami

krawędziowo rozłącznymi ⇒ dla każdej pary wierzch. maksymalna

liczba dróg krawędziowo rozłącznych wynosi co najmniej k ⇒ dla

każdej pary wierzch. minimalna liczba krawędzi w zbiorze je

rozspajającym wynosi co najmniej k ⇒ minimalny zbiór rozspajający

graf liczy co najmniej k krawędzi ⇒ k ≤ λ (G)

Wniosek

Graf o co najmniej k+1 wierzchołkach jest k-spójny (wierzchołkowo)

wtedy i tylko wtedy, gdy każda para różnych jego wierzchołków jest

połączona co najmniej k drogami wierzchołkowo rozłącznymi.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 6 / 12

SEPARATORY i KONEKTORY

Rozważmy graf skierowany D = (V, A) z wyróżnionymi dwoma

podzbiorami wierzchołków S, T ⊆ V (nie muszą być one rozłączne).

• S-T drogą dla S, T ⊆ V nazywamy taką drogę elementarną P =

(v1, ..., vk) w grafie D, dla której V(P) ∩ S = v1 i V(P) ∩ T = vk

(V(P) oznacza zbiór wierzchołków drogi P)

Przykład S-T dróg

1 2 3

5

9

4

7

6

8

S T

S = 1, 2, 4, T = 2, 3, 6, 9

S-T drogi: P1 = (1, 5, 3), P2 = (2), P3 = (4, 7, 8, 9), P4 = (4, 7, 8, 5, 3)

Wierzchołkami wewnętrznymi S-T drogi P = (v1, ..., vk) nazywamy

wierzchołki ze zbioru V(P) \ (v1 ∪ vk).

Pojedynczy wierzchołek w grafie skierowanym traktujemy jako drogę;

zatem dla każdego v ∈ S ∩ T ≠ ∅ droga P = (v) jest S-T drogą

o pustym zbiorze wierzchołków wewnętrznych.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 7 / 12

• S-T separatorem grafu skierowanego D dla S, T ⊆ V nazywamy

taki zbiór Z ⊆ V , dla którego podgraf indukowany przez zbiór

wierzchołków V \ Z nie zawiera żadnej S-T drogi

| Z | nazywamy mocą S-T separatora.

Dla każdego S-T separatora | Z | ≥ | S ∩ T |, bo S ∩ T ⊆ Z

Przykład S-T separatorów

S T1 2 3

5

9

4

7

6

8

S = 1, 2, 4, T = 2, 3, 6, 9

S-T separatory: Z1 = (2, 5, 7), Z2 = (2, 5, 6, 9), Z3 = (1, 2, 7)

W przypadku S = v i T = w

przyjęte jest stosowanie oznaczenia: v-w separator.

Pojęcie S-T separatora jest uogólnieniem pojęcia zbioru

rozdzielającego:

jeżeli graf skierowany D = (V, A) jest symetryczny (tzn. (a, b) ∈ A ⇒

(b, a) ∈ A) oraz S = v i T = w (v ≠ w), to każdy v-w separator w

grafie D odpowiada zbiorowi rozdzielającemu wierzchołki v i w

w pochodnym grafie nieskierowanym G(D).

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 8 / 12

• S-T konektorem grafu skierowanego D dla S, T ⊆ V nazywamy taki

podgraf Q = (VQ, AQ) grafu D, którego każda składowa spójna jest

S-T drogą

Liczbę składowych spójnych S-T konektora nazywamy jego mocą.

Dla każdego W ⊆ S ∩ T graf skierowany pusty Q = (W, ∅)

jest S-T konektorem grafu skierowanego D = (V, A);

| W | jest mocą tego S-T konektora.

Przykład S-T konektorów

1 2 3

5

9

4

7

6

8

S T

S = 1, 2, 4, T = 2, 3, 6, 9

S-T konektory: Q1 = (2, ∅),

Q2 = (1, 3, 4, 5, 7, 8, 9, (1, 5), (4, 7), (5, 3), (7, 8), (8, 9))

moc Q1 wynosi 1, a moc Q2 wynosi 2

W przypadku S = v i T = w

przyjęte jest stosowanie oznaczenia: v-w konektor.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 9 / 12

Pojęcie S-T konektora jest uogólnieniem pojęcia zbioru dróg

wierzchołkowo rozłącznych:

jeżeli graf skierowany D = (V, A) jest symetryczny (tzn. (a, b) ∈ A ⇒

(b, a) ∈ A) oraz S = v i T = w (v ≠ w), to każdy v-w konektor w

grafie D odpowiada zbiorowi dróg wierzchołkowo rozłącznych

łączących v i w w pochodnym grafie nieskierowanym G(D).

Prosta obserwacja:

minimalna moc S-T separatora w grafie D = (V, A) dla zadanych

S, T ⊆ V ogranicza od góry moc wszystkich S-T konektorów grafu D.

Twierdzenie UM (uogólnienie twierdzeń Mengera)

Jeżeli w grafie skierowanym D = (V, A) wybrano dwa podzbiory

S, T ⊆ V oraz wyznaczono minimalną moc S-T separatora równą s,

to istnieje S-T konektor Q = (VQ, AQ) grafu D o mocy s.

Przykład ilustrujący twierdzenie

1 2 3

5

9

4

7

6

8

S T

S-T separator o mocy 3: 2, 5, 7, i S-T konektor o mocy 3:

Q = (1, 2, 3, 4, 5, 7, 8, 9, (1, 5), (4, 7), (5, 3), (7, 8), (8, 9))

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 10 / 12

Zbiorem rozspajającym silnie spójny graf skierowany D nazywamy

taki podzbiór jego łuków, którego usunięcie pozbawia ten graf silnej

spójności.

Zbiorem rozdzielającym silnie spójny graf skierowany D nazywamy

taki podzbiór jego wierzchołków, którego usunięcie pozbawia ten graf

silnej spójności.

W przypadku S = v i T = w (v ≠ w) z twierdzenia UM wynikają

odpowiedniki obu wersji twierdzenia Mengera dla grafu skierowanego:

Wniosek (wersja wierzchołkowa)

Jeżeli w grafie skierowanym D = (V, A) wybrano dwa różne

wierzchołki v i w, takie że (v, w) ∉ A, to minimalna moc zbioru

rozdzielającego wierzchołki v i w jest równa maksymalnej liczbie dróg

wierzchołkowo rozłącznych z v do w.

Dowód (szkic)

Wystarczy zdefiniować w naturalny sposób dla grafu skierowanego

odpowiednik pojęcia dróg wierzchołkowo rozłącznych oraz zastosować

twierdzenie UM dla S = V +(v) i T = V −(w).

Przykład ilustrujący dowód wniosku

dwie drogi wierzchołkowo rozłączne

v

w

S

T

v

w

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 11 / 12

Wniosek (wersja łukowa)

Jeżeli w grafie skierowanym D = (V, A) wybrano dwa różne wierzchołki

v i w, to minimalna moc zbioru rozspajającego wierzchołki v i w jest

równa maksymalnej liczbie dróg łukowo rozłącznych z v do w.

Dowód (szkic)

Po pierwsze, trzeba zdefiniować dla grafu skierowanego odpowiednik

grafu krawędziowego (tzw. graf łukowy): L(D) = (V ′, A′) oznacza graf

skierowany, w którym V ′ = A oraz (a′, a″) ∈ A′ wtedy i tylko wtedy,

kiedy łuki a′ i a″ są zależne. Po drugie, trzeba zdefiniować w naturalny

sposób dla grafu skierowanego odpowiednik pojęcia dróg łukowo

rozłącznych. Wystarczy teraz zastosować twierdzenie UM dla grafu

L(D), gdzie S jest zbiorem takich jego wierzchołków, które

odpowiadają łukom wychodzącym z v w grafie D, natomiast T jest

zbiorem takich wierzchołków grafu L(D), które odpowiadają łukom

wchodzącym do w w grafie D.

Przykład ilustrujący dowód wniosku

trzy drogi łukowo rozłączne

v

w

a

c

d be

f

g

h

j

ki

S

a

c

d

b

e

f

g

h

j

k

i

T

D L(D)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (13) J. Sikorski Strona 12 / 12

Silnie spójny graf skierowany D jest k-spójny wierzchołkowo, jeśli

pozbawienie go silnej spójności wymaga usunięcia nie mniej niż k

wierzchołków.

Silnie spójny graf skierowany D jest k-spójny łukowo, jeśli

pozbawienie go silnej spójności wymaga usunięcia nie mniej niż k

łuków.

Twierdzenie

Graf skierowany jest k-spójny wierzchołkowo, jeśli dla każdych dwóch

różnych jego wierzchołków v i w istnieje co najmniej k dróg

wierzchołkowo rozłącznych z v do w.

Twierdzenie

Graf skierowany jest k-spójny łukowo, jeśli dla każdych dwóch

różnych jego wierzchołków v i w istnieje co najmniej k dróg łukowo

rozłącznych z v do w.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 1 / 12

PRZEPŁYWY W SIECIACH

• Siecią nazywamy parę uporządkowaną S = ( D, c) ,

gdzie: D = ( V, A ) jest grafem skierowanym,

c : A → R+ jest funkcją, która przyporządkowuje łukowi

(u, v) liczbę rzeczywistą nieujemną c(u, v), nazywaną

przepustowością łuku;

w grafie D wyróżnione są dwa wierzchołki s, t ∈V (s ≠ t)

nazywane: s – źródłem , a t – ujściem sieci.

Przykład sieci

v

x

y

ts

6

3

2

3

1

2

3

1

2

z

3

Czasami wygodnie jest zdefiniować funkcję c na całym zbiorze V × V

i wtedy przyjmujemy, że c(u, v) = 0 dla (u, v) ∈ (V × V) \ A

• Przepływem z s do t w sieci S nazywamy funkcję

f : A → R+ , spełniającą następujące warunki:

1. 0 ≤ f (u, v) ≤ c (u, v) dla każdego (u, v) ∈ A

2. 0),(),()()(

=− ∑∑−+ ∈∈ vVuvVu

vufuvf dla każdego v ∈ V \ s, t

(warunek zachowania przepływu)

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 2 / 12

Przykład przepływu w sieci

v

x

y

ts

5 (6)

3 (3)

1 (2)

2 (3)

1 (1)

1 (2)

3 (3)

0 (1)

1 (2)

z

3 (3)

f (s, x) = 5 ≤ 6 = c (s, x), f (x, t) = 3 ≤ 3 = c (x, t) itd.

∑∑−+ ∈∈

−)()(

),(),(xVuxVu

xufuxf = ( f (x, t) + f (x, v)) – ( f (s, x) + f (z, x)) =

= (3 + 2) – (5 + 0) = 5 – 5 = 0 itd.

• Wartością przepływu f nazywamy liczbę W( f ) daną wzorem:

∑∑−+ ∈∈

−=)()(

),(),()(sVusVu

sufusffW

Z warunku zachowania przepływu wynika, że

∑∑+− ∈∈

−=)()(

),(),()(tVutVu

utftuffW

Przykład wyznaczania wartości przepływu w sieci

W(f ) = f (s, x) + f (s, y) − f (s, v) = 5 + 3 − 1 = 7

lub

W(f ) = f (x, t) + f (z, t) + f (y, t) = 3 + 1 + 3 = 7

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 3 / 12

• Przekrojem sieci, który odpowiada niepustemu podzbiorowi

wierzchołków sieci U ⊂ V ( U ≠ ∅ ), nazywamy zbiór łuków

PU = A ∩ ( U × ( V \ U) ) = (u, v) ∈ A : u ∈ U, v ∈ V \ U

Przykład przekroju sieci

U

v

x

y

ts

5

3

1

2

1

1

3

0

1

z

3

Podzbiór wierzchołków U = s, v, y

(jego uzupełnienie do V to V \ U = x, z, t )

i odpowiadający mu przekrój sieci: PU = (s, x), (y, z), (y, t)

• Przepływem przez przekrój PU nazywamy liczbę

f (U, V \ U) = ∑∈ UPvu

vuf),(

),(

Przykład wyznaczania przepływu przez przekrój sieci

Dla przekroju sieci PU = (s, x), (y, z), (y, t)

przepływ przez ten przekrój wynosi

f ( s, v, y, ( x, t, z ) = f (s, x) + f (y, z) + f (y, t) = 5 + 1 + 3 = 9

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 4 / 12

Lemat

Jeśli s ∈ U i t ∈ V \ U dla pewnego podzbioru U ⊂ V , to dla

dowolnego przepływu f z s do t zachodzi równość

W(f ) = f (U, V \ U) − f (V \ U, U) ,

Gdzie f (U, V \ U) jest przepływem przez przekrój PU ,

a f (V \ U, U) jest przepływem przez przekrój PV \ U .

Dowód

Z definicji wartości przepływu:

∑∑−+ ∈∈

−=)()(

),(),()(

sVusVu

sufusffW ,

a z warunków zachowania przepływu w wierzchołkach v ∈ U \ s:

∑∑−+ ∈∈

−=)()(

),(),(0

vVuvVu

vufuvf .

Zsumujmy stronami wszystkie równania:

+−

+= ∑∑∑∑

∩∈∩∈∩∈∩∈ −−++ )\()()()\()()(

),(),(),(),()(

UVsVuUsVuUVsVuUsVu

sufsufusfusffW

+

++= ∑∑∑

∩∈∩∈∩∈ +++ )\()()\()()(

),(),(),(0

UVvVusUvVusvVu

uvfuvfuvf

++− ∑∑∑

∩∈∩∈∩∈ −−− )\()()\()()(

),(),(),(

UVvVusUvVusvVu

vufvufvuf dla v ∈ U \ s

Otrzymamy równanie:

+

−= ∑ ∑∑

∈ ∩∈∩∈ −+ \ )()(

),(),()(sUv svVuUsVu

vufusffW łuki z s do v∈U \s

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 5 / 12

+

+ ∑∑ ∑

∩∈∈ ∩∈ −+ UsVusUv svVu

sufuvf

)(\ )(

),(),( łuki z v∈U \s do s

+

−+ ∑ ∑∑

∈ ∩∈∩∈ −+\ )\()()\()(

),(),(sUv sUvVusUvVu

vufuvf łuki w obrębie U \s

+

++ ∑ ∑∑

∈ ∩∈∩∈ ++ \ )\()()\()(

),(),(sUv UVvVuUVsVu

uvfusf łuki z v∈U do u∈V \U

+− ∑ ∑∑

∈ ∩∈∩∈ −− \ )\()()\()(

),(),(sUv UVvVuUVsVu

vufsuf łuki z u∈V \U do v∈U

Trzy pierwsze składniki redukują się do 0 i pozostaje

( ) ),\(\,),(),()(

\),(),(

UUVfUVUfvufuvffW

UVU PvuPuv

−=−= ∑∑∈∈

Przykład ilustrujący lemat

V U\

U

v

x

y

ts

5

3

1

2

1

1

3

0

1

z

3

Podzbiór wierzchołków: U = s, y, z ,

odpowiadający mu przekrój sieci: PU = (s, x), (y, t), (z, x), (z, t)

i przepływ przez ten przekrój f ( s, y, z, v, x, t ) = 5 + 3 + 0 + 1 = 9

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 6 / 12

V U\

U

v

x

y

ts

5

3

1

2

11

3

0

1

z

3

Podzbiór wierzchołków: V \ U = v, x, t ,

odpowiadający mu przekrój sieci: PV \ U = (v, s), (v, y)

i przepływ przez ten przekrój f ( v, x, t, s, y, z ) = 1 + 1 = 2 ;

7 = W(f ) = f ( s, y, z, v, x, t ) − f ( v, x, t, s, y, z ) = 9 − 2 = 7

• Przepustowością przekroju PU dla U ⊂ V nazywamy liczbę

C(PU) = ∑∈ UPvu

vuc),(

),(

Przykład wyznaczania przepustowości przekroju

U

v

x

y

ts

6

3

2

3

1

2

3

1

2

z

3

C(P s, v, y) = c(s, x) + c(y, z) + c(y, t) = 6 + 2 + 3 = 11

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 7 / 12

Lemat

Dla dowolnego przepływu f z s do t w sieci S oraz przekroju PU ,

wyznaczonego przez podzbiór U ⊂ V , dla którego s∈U i t∈V \ U,

zachodzi nierówność

W(f ) ≤ C(PU),

Dowód

Dla ustalonego przepływu f i zbioru U z twierdzenia wynika

W(f ) = f (U, V \ U) − f (V \ U, U) ≤ f (U, V \ U)

Z definicji przepływu wynika, że f (U, V \ U) ≤ C(PU)

• Minimalnym przekrojem sieci pomiędzy źródłem i ujściem

nazywamy taki przekrój PU , dla którego przepustowość jest

najmniejsza ze wszystkich przekrojów sieci odpowiadających

takim podzbiorom U ⊂ V, że s ∈ U i t ∈ V \ U.

Zatem dla każdego przepływu w sieci jego wartość nie jest większa

od przepustowości minimalnego przekroju.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 8 / 12

Przykład wyznaczania minimalnego przekroju sieci

v

x

y

ts

6

3

2

3

1

2

3

1

2

z

3

Przekroje sieci pomiędzy s i t odpowiadają wszystkim zbiorom postaci

s ∪ A , gdzie A jest podzbiorem v, x, y, z:

U1 = s, U2 = s, v, U3 = s, v, x, U4 = s, x,

U5 = s, x, y, U6 = s, v, x, y, U7 = s, v, y, U8 = s, y,

U9 = s, y, z, U10 = s, v, y, z, U11 = s, v, x, y, z, U12 = s, x, y, z,

U13 = s, x, z, U14 = s, v, x, z, U15 = s, v, z, U16 = s, z.

( )( )16,...,1=iUi

PC = (9, 10, 7, 9, 11, 8, 11, 11, 12, 12, 8, 11, 11, 9, 13, 12)

Wartość minimalna w tym ciągu to 7 = ( ),, xvsPC

U

v

x

y

ts

6

3

2

3

1

2

3

1

2

z

33

Podzbiór U3 = s, v, x wyznacza minimalny przekrój 3UP pomiędzy

źródłem i ujściem o przepustowości C(3UP ) = 7.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 9 / 12

Zatem przepływ:

v

x

y

ts

5 (6)

3 (3)

1 (2)

2 (3)

1 (1)

1 (2)

3 (3)

0 (1)

1 (2)

z

3 (3)

o wartości 7 jest przepływem o maksymalnej wartości w tej sieci.

Czy w każdej sieci można znaleźć przepływ o wartości równej

przepustowości minimalnego przekroju?

TAK

Twierdzenie (Ford i Fulkerson, 1955)

W każdej sieci maksymalna wartość przepływu ze źródła do ujścia jest

równa przepustowości minimalnego przekroju pomiędzy źródłem

i ujściem.

Dla danej sieci S = (D, c), gdzie D = (V, A) jest grafem skierowanym

rozważmy drogę prostą P = (v1, …, vk) w pochodnym grafie

niekierowanym G(D).

Drodze P odpowiada ciąg łuków (a1, …, ak−1), w którym ai ∈ A

dla i = 1, …, k−1 oraz ai = (vi, vi+1) albo ai = (vi+1, vi).

Łuk ai w przypadku ai = (vi, vi+1) nazywamy łukiem zgodnym z

kierunkiem od v1 do vk , a w przypadku ai = (vi+1, vi) łukiem

niezgodnym z tym kierunkiem.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 10 / 12

• Dla danego przepływu f w sieci S oraz drogi prostej P ciąg

(a1, …, ak−1) nazywamy ścieżką z v1 do vk powiększającą

przepływ f, jeśli dla każdego łuku ai zgodnego z kierunkiem od

v1 do vk zachodzi f (ai) < c(ai), a dla każdego łuku ai

niezgodnego z kierunkiem od v1 do vk zachodzi f (ai) > 0.

Jeżeli dla danego przepływu f istnieje w sieci ścieżka z s do t

powiększająca ten przepływ, to wartość przepływu przez sieć można

zwiększyć o pewną wartość ε > 0, definiując nowy przepływ f ′, w

którym f ′(a) = f (a) + ε , dla każdego łuku a zgodnego z kierunkiem

od s do t, oraz f ′(a) = f (a) − ε , dla każdego łuku a niezgodnego z tym

kierunkiem.

Największa możliwa wartość ε jest równa minimum z różnic pomię-

dzy przepustowością i wartością przepływu dla łuków zgodnych z

kierunkiem z s do t oraz z wartości przepływu dla łuków niezgodnych.

Przykłady ścieżek powiększających przepływy w sieci

v

x

y

ts

4 (6)

3 (3)

2 (2)

3 (3)

1 (1)

0 (2)

3 (3)

1 (1)

1 (2)

z

2 (3)

W( f ) = 5

Ciąg łuków ((s, x), (z, x), (z, t)) odpowiada drodze P = (s, x, z, t) w G(D).

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 11 / 12

Łuki (s, x) i (z, t) są zgodne z kierunkiem od s do t, a łuk (z, x) jest

niezgodny z tym kierunkiem.

v

x

y

ts

4 (6)

3 (3)

2 (2)

3 (3)

1 (1)

0 (2)

3 (3)

1 (1)

1 (2)

z

2 (3)

W( f ) = 5

Ciąg łuków ((s, x), (z, x), (z, t)) jest ścieżką z s do t powiększającą

przepływ f :

c(s, x) − f (s, x) = 6 − 4 = 2 i c(z, t) − f (z, t) = 2 − 0 = 2,

czyli dla łuków zgodnych z kierunkiem od s do t zachodzi f (a) < c(a);

f (z, x) = 1 > 0 dla łuku niezgodnego z tym kierunkiem.

Można zatem zwiększyć wartość przepływu w sieci przyjmując ε = 1;

nowe wartości przepływów przez łuki ze ścieżki wyniosą wtedy:

f ′(s, x) = f (s, x) + 1 = 4 + 1 = 5, f ′(z, x) = f (z, x) − 1 = 1 − 1 = 0

f ′(z, t) = f (z, t) + 1 = 0 + 1 = 1; W( f ′) = W( f ) + 1 = 5 + 1= 6

v

x

y

ts

5 (6)

3 (3)

2 (2)

3 (3)

1 (1)

1 (2)

3 (3)

0 (1)

1 (2)

z

2 (3)

W( f ′) = 6

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (14) J.Sikorski Strona 12 / 12

v

x

y

ts

5 (6)

3 (3)

2 (2) 3 (3)

1 (1)

1 (2)

3 (3)

0 (1)

1 (2)

z

2 (3)

W( f ′) = 6

Ciąg łuków ((v, s), (x, v), (x, t)) jest ścieżką z s do t powiększającą

przepływ f ′: c(x, t) − f ′(x, t) = 3 − 2 = 1 ,

czyli dla łuku zgodnego z kierunkiem od s do t zachodzi f ′(a) < c(a);

f ′(v, s) = 2 > 0 i f ′(x, v) = 3 > 0

dla łuków niezgodnych z tym kierunkiem.

Można zatem zwiększyć wartość przepływu w sieci przyjmując ε = 1;

nowe wartości przepływów przez łuki ze ścieżki wyniosą wtedy:

f ′′(v, s) = f ′(v, s) − 1 = 2 − 1 = 1, f ′′(x, v) = f ′(x, v) − 1 = 3 − 1 = 2

f ′′(x, t) = f ′(x, t) + 1 = 2 + 1 = 3; W( f ′′) = W( f ′) + 1 = 6 + 1= 7

v

x

y

ts

5 (6)

3 (3)

1 (2)

2 (3)

1 (1)

1 (2)

3 (3)

0 (1)

1 (2)

z

3 (3)

W( f ′′) = 7

Twierdzenie

Przepływ f w sieci S jest maksymalny wtedy i tylko wtedy, kiedy nie

istnieje dla niego ścieżka powiększająca ze źródła s do ujścia t.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 1 / 13

SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH.

Rozważamy graf G = (V, E)

Dwie krawędzie e ′, e ′′∈ E nazywamy niezależnymi, jeśli nie są

incydentne ze wspólnym wierzchołkiem.

• Skojarzeniem w grafie G nazywamy dowolny podzbiór

krawędzi parami niezależnych.

Przykład skojarzenia

5

4

31

2

Dwa wierzchołki v ′, v ′′∈ V nazywamy niezależnymi, jeśli nie są

wierzchołkami sąsiednimi (nie są incydentne z tą samą krawędzią).

• Zbiorem wewnętrznie stabilnym wierzchołków grafu G nazywamy

dowolny podzbiór wierzchołków parami niezależnych.

Przykład zbioru wewnętrznie stabilnego

5

4

31

2

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 2 / 13

Przykład zastosowania zbioru wewnętrznie stabilnego

Na zadanym obszarze mamy ustaloną liczbę n miejsc, w których

możemy ulokować pewną liczbę obiektów. Miejsca te są

ponumerowane od 1 do n i będziemy je przedstawiali jako wierzchołki

grafu. Dla każdego miejsca i = 1, …, n znany jest podzbiór miejsc

K(i), w których umieszczenie kolejnego obiektu nie jest możliwe, jeśli

jest on już umieszczony w miejscu i. Chcemy na podanym obszarze

umieścić jak największą liczbę obiektów w podanych lokalizacjach.

1

2 5

4

8 11

7 10 13

3 6 9 12 15

14

Np. K(5) = 2, 4, 6, 8, K(12) = 8, 9, 11, 14, 15.

Opisane zagadnienie można wygodnie przedstawić jako poszukiwanie

wewnętrznie stabilnego zbioru wierzchołków o maksymalnej mocy

w tzw. grafie konfliktów: V = 1, …, n i E = i, j : i ∈ V, j ∈ K(i).

Uwaga:

Zagadnienie wyznaczania maksymalnego skojarzenia w grafie jako

problem algorytmiczny ma złożoność wielomianową, ale zagadnienie

wyznaczania maksymalnego zbioru wewnętrznie stabilnego

wierzchołków należy niestety do klasy problemów NP-trudnych.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 3 / 13

Rozważmy skojarzenie M ⊆ E w grafie G = (V, E)

• Drogą przemienną względem skojarzenia M w grafie G

nazywamy drogę prostą w tym grafie, której kolejne krawędzie

na przemian albo należą, albo nie należą do M.

Przykłady dróg w grafie ze skojarzeniem

5

4

31

2

5

4

31

2

5

4

31

2

P P

Q

’ ’’

P′ = (3, 3, 1, 1, 1, 2, 2, 2, 4, 4, 4, 5, 5, 3, 5, 3) jest drogą

przemienną względem skojarzenia M = 1, 2, 4, 5;

P″ = (5, 4, 5, 4, 1, 4, 1, 1, 2, 2, 2, 4, 4) jest drogą przemienną

względem skojarzenia M;

Q nie jest drogą przemienną względem M.

Wierzchołki grafu incydentne z krawędziami należącymi do

skojarzenia M nazywamy wierzchołkami nasyconymi, natomiast

pozostałe wierzchołki grafu nazywamy wierzchołkami

nienasyconymi.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 4 / 13

• Drogą powiększającą względem skojarzenia M w grafie G

nazywamy drogę przemienną względem M, która nie jest cyklem

i której końce są wierzchołkami nienasyconymi względem tego

skojarzenia.

Twierdzenie (Berge, 1957)

Skojarzenie M w grafie G jest skojarzeniem o maksymalnej mocy

wtedy i tylko wtedy, kiedy graf G nie zawiera drogi powiększającej

względem M.

Claude Berge (1926 – 2002)

Dowód twierdzenia oparty jest na spostrzeżeniu, że jeśli w grafie G

istnieje droga P powiększająca względem skojarzenia M, to zbiór

krawędzi M ⊗ E(P) jest także skojarzeniem w grafie G i ma moc o

jeden większą od mocy M .

E(P) oznacza zbiór krawędzi w drodze P.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 5 / 13

Przykłady wykorzystania tw. Berga

1

2 5

4

8 11

7 10 13

3 6 9 12 15

14

Skojarzenie M = 2, 4, 6, 9, 8, 12, 13, 14 o mocy |M| = 4;

droga P = (5, 5, 8, 8, 8, 12, 12, 12, 15, 15 jest drogą

powiększającą względem M (jest drogą przemienną względem M oraz

wierzchołki 5 i 12 są nienasycone względem M);

M ′ = M ⊗ E(P) =

2, 4, 6, 9, 8, 12, 13, 14 ⊗ 5, 8, 8, 12, 12, 15 =

= 2, 4, 5, 8, 6, 9, 12, 15, 13, 14

jest skojarzeniem w grafie G i | M ′ | = 5.

1

2 5

4

8 11

7 10

3 6 9 12 15

13

14

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 6 / 13

Dla skojarzenia M ′ : 1

2 5

4

8 11

7 10

3 6 9 12 15

13

14

można zbudować skojarzeniem M ″ o mocy równej 6.

1

2 5

4

8 11

7 10

3 6 9 12 15

13

14

POKRYCIA KRAW ĘDZIOWE i WIERZCHOŁKOWE

• Pokryciem krawędziowym grafu nazywamy taki podzbiór jego

krawędzi, że każdy wierzchołek grafu jest incydentny

z co najmniej jedną krawędzią z tego podzbioru.

Przykład pokrycia krawędziowego

5

4

31

2

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 7 / 13

• Pokryciem wierzchołkowym grafu nazywamy taki podzbiór jego

wierzchołków, że każda krawędź grafu jest incydentna

z co najmniej jednym wierzchołkiem z tego podzbioru.

Przykład pokrycia wierzchołkowego

5

4

31

2

Uwaga:

Zagadnienie wyznaczania minimalnego pokrycia krawędziowego

w grafie jako problem algorytmiczny ma złożoność wielomianową, ale

zagadnienie wyznaczania minimalnego pokrycia wierzchołkowego

należy niestety do klasy problemów NP-trudnych.

Dla grafu G bez wierzchołków izolowanych przyjmijmy oznaczenia:

ν (G) - maksymalna liczba krawędzi niezależnych w grafie G,

α (G) - maksymalna liczba wierzchołków niezależnych w grafie G,

ρ (G) - minimalna liczba krawędzi pokrywających wszystkie

wierzchołki grafu G,

τ (G) - minimalna liczba wierzchołków pokrywających wszystkie

krawędzie grafu G.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 8 / 13

Twierdzenie (Gallai, 1959)

Jeśli graf G = (V, E) jest grafem bez wierzchołków izolowanych, to

α (G) + τ (G) = | V | ,

czyli maksymalna moc zbioru wewnętrznie stabilnego wierzchołków i

minimalna moc pokrycia wierzchołkowego sumują się do liczby

wierzchołków w grafie, oraz

ν (G) + ρ (G) = | V | ,

czyli maksymalna moc skojarzenia i minimalna moc pokrycia

krawędziowego także sumują się do liczby wierzchołków w grafie.

Ponadto zachodzą nierówności:

ν (G) ≤ τ (G) i α (G) ≤ ρ (G).

(maks.moc skojarz. ≤ min.moc pokr.wierz.) (maks.moc zb.w.stab. ≤ min.moc pokr.kraw.)

Twierdzenie (König, 1916)

Jeśli graf jest dwudzielny, to ν (G) = τ (G)

(maksymalna moc skojarzenia jest równa minimalnej mocy pokrycia

wierzchołkowego).

• Skojarzeniem doskonałym w grafie nazywamy takie

skojarzenie, względem którego wszystkie wierzchołki tego grafu

są nasycone.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 9 / 13

Dla grafu G = (V, E) i podzbioru S ⊆ V przyjmijmy oznaczenie:

q(G−S) - liczba składowych spójnych o nieparzystej liczbie

wierzchołków w podgrafie grafu G, indukowanym przez podzbiór

wierzchołków V \ S.

Twierdzenie (Tutte, 1947)

Graf G ma skojarzenie doskonałe wtedy i tylko wtedy, kiedy

q(G−S) ≤ | S | dla każdego S ⊆ V.

Rozważmy teraz graf dwudzielny G = (V1∪V2, E).

• Skojarzeniem pełnym względem zbioru V1 (lub V2) nazywamy

takie skojarzenie w grafie G, względem którego wszystkie

wierzchołki v ∈ V1 (lub v ∈ V2) są nasycone.

Dla podzbioru S ⊆ V1 przyjmijmy oznaczenie:

N(S) – zbiór takich wierzchołków v2 ∈ V2 , dla których istnieje w

zbiorze S co najmniej jeden wierzchołek sąsiedni ( N(S) ⊆ V2 ).

Twierdzenie (Hall, 1935) – tzw. „twierdzenie o małżeństwach”

W grafie dwudzielnym G = (V1∪V2, E) istnieje skojarzenie pełne

względem zbioru V1 wtedy i tylko wtedy, kiedy

| N(S) | ≥ | S | dla każdego S ⊆ V1 .

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 10 / 13

Przykład sprawdzania warunku z tw. Halla

5

4

3

1

2

e

d

c

a

b

N a c( )1, 3, 5 = ,

V1 V2

5

4

3

1

2

e

d

c

a

b

V1 V2

(warunek Halla nie zachodzi) (istnieje skojarzenie pełne wzg. V1)

Wniosek (z tw. Halla)

Jeśli niepusty graf G jest dwudzielny i regularny, to ma skojarzenie

doskonałe.

KOLOROWANIE WIERZCHOŁKÓW GRAFU

Graf G jest k-barwny, jeśli każdemu wierzchołkowi można

przyporządkować jeden z k kolorów w taki sposób, że wierzchołki

sąsiednie mają różne kolory (nazywamy to pokolorowaniem

prawidłowym).

• Liczbą chromatyczną grafu G (ozn. χ (G) ) nazywamy

najmniejszą liczbę naturalną k, dla której graf ten jest k-barwny.

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 11 / 13

Przykład określenia liczby chromatycznej grafu

1

2

3

4

5 χ (G) = 4

Wyznaczenie liczby chromatycznej dla niektórych klas grafów jest

łatwe:

o dla grafu Kn liczba chromatyczna wynosi n,

o dla drzewa o co najmniej 2 wierzchołkach – wynosi 2,

o dla niepustego grafu dwudzielnego – wynosi 2,

ale w ogólnym przypadku jako problem algorytmiczny jest NP-trudne.

Proste oszacowania dla liczby chromatycznej:

o dla dowolnego grafu G o m krawędziach 41

221

)( ++≤ mGχ

np. dla m =10 daje to oszacowanie χ (G) ≤ 5,

o dla dowolnego grafu χ (G) ≤ ∆ (G) + 1, gdzie ∆ (G) oznacza

maksymalny stopień wierzchołka w grafie G,

o jeśli graf G jest spójny, nie jest grafem pełnym i nie jest cyklem

elementarnym o nieparzystej długości, to χ (G) ≤ ∆ (G).

Przez stulecia rozważany był problem znany jako „zagadnienie 4 barw”:

czy każdą mapę płaską można prawidłowo pokolorować 4 barwami?

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 12 / 13

• pierwsza pisana wzmianka o problemie – list do De Morgana (1852)

• dowód rozstrzygającego twierdzenia (ze wspomaganiem

komputerowym) – Appel i Haken (1976)

Przykład zagadnienia kolorowania mapy płaskiej

ZACHODNIOPOMORSKIE

POMORSKIEWARMIŃSKO-MAZURSKIE

KUJAWSKO-POMORSKIE

WIELKOPOLSKIE

MAZOWIECKIE

PODLASKIE

LUBELSKIE

ŁÓDZKIE

LUBUSKIE

DOLNOŚLĄSKIE

OPOLSKIEŚLĄSKIE

ŚWIĘTO-KRZYSKIE

PODKARPACKIE

MAŁOPOLSKIE

POZNAŃ

SZCZECIN

ZIELONAGÓRA

WROCŁAW

OPOLE

KATOWICE

KRAKÓW

RZESZÓW

LUBLIN

BIAŁYSTOK

ŁÓDŹ

KIELCE

WARSZAWA

BYDGOSZCZ

OLSZTYN

GDAŃSK

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WIT

MATEMATYKA DYSKRETNA (15) J.Sikorski Strona 13 / 13

Twierdzenie „o czterech barwach”

Każdy graf planarny jest 4-barwny.

(każdą mapę płaską można pokolorować czterema barwami tak, że

każde dwa obszary o wspólnej granicy będą miały różne barwy)

Twierdzenie (Grötzsch, 1959)

Każdy graf planarny, który nie zawiera podgrafu izomorficznego z K3,

jest 3-barwny.

Twierdzenie (König, 1916)

Graf jest 2-barwny wtedy i tylko wtedy, kiedy nie zawiera cykli o

nieparzystej długości.