Matematyka dyskretna wykład

background image

Wstęp do matematyki

dyskretnej

background image
background image

Wstęp do matematyki

dyskretnej

Beata Fałda

Lech Gruszecki

Lublin 2010

background image
background image

Spis treści

Wstęp

7

1

Logika i teoria zbiorów

9

1.1

Wprowadzenie do klasycznego rachunku zdań

. . . . .

9

1.2

Formalne ujęcie rachunku zdań

. . . . . . . . . . . . .

16

1.3

Elementy wielowartościowych rachunków zdań . . . . .

21

1.4

Klasyczny rachunek kwantyfikatorowy . . . . . . . . . .

24

1.5

Zbiory i ich własności . . . . . . . . . . . . . . . . . . .

28

2

Relacje i funkcje

35

2.1

Podstawowe własności relacji . . . . . . . . . . . . . . .

35

2.2

Relacje pomiędzy elementami zbiorów skończonych

. .

39

2.3

Relacje równoważności . . . . . . . . . . . . . . . . . .

43

2.4

Relacje porządku . . . . . . . . . . . . . . . . . . . . .

46

2.5

Funkcje i ich własności . . . . . . . . . . . . . . . . . .

51

3

Zbiór liczb naturalnych i indukcja

57

3.1

Zbiór liczb naturalnych. Definiowanie przez indukcję . .

57

3.2

Funkcje rekurencyjne . . . . . . . . . . . . . . . . . . .

62

3.3

Zastosowanie rekurencji: automaty skończone
i ich języki . . . . . . . . . . . . . . . . . . . . . . . . .

67

background image

6

Spis treści

4

Kraty. Algebry Boole’a i funkcje booleowskie

75

4.1

Kraty i ich własności . . . . . . . . . . . . . . . . . . .

75

4.2

Algebry Boole’a . . . . . . . . . . . . . . . . . . . . . .

81

4.3

Formuły i funkcje booleowskie . . . . . . . . . . . . . .

88

5

Zbiory skończone i metody zliczania elementów tych
zbiorów

97

5.1

Nieformalne wprowadzenie do metod
kombinatorycznych . . . . . . . . . . . . . . . . . . . .

97

5.2

Formalne ujęcie podstaw kombinatoryki

. . . . . . . . 102

5.3

Współczynniki dwumianowe i wielomianowe . . . . . . 111

5.4

Zasada włączeń i wyłączeń . . . . . . . . . . . . . . . . 116

5.5

Zasada szufladkowa Dirichleta . . . . . . . . . . . . . . 121

6

Podziały i permutacje. Liczby Stirlinga i Bella

125

6.1

Liczenie podziałów . . . . . . . . . . . . . . . . . . . . 125

6.2

Rozkłady liczb

. . . . . . . . . . . . . . . . . . . . . . 128

6.3

Permutacje

. . . . . . . . . . . . . . . . . . . . . . . . 131

6.4

Liczby specjalne . . . . . . . . . . . . . . . . . . . . . . 136

7

Główne pojęcia teorii grafów

141

7.1

Nieformalne wprowadzenie do teorii grafów . . . . . . . 141

7.2

Podstawowe definicje teorii grafów . . . . . . . . . . . . 150

7.3

Spójność grafów . . . . . . . . . . . . . . . . . . . . . . 163

8

Poruszanie się po grafach

167

8.1

Grafy Eulera

. . . . . . . . . . . . . . . . . . . . . . . 167

8.2

Grafy Hamiltona . . . . . . . . . . . . . . . . . . . . . 172

8.3

Grafy z wagami . . . . . . . . . . . . . . . . . . . . . . 176

9

Drzewa i digrafy

183

9.1

Podstawowe pojęcia teorii drzew . . . . . . . . . . . . . 183

9.2

Drzewa rozpinające grafy . . . . . . . . . . . . . . . . . 188

9.3

Digrafy . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

10 Zliczanie grafów. Kilka wybranych problemów

201

Spis literatury

211

background image

Wstęp

Matematyka dyskretna stosunkowo niedawno znalazła swoje miej-

sce wśród innych przedmiotów matematycznych, które wykładane są
na studiach matematycznych i informatycznych. Obejmuje ona zarów-
no pewne elementy tradycyjnych działów matematyki, jak np. logika,
algebra czy kombinatoryka, jak też w jej skład zaliczane są zagadnie-
nia z teorii grafów oraz teorii automatów. Niewątpliwie kluczową rolę
w powstaniu tej, w istocie, nowej dziedziny matematyki odegrał rozwój
technik komputerowych. Matematyka dyskretna jest traktowana coraz
częściej jako jeden z matematycznych fundamentów nauk informatycz-
nych. W polu jej zainteresowania znajdują się przede wszystkim zbiory
skończone i przeliczalne, w przeciwieństwie np. do analizy matematycz-
nej, w której podstawową rolę odgrywają zbiory liczb rzeczywistych
i zespolonych, a więc nieprzeliczalne.

Książka, którą oddajemy do rąk Czytelnika, zawiera wybór za-

gadnień poruszanych w ramach kursu matematyki dyskretnej. Wśród
nich są tematy z zakresu podstaw matematyki dotyczące logiki, teorii
zbiorów, relacji i funkcji. W dalszej kolejności wprowadzony jest zbiór
liczb naturalnych, a także omówione są problemy związane z definio-
waniem przez rekurencję; jako zastosowanie tej problematyki zapre-
zentowane zostały zagadnienia z dziedziny teorii automatów. Kolejne
rozdziały poświęcone są metodom zliczania elementów zbiorów skoń-
czonych. Zostały w nich omówione podstawowe wzory kombinatorycz-

background image

8

Wstęp

ne, zasada włączeń i wyłączeń oraz zasada szufladkowania Dirichleta.
Książka kończy się przedstawieniem wybranych elementów z teorii gra-
fów; przedstawione są definicje i twierdzenia dotyczące grafów Eulera,
Hamiltona, grafów z wagami, digrafów oraz drzew. Ostatni rozdział
zawiera kilka wybranych zagadnień dotyczących zliczania grafów.

Mamy nadzieję, że duża ilość przykładów zamieszczonych w książce

przyczyni się do lepszego zrozumienia treści teoretycznych.

Autorzy

background image

1

Logika i teoria zbiorów

1.1

Wprowadzenie do klasycznego
rachunku zdań

Zgodnie z zasadami klasycznej logiki dwuwartościowej, zdaniami

w sensie logicznym są te zdania orzekające, o których możemy powie-
dzieć, że są prawdziwe lub fałszywe. W dalszym ciągu zdania w sensie
logicznym oznaczać będziemy przy użyciu symboli

p, q, r, s, t, ...,

nazywanych także zmiennymi zdaniowymi .

Prawdę i fałsz oznaczać będziemy, jak to jest powszechnie przyjęte,

za pomocą znaków

1 i 0.

Prawdziwość zdania, powiedzmy zdania p, zapisywać będziemy na-

stępująco

w(p) =

1.

Jeśli natomiast zdanie p jest fałszywe, to stosować będziemy zapis

w(p) =

0.

background image

10

Logika i teoria zbiorów

Funkcję w przyporządkowującą zmiennym zdaniowym liczby

0 i 1

nazywać będziemy wartościowaniem.

Zmienne zdaniowe możemy łączyć przy zastosowaniu spójników

zdaniowych, nazywanych też funktorami zdaniotwórczymi .

Najczęściej stosowanymi spójnikami są

nieprawda, że

i

lub

jeżeli, to

wtedy i tylko wtedy, gdy

Noszą one odpowiednio nazwę: negacji , koniunkcji , alternatywy,

implikacji i równoważności (ekwiwalencji). Ich znaczenie w obrębie
klasycznego rachunku zdań nawiązuje do znaczenia odpowiadających
im wyrażeń (w drugiej kolumnie) języka naturalnego. Oczywiście, ję-
zyk potoczny obciążony jest, trudną do pozbycia się, wieloznacznością,
w związku z czym znaczenie spójników logicznych należy uznać jedynie
za pewną idealizację stworzoną na potrzeby logiki formalnej i matema-
tyki.

Sposób rozumienia spójników logicznych ilustrują poniższe tabele

w(p)

w(∼ p)

0

1

1

0

w(p)

w(q)

w(p ∧ q)

w(p ∨ q)

w(p ⇒ q)

w(p ⇔ q)

0

0

0

0

1

1

0

1

0

1

1

0

1

0

0

1

0

0

1

1

1

1

1

1

Tak więc, zdanie ∼ p jest prawdziwe tylko wtedy, gdy zdanie p jest

fałszywe. Zdanie p ∧ q jest prawdziwe wtedy i tylko wtedy, gdy obydwa
zdania p i q są prawdziwe. Alternatywa p ∨ q jest zdaniem prawdziwym
tyko wtedy, gdy co najmniej jedno ze zdań p oraz q jest prawdzie.
Z kolei implikacja p ⇒ q jest prawdziwa, gdy jej poprzednik p jest

background image

Wprowadzenie do klasycznego rachunku zdań

11

zdaniem fałszywym lub gdy następnik q jest zdaniem prawdziwym.
Równoważność p ⇔ q jest prawdziwa, gdy oba zdania p oraz q
zarazem prawdziwe lub fałszywe.

W dalszym ciągu wszystkie poprawnie zbudowane wyrażenia kla-

sycznego rachunku zdań, złożone ze zmiennych zdaniowych, spójników
i ewentualnie nawiasów, nazywać będziemy formułami klasycznego ra-
chunku zdań
(w skrócie: k.r.z.).

A zatem formułami k.r.z. są na przykład

[(p ∨ q) ∧ r] ⇒ q

(1.1)

czy

[∼ p ∧ (q ⇒ p)] ∨ p.

(1.2)

Formułami k.r.z. nie są natomiast

p ⇒,

(( p,

∧∨ ⇒ p.

Aby uniknąć nadmiernej ilości nawiasów, przyjmiemy umowę, zgo-

dnie z którą najsilniej wiążącym jest znak negacji, następnie znak ko-
niunkcji, a w dalszej kolejności znak alternatywy, który wiąże silniej
od symboli implikacji i równoważności.

Na podstawie powyższej umowy formuły (1.1) i (1.2) możemy za-

pisać odpowiednio w postaci

(p ∨ q) ∧ r ⇒ q

i

∼ p ∧ (q ⇒ p) ∨ p.

Wśród formuł k.r.z. wyróżniamy te, które niezależnie od funkcji

wartościowania w, są zawsze prawdziwe. Nazywamy je tautologiami
k.r.z. Formuły, które są zawsze fałszywe nazywamy kontrtautologiami,
pozostałe zaś formuły określamy jako kontyngentne.

Szczególne znaczenie mają tautologie. Aby sprawdzić, czy formuła

jest tautologią, stosujemy znaną ze szkoły metodę tabelkową.

Dla przykładu, by sprawdzić czy formuła

f := (p ⇒ q) (p ∧ q ⇒ q)

jest tautologią, konstruujemy tabelę

background image

12

Logika i teoria zbiorów

w(p)

w(q)

w(p ⇒ q)

w(p ∧ q)

w(p ∧ q ⇒ q)

w(f )

0

0

1

0

1

1

0

1

1

0

1

1

1

0

0

0

1

1

1

1

1

1

1

1

Ponieważ ostatnia kolumna tabeli zawiera tylko jedności, więc for-

muła f jest tautologią.

Korzystając z metody tabelkowej, można dowieść szeregu ważnych

tautologii. Oto niektóre z nich:

1

(p ⇒ q) [(r ⇒ p) (r ⇒ q)]

(prawo sylogizmu

hipotetycznego)

2

[p ⇒ (q ⇒ r)] [q ⇒ (p ⇒ r)]

(prawo komutacji)

3

[p ⇒ (p ⇒ q)] (p ⇒ q)

(prawo skracania)

4

(p ⇒ q) (∼ q ⇒∼ p)

(prawo transpozycji)

5

p ⇒ (∼ p ⇒ q)

(prawo Dunsa Szkota)

6

(p ⇒∼ p) ⇒∼ p

(prawo Claviusa)

7

[p ⇒ (q ⇒ r)] (p ∧ q ⇒ r)

(prawo importacji)

8

(p ∧ q ⇒ r) [p ⇒ (q ⇒ r)]

(prawo eksportacji)

9

(p ∧ ∼ p)

(prawo sprzeczności)

10

p ∨ ∼ p

(prawo wyłączonego środka)

11

∼∼ p ⇔ p

(prawo podwójnego przeczenia)

12

p ∧ q ⇔ q ∧ p

(prawo przemienności koniunkcji)

13

p ∨ q ⇔ q ∨ p

(prawo przemienności alternatywy)

14

(p ⇔ q) (q ⇔ p)

(prawo przemienności

równoważności)

15

[p ∧ (q ∧ r)] [(p ∧ q) ∧ r]

(prawo łączności koniunkcji)

16

[p ∨ (q ∨ r)] [(p ∨ q) ∨ r]

(prawo łączności alternatywy)

background image

Wprowadzenie do klasycznego rachunku zdań

13

17

[p ∧ (q ∨ r)] [(p ∧ q) (p ∧ r)]

(prawo rozdzielności

alternatywy względem koniunkcji)

18

[p ∨ (q ∧ r)] [(p ∨ q) (p ∨ r)]

(prawo rozdzielności

koniunkcji względem alternatywy)

19

(p ∧ q)

(∼ p ∨ ∼ q)

(p ∨ q)

(∼ p ∧ ∼ q)

p ∧ q ⇔ ∼ (∼ p ∨ ∼ q)
p ∨ q ⇔ ∼ (∼ p ∧ ∼ q)

(prawa De Morgana)

20

(p ⇔ q) (∼ p ⇔∼ q)

(prawo obustronnej

negacji równoważności)

Przy wykazywaniu, że formuła jest tautologią można niekiedy po-

służyć się metodą skróconą. Zgodnie z nią, zakłada się, że dla pewnego
wartościowania w wartość formuły jest równa zeru. Jeśli założenie to
prowadzi do sprzeczności, to stąd wynika, że badana formuła jest tau-
tologią; w przeciwnym przypadku nią nie jest.

Dla przykładu, wykażemy metodą skróconą, że formuła

(p ⇒ q) [(r ⇒ p) (r ⇒ q)]

jest tautologią.

Dowód przeprowadzimy, numerując kolejne kroki rozumowania,

począwszy od założenia, że dla pewnego wartościowania formuła jest
fałszywa.

1

w ((p ⇒ q) [(r ⇒ p) (r ⇒ q)]) =

0

(założenie)

2

w(p ⇒ q) =

1

(wynika z 1

)

3

w((r ⇒ p) (r ⇒ q)) =

0

(wynika z 1

)

4

w(r ⇒ p) =

1

(wynika z 3

)

5

w(r ⇒ q) =

0

(wynika z 3

)

6

w(r) =

1

(wynika z 5

)

7

w(q) =

0

(wynika z 5

)

8

w(p) =

0

(wynika z 2

i 7

)

9

w(p) =

1

(wynika z 4

i 6

)

background image

14

Logika i teoria zbiorów

Otrzymaliśmy zatem sprzeczność. Skąd wynika, że założenie 1

jest

nieprawdziwe, czyli że badana formuła jest tautologią.

Zauważmy, że niektóre ze spójników logicznych mogą być wyrażo-

ne przy zastosowaniu spójników pozostałych. Na przykład, posługując
się negacją i implikacją, można zdefiniować koniunkcję, alternatywę
i równoważność:

p ∧ q ⇔ ((p ⇒∼ q)),

p ∨ q ⇔ (∼ p ⇒ q),

p ⇔ q ⇔ (((p ⇒ q) ⇒∼ (q ⇒ p))).

Jak nietrudno zauważyć, istnieją 2

2

= 4 różne spójniki (funktory)

jednoargumentowe i 2

4

= 16 różnych spójników dwuargumentowych.

Wśród tych ostatnich warto wymienić alternatywę wykluczającą

Y (),

dysjunkcję Sheffera / oraz funktor binegacji czyli jednoczesnego zaprze-
czenia, oznaczmy go tu symbolem

Z. Znaczenie wymienionych funkto-

rów może być określone za pomocą tabelek, można je także zdefiniować
przy zastosowaniu funktorów wprowadzonych wcześniej.

I tak, alternatywę wykluczającą można określić za pomocą tabelki

w(p)

w(q)

w(p Y q)

0

0

0

0

1

1

1

0

1

1

1

0

Nietrudno zauważyć, że

p Y q ⇔ ((p ⇔ q)).

Dysjunkcję Sheffera określa tabelka

w(p)

w(q)

w(p/q)

0

0

1

0

1

1

1

0

1

1

1

0

background image

Wprowadzenie do klasycznego rachunku zdań

15

A zatem

p/q ⇔ ∼ (p ∧ q).

Z kolei funktorowi binegacji odpowiada tabelka

w(p)

w(q)

w(p Z q)

0

0

1

0

1

0

1

0

0

1

1

0

Stąd

p Z q ⇔ ∼ (p ∨ q).

Funktor Sheffera oraz funktor binegacji mają szczególną własność:

jako jedyne - każdy z osobna - mogą być wykorzystane do zdefiniowania
pozostałych funktorów dwuargumentowych oraz negacji.

Rzeczywiście

∼ p ⇔ (p/p).

Z kolei

p ∨ q ⇔ [(p/p)/(q/q)].

Korzystając z jednego z praw De Morgana, które stwierdza, że

p ∧ q ⇔ ∼ (∼ p ∨ ∼ q), można wykazać, iż

p ∧ q ⇔

h

(p/p)

.

(p/p)

.

(q/q)

.

(q/q)

i .

. h

(p/p)

.

(p/p)

.

(q/q)

.

(q/q)

i

.

Jeżeli weźmiemy pod uwagę równoważność

(p ⇒ q) (∼ p ∨ q),

to zdanie warunkowe możemy, przy zastosowaniu symbolu Sheffera,
wyrazić następująco

(p ⇒ q)

h

(p/p)

.

(p/p)

 .

(q/q)

i

.

Definicję równoważności oraz pozostałych spójników dwuargumen-

towych (tzn.

Y oraz Z) pozostawiamy Czytelnikowi.

W podobny sposób możliwe jest zdefiniowanie, przy zastosowaniu

symbolu binegacji

Z, wszystkich spójników dwuargumentowych oraz

negacji.

background image

16

Logika i teoria zbiorów

1.2

Formalne ujęcie rachunku zdań

Zaczniemy od definicji alfabetu klasycznego rachunku zdań

(por. na przykład [13, s. 34-42]).

Definicja 1.1 Przez alfabet k.r.z. rozumiemy zbiór

A = V ∪ S ∪ P,

gdzie

V = {p

1

, p

2

, ..., p

n

, ...}

jest zbiorem zmiennych zdaniowych,

S = {∼, ∧, ∨, ⇒, ⇔}

jest zbiorem zmiennych logicznych, natomiast

P = {(, ), [, ]}

jest zbiorem symboli pomocniczych, czyli nawiasów.

Uwaga. Zamiast zmiennych p

1

, p

2

, p

3

, p

4

, ... będziemy, dla uczynienia

zapisu bardziej czytelnym, pisać: p, q, r, s, ...

W dalszym ciągu zdefiniujemy pojęcie formuły k.r.z.

Definicja 1.2 Formułami k.r.z. są:

a) dowolna zmienna zdaniowa,

b) jeśli f

1

i f

2

są formułami k.r.z., to formułami k.r.z. są również

(i jedynie) formuły:

(i) (f

1

),

(ii) (f

1

) (f

2

),

(iii) (f

1

) (f

2

),

(iv) (f

1

) (f

2

),

(v) (f

1

) (f

2

),

Zbiór wszystkich formuł k.r.z. oznaczać będziemy symbolem F .

background image

Formalne ujęcie rachunku zdań

17

Definicja 1.3 Wartościowaniem nazywamy dowolną funkcję

w : V → {

0, 1}.

Definicja 1.4 Dowolną funkcję

w : F → {

0, 1}

nazywamy interpretacją k.r.z.

Twierdzenie 1.1 Dowolne wartościowanie w można rozszerzyć jed-
noznacznie ze zbioru V na zbiór F , tak by było interpretacją.

Dowód. Załóżmy, że f

1

i f

2

są formułami, natomiast w jest wartościo-

waniem; w można rozszerzyć zgodnie z zależnościami

w(∼ f

1

) =

1

w. i t.w.g.

w(f

1

) =

0

w(f

1

∧ f

2

) =

1

w. i t.w.g.

w(f

1

) = w(f

2

) =

1

w(f

1

∨ f

2

) =

1

w. i t.w.g.

w(f

1

) =

1 lub w(f

2

) =

1

w(f

1

⇒ f

2

) =

1 w. i t.w.g. w(f

1

) =

0 lub w(f

2

) =

1

w(f

1

⇔ f

2

) =

1 w. i t.w.g. w(f

1

) = w(f

2

)

2

Definicja 1.5 W zbiorze {

0, 1} zdefiniujmy funkcję

¬ : {

0, 1} → {0, 1},

przy czym ¬(

0) = 1, ¬(1) = 0. Funkcję tę nazywać będziemy dopełnie-

niem lub negacją.

Niech ponadto

: {

0, 1} × {0, 1} → {0, 1}

oraz

: {

0, 1} × {0, 1} → {0, 1},

gdzie

(a, b) = min{a, b}

oraz

(a, b) = max{a, b}.

Funkcje te nazywać będziemy iloczynem i suma booleowską.

background image

18

Logika i teoria zbiorów

Uwaga. Zamiast pisać ¬(a), (a, b), (a, b), będziemy pisać ¬a, a ∩ b,
a ∪ b, gdzie a, b ∈ {

0, 1}.

Uwaga. Przy zastosowaniu powyższych funkcji można zdefiniować
funkcje

a → b

oraz

a ↔ b

jako równe odpowiednio wyrażeniom (¬a)∪b oraz ((¬a)(¬b))(a∩b).

W dalszym ciągu zakładać będziemy, by uniknąć stosowania nad-

miernej ilości nawiasów, że symbol ¬ wiąże silniej niż symbol , a ten
z kolei wiąże silniej niż symbol ; jeszcze słabiej wiążą symbole
oraz .

Twierdzenie 1.2 Dla dowolnych formuł f

1

i f

2

zachodzą równości

¬w(f

1

) = w(∼ f

1

),

w(f

1

) ∩ w(f

2

) = w(f

1

∧ f

2

),

w(f

1

) ∪ w(f

2

) = w(f

1

∨ f

2

),

w(f

1

) → w(f

2

) = w(f

1

⇒ f

2

),

w(f

1

) ↔ w(f

2

) = w(f

1

⇔ f

2

).

Definicja 1.6 Formuły f , takie że dla dowolnej interpretacji w za-
chodzą równości w
(f ) =

1, nazywamy tautologiami. Jeśli natomiast

dla dowolnej interpretacji w mają miejsce równości w(f ) =

0, to for-

muły takie nazywamy kontrtautologiami. Jeśli dla pewnej interpretacji
w

1

, w

1

(f ) =

1, a dla innej interpretacji w

2

, w

2

(f ) =

0, to formułę f

nazywamy kontyngentą.

Przedstawimy teraz równoważne, w stosunku do metody tabelko-

wej (wykorzystującej pojęcie interpretacji), podejście do k.r.z. Jest to
podejście aksjomatyczne.

Polega ono na wyróżnieniu pewnej liczby tautologii, w oparciu

o które, za pomocą odpowiednich i zarazem ściśle określonych metod
wnioskowania, wyprowadza się wszystkie pozostałe tautologie (i tylko
te tautologie).

Istnieje wiele równoważnych systemów aksjomatycznych k.r.z. Ja-

ko jeden z nich przedstawimy system pochodzący od Davida Hilberta
i Paula Bernaysa (por. [1, s. 42-65]).

background image

Formalne ujęcie rachunku zdań

19

Aksjomaty klasycznego rachunku zdań

A.1

p ⇒ (q ⇒ p)

(prawo poprzednika)

A.2

[p ⇒ (q ⇒ r)] [(p ⇒ q) (p ⇒ r)] (prawo Fregego)

A.3

(p ⇒ q) (∼ q ⇒∼ p)

(prawo transpozycji)

A.4

∼∼ p ⇒ p

(prawo podwójnego przeczenia)

A.5

p ⇒∼∼ p

(odwrotne prawo podwójnego przeczenia)

A.6

p ∧ q ⇒ p

(prawo symplifikacji)

A.7

p ∧ q ⇒ q

(drugie prawo symplifikacji)

A.8

(p ⇒ q) [(p ⇒ r) (p ⇒ q ∧ r)]

(prawo mnożenia

następników)

A.9

p ⇒ p ∨ q

(prawo addycji)

A.10

q ⇒ p ∨ q

(drugie prawo addycji)

A.11

(p ⇒ r) [(q ⇒ r) (p ∨ q ⇒ r)] (prawo dodawania

poprzedników)

A.12

(p ⇔ q) (q ⇒ p)

(aksjomaty

A.13

(p ⇔ q) (q ⇒ p)

równoważności)

A.14

(p ⇒ q) [(q ⇒ p) (p ⇔ q)]

Wszystkie tautologie k.r.z. wynikają z powyższych aksjomatów po-

przez użycie dwóch reguł wnioskowania.

Pierwszą z nich jest reguła odrywania (modus ponens), która od

prawdziwych formuł f

1

oraz f

1

⇒ f

2

prowadzi do formuły f

2

. Regułę

tę zapisujemy symbolicznie w postaci

f

1

, f

1

⇒ f

2

f

2

,

(1.3)

background image

20

Logika i teoria zbiorów

gdzie nad kreską wniosku umieszczone zostały symbole przesłanek,
a poniżej kreski symbol wniosku.

Drugą regułą jest reguła podstawiania, która od tautologii f

1

, gdzie

występuje zmienna p

k

, prowadzi do formuły f

1

(g, p

k

). Ta zaś powstaje

z f

1

poprzez zastąpienie p

k

przez dowolną formułę g. Regułę tę zapi-

sujemy następująco

f

1

f

1

(g, p

k

)

.

(1.4)

Zastosujmy powyższe reguły do wyprowadzenia z aksjomatów pew-

nej tezy.

Przykład. Wykazać, że tautologią rachunku zdań jest formuła

p ⇒ p.

Dowód przedstawimy w postaci ciągu formuł.

1

[p ⇒ (q ⇒ r)] [(p ⇒ q) (p ⇒ r)]

(A.2

)

2

[p ⇒ (q ⇒ p)] [(p ⇒ q) (p ⇒ p)]

(reguła (1.4): w 1

podstawiamy p zamiast r)

3

p ⇒ (q ⇒ p)

(A.1

)

4

(p ⇒ q) (p ⇒ p) (reguła (1.3) zastosowana do 2

i 3

)

5

(p ⇒ (q ⇒ p)) (p ⇒ p)

(reguła (1.4): w 4

podstawiamy q ⇒ p zamiast q)

6

p ⇒ p

(reguła (1.3) zastosowana do 5

i 3

)

Powyższy przykład wskazuje na to, jak należy rozumieć pojęcie

dowodu w k.r.z.

Definicja 1.7 Dowodem formuły f w oparciu o aksjomaty A.1

- A.14

nazywamy skończony ciąg formuł

p

1

p

2

...p

n

,

o tej własności, że p

n

= f , p

1

jest aksjomatem k.r.z., natomiast każda

background image

Elementy wielowartościowych rachunków zdań

21

z pozostałych formuł jest, albo aksjomatem albo wynika z wcześniej-
szych formuł za pomocą reguły odrywania lub reguły podstawiania.

Można wykazać, że zbiór wszystkich tautologii k.r.z. pokrywa się

ze zbiorem wszystkich formuł, które mogą być wyprowadzone z aksjo-
matów k.r.z. w oparciu o reguły odrywania i podstawiania. Wynik ten
nosi nazwę twierdzenia o pełności k.r.z.

1.3

Elementy wielowartościowych
rachunków zdań

W przypadku wielowartościowych rachunków zdań (w.r.z.) przyj-

mujemy, że formuły logiczne budowane są tak jak dla k.r.z., tzn. złożone
są ze zmiennych zdaniowych, spójników i symboli pomocniczych. Ina-
czej jednak określamy funkcję wartościowania. Zakładamy mianowicie,
że

w : F → {

1, ..., M},

gdzie

M ­ 2 jest liczbą naturalną. Przyjmujemy przy tym, że dla pew-

nej liczby naturalnej 1 ¬

S < M, wartości logiczne 1, ..., S są wyróżnio-

ne, natomiast wartości logiczne

S+1, ..., M nie są wyróżnione. Wartości

wyróżnione stanowią odpowiednik liczby

1 w logice dwuwartościowej.

Można zatem uznać, że wartości te wyznaczają stopień prawdziwości
zdania, przy czym im większa jest wartość wyróżniona, tym mniejszy
stopień prawdziwości zdania.

Z kolei wartości

S+1, ..., M, stanowią odpowiednik liczby 0 w logice

dwuwartościowej i wskazują na stopień fałszywości zdania. Im wartość
ta jest wyższa, tym zdanie uznaje się za, w większym stopniu, fałszywe.

J. Łukasiewicz i A. Tarski zaproponowali, aby funktory negacji, ko-

niunkcji, alternatywy i implikacji funkcjonujące w obrębie logiki wie-
lowartościowej określić przez analogię z logiką klasyczną w sposób na-
stępujący:

w(∼ p) =

M − w(p) + 1,

w(p ∧ q) = max{w(p), w(q)},

w(p ∨ q) = min{w(p), w(q)},

w(p ⇒ q) = max{

1, w(q) − w(p) + 1}.

background image

22

Logika i teoria zbiorów

W szczególności, gdy zbiór wartości logicznych składa się z trzech

elementów:

1, 2, 3, otrzymuje się tzw. logikę trójwartościową Łuka-

siewicza. Liczba

1 symbolizuje prawdę, liczba 3 - fałsz, natomiast 2

wskazuje na możliwość (tę wartość logiczną mają zdania odnoszące się
do zjawisk niekoniecznie zachodzących w przyszłości).

Tak więc, w tym przypadku tabele wartości logicznych przedsta-

wiają się następująco:

w(p)

w(∼ p)

1

3

2

2

3

1

w(p)

w(q)

w(p ∧ q)

w(p ∨ q)

w(p ⇒ q)

1

1

1

1

1

1

2

2

1

2

1

3

3

1

3

2

1

2

1

1

2

2

2

2

1

2

3

3

2

2

3

1

3

1

1

3

2

3

2

1

3

3

3

3

1

Równoważność w logice wielowartościowej określamy tak samo jak

w logice dwuwartościowej.

Zauważmy, że funktor negacji Łukasiewicza i Tarskiego jest jedynie

w pewnym stopniu analogiczny do funktora negacji w logice dwuwar-
tościowej. Rzeczywiście, można wykazać, że zachodzą równoważności

p ∨ q ⇔ ∼ (∼ p∧ ∼ q)

oraz

∼∼ p ⇔ p.

Jednak, na ogół, funktor ten nie ma następującej własności:

zdanie p jest prawdziwe (w jakimś stopniu) wtedy i tylko
wtedy, gdy zdanie ∼ p jest fałszywe (w jakimś stopniu).

background image

Elementy wielowartościowych rachunków zdań

23

Powyższą własność ma natomiast, jak się okazuje, negacja określo-

na w poniższy sposób

−p

def

⇐⇒ i

S+1

(p) ∨ i

S+2

(p) ∨ ... ∨ i

M

(p),

gdzie w(i

k

(p)) jest wartością wyróżnioną wtedy i tylko wtedy, gdy

w(p) = k, k =

1, 2, ..., M.

W dalszym ciągu będziemy przyjmować, że nowy funktor negacji

wiąże silniej niż wszystkie funktory dwuargumentowe.

Zauważmy przy okazji, że wartość logiczna wyrażenia

i

1

(p) ∨ i

2

(p) ∨ ... ∨ i

M

(p)

należy zawsze do zbioru {

1, 2, ..., S}, a tym samym powyższą formułę

należy uznać za analogon prawa wyłączonego środka w logice dwuwar-
tościowej

p∨ ∼ p.

Przyjrzyjmy się bliżej funktorowi implikacji wprowadzonemu przez

Łukasiewicza i Tarskiego. Zauważmy, na przykład, że gdy zbiór war-
tości logicznych jest równy {

1, 2, 3, 4}, a zbiór wartości wyróżnionych

jest równy {

1, 2}, to w przypadku formuł p oraz q, takich że

w(p) =

2 oraz w(q) = 3,

zachodzi równość

w(p ⇒ q) = max{

1, 3 2 + 1} = 2.

A zatem formuły p i p ⇒ q uznajemy za (w pewnym stopniu) prawdzi-
we, natomiast formuła q jest (w pewnym stopniu) fałszywa. W przy-
padku logik wielowartościowych nie zachodzi więc reguła odrywania.

Można jednakże zdefiniować nowy funktor implikacji

p ⊃ q

def

⇐⇒ (−p ∨ q),

dla którego zachodzi reguła odrywania.

background image

24

Logika i teoria zbiorów

1.4

Klasyczny rachunek
kwantyfikatorowy

Klasyczny rachunek zdań jest teorią zbyt wąską, aby opisać więk-

szość, ważnych z punktu widzenia matematyki, rozumowań. Rozważmy
dla przykładu następujące dwa wyrażenia:

(a) wartość funkcji sinus dla dowolnego argumentu jest mniejsza bądź

równa jedności,

(b) dowolna liczba jest sumą dwóch liczb.

Stosując symbole „

V

” i „

W

” zamiast wyrażeń „dla każdego” oraz

„istnieje takie, że”, powyższe wyrażenia możemy zapisać następująco:

(a)

V

x

sin x ¬ 1,

(b)

V

x

W

y

W

z

x = y + z.

Symbole „

V

” i „

W

” nazywamy odpowiednio kwantyfikatorem uni-

wersalnym (ogólnym, dużym) i egzystencjalnym (szczegółowym, ma-
łym). Nie tylko upraszczają one zapis wyrażeń matematycznych, ale
także umożliwiają wprowadzenie nowych obiektów do rachunku logicz-
nego. Są nimi zmienne nazwowe (np. x, y, z), stałe (np. 1), symbole
funkcji (np. sin, +), symbole relacji (np. ¬) oraz wyrażenia, takie jak

sin x ¬ 1

oraz

x = y + z,

które, po podstawieniu w miejsce zmiennych nazwowych wartości licz-
bowych, stają się zdaniami prawdziwymi lub fałszywymi. Wyrażenia
te nazywamy funkcjami zdaniowymi lub predykatami. Funkcje zdanio-
we jednej, dwóch lub trzech zmiennych oznaczamy symbolami P (x),
P (x, y), P (x, y, z), Q(x), Q(x, y), Q(x, y, z) itp.

Nie będziemy tutaj wchodzili w dość skomplikowane szczegóły

techniczne, jednak trzeba pamiętać, że klasyczny rachunek kwanty-
fikatorowy (k.r.k.) może być oparty na równie ścisłych podstawach

background image

Klasyczny rachunek kwantyfikatorowy

25

jak k.r.z. Przedstawimy tu jedynie aksjomatykę k.r.k. wraz z regułami
wnioskowania.

Aksjomaty k.r.k. budujemy w oparciu o formuły A.1

-A.14

k.r.z.,

do których dodajemy dwa aksjomaty dotyczące własności kwantyfika-
torów:

A.15

V

x

P (x) ⇒ P (y)

A.16

P (y)

W

x

P (x),

gdzie y jest zmienną nazwową, którą w formule P można podstawić za
zmienną x.

Reguły wnioskowania możemy wzbogacić o dwie nowe reguły:

P ⇒ Q(x)

P ⇒

V

x

Q(x)

(1.5)

oraz

P (x) ⇒ Q

W

x

P (x) ⇒ Q

,

(1.6)

gdzie zakłada się, że

- w pierwszym przypadku - w poprzedniku implikacji nie występuje

zmienna x, natomiast

- w przypadku drugim - zmienna x nie występuje w następniku

implikacji.

Pierwsza z powyższych reguł nazywa się regułą dołączania kwan-

tyfikatora uniwersalnego w następniku implikacji, a drugą nazywa się
regułą dołączania kwantyfikatora egzystencjalnego w poprzedniku impli-
kacji
.

W jaki sposób możemy zatem korzystać z powyższych aksjomatów

i reguł wnioskowania? Rozważmy w tym celu poniższy przykład.

Przykład. Wykazać, że formuła

^

x

P (x)

_

x

P (x)

jest twierdzeniem k.r.k.

background image

26

Logika i teoria zbiorów

Korzystamy z tautologii

(p ⇒ q) [(q ⇒ r) (p ⇒ r)],

którą można wyprowadzić w sposób formalny z aksjomatów k.r.z., ale
też można dla jej wykazania zastosować metodę tabelkową.

Następnie podstawiamy odpowiednio formuły

^

x

P (x),

P (y),

_

x

P (x)

w miejsce p, q i r. Zakładamy przy tym, że zmienna y może być pod-
stawiona zamiast x.

Otrzymujemy zatem formułę



V

x

P (x) ⇒ P (y)





P (y)

W

x

P (x)





V

x

P (x)

W

x

P (x)



.

Wykorzystując dwukrotnie regułę odrywania oraz aksjomaty A.15

i A.16

, widzimy, że

^

x

P (x)

_

x

P (x).

Oto kilka innych formuł k.r.k.

1

V

x

P (x)

W

x

∼ P (x)

W

x

P (x)

V

x

∼ P (x)

(prawa De Morgana),

2

V

x

(P (x) ⇒ Q(x))



V

x

P (x)

V

x

Q(x)



,

3

V

x

(P (x) ⇒ Q(x))



W

x

P (x)

W

x

Q(x)



,

4

V

x

(P (x) ⇔ Q(x))

V

x

(P (x) ⇒ Q(x))

V

x

(Q(x) ⇒ P (x)),

5

V

x

(P (x) ∧ Q(x))

V

x

P (x)

V

x

Q(x),

background image

Klasyczny rachunek kwantyfikatorowy

27

6

W

x

(P (x) ∨ Q(x))

W

x

P (x)

W

x

Q(x),

7

V

x

V

y

P (x, y)

V

y

V

x

P (x, y),

8

W

x

W

y

P (x, y)

W

y

W

x

P (x, y),

9

W

x

V

y

P (x, y)

V

y

W

x

P (x, y).

Uwaga. Przedstawienie formalnych dowodów powyższych formuł mo-
że łączyć się z dużymi trudnościami. Niekiedy jednak możemy zastoso-
wać metodę uproszczoną, sprowadzającą się do użycia tabelki. Prawa
rachunku kwantyfikatorowego powinny być prawdziwe w każdej dzie-
dzinie, a w szczególności, gdy X = {x

1

, x

2

}. Przyjmijmy p

i

= P (x

i

),

q

i

= Q(x

i

), i = 1, 2. Wtedy np. formuła

^

x

(P (x) ⇒ Q(x))

^

x

P (x)

^

x

Q(x)

!

sprowadza się do formuły k.r.z.

[(p

1

⇒ q

1

) (p

2

⇒ q

2

)] (p

1

∧ p

2

⇒ q

1

∧ q

2

),

która, jak to można sprawdzić przy zastosowaniu metody tabelkowej,
jest tautologią.

Powyższa metoda nie jest wprawdzie w pełni ścisła, ma jednak

duże znaczenie heurystyczne i może w wielu przypadkach okazać się
bardzo użyteczna.

Ważną rolę odgrywają tzw. kwantyfikatory o zasięgu ograniczonym.

Są to wyrażenia postaci:

(a) dla każdego x spełniającego warunek P (x) zachodzi Q(x),

(b) istnieje x spełniające warunek P (x), dla którego zachodzi Q(x).

Wyrażenia te zapisujemy następująco

^

P (x)

Q(x)

oraz

_

P (x)

Q(x),

background image

28

Logika i teoria zbiorów

które rozumiemy jako skróty wyrażeń

^

x

(P (x) ⇒ Q(x))

i

_

x

(P (x) ∧ Q(x)).

Przykład. Kwantyfikatorami o zasięgu ograniczonym są na przykład
wyrażenia

^

x<0

−x > 0

oraz

_

x∈

R

x

2

= 2.

W drugim przypadku mamy do czynienia z funkcją zdaniową x ∈

R,

którą odczytujemy: liczba x jest elementem zbioru liczb rzeczywistych.

Własnościami relacji „”, jak również własnościami zbiorów,

w tym także zbiorów liczbowych, zajmiemy się w następnym podroz-
dziale.

1.5

Zbiory i ich własności

Pojęcie zbioru oraz pojęcie należenia do zbioru są pojęciami pier-

wotnymi. Ich sposób użycia regulują aksjomaty teorii mnogości, któ-
rych przytaczać tu nie będziemy. Przypomnimy jedynie podstawowe
definicje, oznaczenia i własności.

Każdy zbiór jest jednoznacznie określony przez swoje elementy.

Tak więc, jeśli x

1

, x

2

, ..., x

n

, ... są wszystkimi elementami zbioru A, to

piszemy

A = {x

1

, x

2

, ..., x

n

, ...}.

Jeśli każdy element zbioru B jest elementem zbioru A, to piszemy

B ⊂ A,

a relację nazywamy relacją zawierania się albo relacją inkluzji. Zbiór
B nazywamy podzbiorem zbioru A. Gdy każdy element zbioru B jest
elementem zbioru A i odwrotnie: każdy element zbioru A jest elemen-
tem zbioru B, czyli jeśli B ⊂ A i A ⊂ B, to zbiory A oraz B uznaje
się za równe, co zapisuje się w postaci

A = B.

background image

Zbiory i ich własności

29

Zbiór, który nie ma żadnego elementu nazywamy zbiorem pustym

i oznaczmy symbolem . Jeśli dla elementów zbioru A określona jest
funkcja zdaniowa P , to podzbiór zbioru A złożony z tych elementów
x zbioru A, dla których P (x) jest zdaniem prawdziwym, oznacza się
symbolem

{x ∈ A : P (x)}.

Przez sumę i iloczyn zbiorów A i B rozumieć będziemy odpowiednio
następujące zbiory

A ∪ B = {x : x ∈ A ∨ x ∈ B}

oraz

A ∩ B = {x : x ∈ A ∧ x ∈ B}.

W przypadku, gdy dana jest rodzina zbiorów A

i

, i ∈ I, gdzie I jest

zbiorem indeksów, to sumę i iloczyn zbiorów należących do tej rodziny
oznaczmy następująco

[

i∈I

A

i

= {x :

_

i∈I

x ∈ A

i

},

\

i∈I

A

i

= {x :

^

i∈I

x ∈ A

i

}.

Gdy I = {1, 2, ..., n} lub gdy I = {1, 2, 3, ...}, to zamiast

S

i∈I

A

i

piszemy

n

[

i=1

A

i

lub

[

i=1

A

i

.

Podobnie postępujemy w przypadku iloczynu zbiorów. Różnicą

zbiorów A oraz B nazywamy zbiór

A \ B = {x ∈ A : x /

∈ B}.

Symbol x /

∈ B jest skrótem zapisu ∼ x ∈ B.

Z kolei przez różnicę symetryczną zbiorów A i B rozumiemy zbiór

A ÷ B = {x ∈ A ∪ B : x /

∈ A ∩ B}.

background image

30

Logika i teoria zbiorów

W przypadku, gdy rozważać będziemy podzbiory A, B, ... pewnego

ustalonego zbioru X, wygodnie jest wprowadzić jeszcze jedną operację
na zbiorach, a mianowicie dopełnienie

A

C

= X \ A.

Rachunek zbiorów obejmuje szereg praw, które mogą zostać dowie-

dzione w oparciu o odpowiednie tautologie k.r.z. Oto niektóre z tych
praw:

1

A ∪ A = A ,

A ∩ A = A,

2

A ∪ B = B ∪ A ,

A ∩ B = B ∩ A,

3

A ∪ (B ∪ C) = (A ∪ B) ∪ C,

4

A ∩ (B ∩ C) = (A ∩ B) ∩ C,

5

A ∪ (B ∩ C) = (A ∪ B) (A ∪ C),

6

A ∩ (B ∪ C) = (A ∩ B) (A ∩ C),

7

A \ (B ∪ C) = (A \ B) (A \ C),

8

(A ∩ B)

C

= A

C

∪ B

C

(A ∪ B)

C

= A

C

∩ B

C

(prawa De Morgana),

9

(A

C

)

C

= A,

10

A ÷ B = B ÷ A,

11

A ÷ (B ÷ C) = (A ÷ B) ÷ C,

12

A ⊂ B ⇒ A ∪ C ⊂ B ∪ C,

13

A ⊂ B ⇒ A ∩ C ⊂ B ∩ C,

14

A ∪ B = B ∩ A ⇒ A = B.

Praw rachunku zbiorów dowodzimy, jak to już było wspomniane,

posługując się k.r.z.

background image

Zbiory i ich własności

31

Przykład. Dowieść, że dla dowolnych zbiorów A, B, C

A \ (B ∪ C) = (A \ B) (A \ C).

Niech x ∈ A \ (B ∪ C). Otrzymujemy ciąg równoważności

x ∈ A \ (B ∪ C) (x ∈ A ∧ ∼ x ∈ B ∪ C)

(x ∈ A ∧ ∼ (x ∈ B ∨ x ∈ C))

(x ∈ A ∧ ∼ x ∈ B ∧ ∼ x ∈ C)

(x ∈ A ∧ x ∈ A ∧ ∼ x ∈ B ∧ ∼ x ∈ C)

(x ∈ A ∧ ∼ x ∈ B ∧ x ∈ A ∧ ∼ x ∈ C)

(x ∈ A \ B ∧ x ∈ A \ C)

⇔ x ∈ (A \ B) (A \ C).

W powyższych przekształceniach skorzystaliśmy z definicji sumy,

iloczynu i różnicy zbiorów, a także z tautologii k.r.z.:

(p ∨ q) ⇔ ∼ p∧ ∼ q

p ⇔ p ∧ p

p ∧ q ⇔ q ∧ p

p ∧ (q ∧ r) (p ∧ q) ∧ r.

Rozważmy teraz nieco bardziej skomplikowany problem.

Przykład. Jakie relacje pomiędzy zbiorami A, B, C muszą zachodzić,
aby

(A ∩ B) (A ∩ C) = B ∪ C ?

Zauważmy, że powyższa równość zachodzi, gdy

x ∈ (A ∩ B) (A ∩ C) ⇔ x ∈ B ∪ C,

czyli, gdy

(x ∈ A ∧ x ∈ B) (x ∈ A ∧ x ∈ C) ⇔ x ∈ B ∨ x ∈ C.

background image

32

Logika i teoria zbiorów

Zastosujmy do powyższej formuły metodę tabelkową. Wprowadź-

my oznaczenia p = x ∈ A, q = x ∈ B, r = x ∈ C. Formułę

(p ∧ q) (p ∧ r) ⇔ q ∨ r

oznaczmy symbolem f .

p

q

r

(p ∧ q) (p ∧ r)

q ∨ r

f

0 0 0

0

0

1

0 0 1

0

1

1

0 1 0

0

1

0

0 1 1

0

1

1

1 0 0

0

0

1

1 0 1

1

1

1

1 1 0

1

1

1

1 1 1

1

1

1

Gdyby równość (A ∩ B) (A ∩ C) = B ∪ C była prawdziwa dla

wszystkich zbiorów, to w ostatniej kolumnie znajdowałyby się wyłącz-
nie jedności. Jak widać, mamy kłopot z drugim, trzecim i czwartym
wierszem tabeli. Aby wspomniana równość zachodziła, należy zanego-
wać warunek

x /

∈ A ∧ (x ∈ B ∨ x ∈ C) .

Wobec tego

(x /

∈ A ∧ (x ∈ B ∨ x ∈ C)) ⇔ x ∈ A ∨ ∼ (x ∈ B ∨ x ∈ C)

(x ∈ B ∪ C ⇒ x ∈ A).

Zauważmy, że skorzystaliśmy tu z tautologii

(p ∧ q) ⇔ ∼ p ∨ ∼ q

oraz

∼ p ∨ q ⇔ (p ⇒ q).

A zatem otrzymujemy poszukiwany warunek w postaci

B ∪ C ⊂ A.

background image

Zbiory i ich własności

33

Wprowadzimy teraz nowe ważne pojęcie. Parą uporządkowaną

o poprzedniku x i następniku y nazywamy zbiór

(x, y) = {x, {x, y}}.

Z kolei, n-tką uporządkowaną nazywamy zbiór

(x

1

, x

2

, ..., x

n

) = ((x

1

, x

2

, ..., x

n−1

), x

n

),

n ­ 3.

Iloczynem kartezjańskim zbiorów A i B nazywamy zbiór

A × B = {(x, y) : x ∈ A ∧ y ∈ B}.

Podobnie, iloczynem kartezjańskim zbiorów A

1

, A

2

, ..., A

n

nazy-

wamy zbiór

A

1

× A

2

× ... × A

n

= {(x

1

, x

2

, ..., x

n

) : x

i

∈ A

i

, i = 1, 2, ..., n}.

W przypadku, gdy A

1

= A

2

= ... = A

n

= A, n ­ 2, iloczyn

kartezjański A

1

× A

2

× ... × A

n

oznaczamy symbolem A

n

.

Iloczyn kartezjański ma szereg ważnych własności. Zauważmy naj-

pierw, że na ogół

A × B 6= B × A

oraz

A × (B × C) 6= (A × B) × C,

jakkolwiek w ostatnim przypadku oba zbiory, formalnie różne, utożsa-
miamy ze sobą.

Ponadto, można wykazać, że

A × (B ∪ C) = (A × B) (A × C)

A × (B ∩ C) = (A × B) (A × C)

A × (B \ C) = (A × B) \ (A × C)

(A × B) (C × D) (A ∪ B) × (B ∪ D)

Kolejnym ważnym pojęciem, które wprowadzimy w tym podroz-

dziale, jest pojęcie tzw. zbioru potęgowego. Jeśli dany jest zbiór A, to
zbiorem potęgowym tego zbioru nazywamy zbiór

P(A) = {B : B ⊂ A}.

background image

34

Logika i teoria zbiorów

Innymi słowy, P(A) (stosujemy też oznaczenie 2

A

) jest zbiorem

zawierającym wszystkie podzbiory A i tylko te podzbiory.

Szczególna nazwa zbioru P(A) bierze się stąd, że, o czym będzie

jeszcze mowa w jednym z następnych rozdziałów, w przypadku, gdy A
ma dokładnie n elementów, to jego zbiór potęgowy ma 2

n

elementów.

Na zakończenie tego rozdziału przypomnijmy oznaczenia dla zbio-

rów liczbowych. Zbiór liczb naturalnych 0, 1, 2, ... będziemy oznaczać
symbolem

N. Zbiór liczb całkowitych będzie oznaczany literą Z, a zbio-

ry liczb wymiernych i rzeczywistych będą oznaczane odpowiednio sym-
bolami

Q i R.

background image

2

Relacje i funkcje

2.1

Podstawowe własności relacji

Definicja 2.1 Niech dane będą zbiory niepuste A

1

, A

2

, ..., A

n

,

n ­ 2. Relacją n-członową w iloczynie kartezjańskim A

1

× A

2

× ... × A

n

nazywamy dowolny podzbiór ρ tego iloczynu.

W przypadku, gdy A

1

= A

2

= ... = A

n

= A, relację ρ ⊂ A

n

nazywamy relacją w zbiorze A.

Przykład. Niech dana będzie relacja ρ ⊂

R

3

, przy czym

(x

1

, x

2

, x

3

) ∈ ρ ⇔ x

1

< x

2

< x

3

.

Relację tę możemy określić jako relację „leżenia między”. Ma ona

szereg interesujących własności. Na przykład,

jeśli

(x

1

, x

2

, x

3

) ∈ ρ,

to

(x

1

+ a, x

2

+ a, x

3

+ a) ∈ ρ.

Podobnie,

jeśli

(x

1

, x

2

, x

3

) ∈ ρ,

i

(x

2

, x

3

, x

4

) ∈ ρ,

to

(x

1

, x

3

, x

4

) ∈ ρ.

background image

36

Relacje i funkcje

W dalszym ciągu zajmować się będziemy relacjami dwuczłonowymi

albo, inaczej mówiąc, binarnymi. Zakładać dalej będziemy, że rozwa-
żane zbiory są niepuste.

Umowa notacyjna. Zamiast pisać (x

1

, x

2

) ∈ ρ będziemy na ogół uży-

wać oznaczenia x

1

ρx

2

.

Definicja 2.2 Niech ρ ⊂ A

1

× A

2

. Zbiory

D(ρ) = {x

1

∈ A

1

:

_

x

2

∈A

2

x

1

ρx

2

}

oraz

R(ρ) = {x

2

∈ A

2

:

_

x

1

∈A

1

x

1

ρx

2

}

nazywamy odpowiednio dziedziną i przeciwdziedziną tej relacji. Zbiór
D
(ρ) ∪ R(ρ) nazywamy polem relacji.

Definicja 2.3 Relacją odwrotną do relacji ρ ⊂ A

1

× A

2

nazywamy

relację

ρ

1

= {(x

2

, x

1

) : x

1

ρx

2

}.

Definicja 2.4 Niech dane będą dwie relacje ρ

1

⊂ A

1

× A

2

oraz ρ

2

A

2

× A

3

. Iloczynem względnym (inaczej: superpozycją, złożeniem) tych

relacji nazywamy relację

ρ

2

◦ ρ

1

= {(x

1

, x

3

) :

_

x

2

∈A

2

(x

1

ρ

1

x

2

∧ x

2

ρ

2

x

3

}.

Twierdzenie 2.1 Niech ρ

1

⊂ A

1

× A

2

, ρ

2

⊂ A

2

× A

3

, ρ

3

⊂ A

3

× A

4

.

Wtedy

ρ

3

(ρ

2

◦ ρ

1

) = (ρ

3

◦ ρ

2

) ◦ ρ

1

.

Dowód. Załóżmy, że

3

(ρ

2

◦ ρ

1

)y. Istnieje z takie, że

2

◦ ρ

1

z oraz

3

y. Wynika stąd, że istnieje t o tej własności, że

1

t i

2

z. Z po-

wyższych zależności otrzymujemy

3

◦ ρ

2

y, a zatem x(ρ

3

◦ ρ

2

) ◦ ρ

1

y.

Dowód implikacji w drugą stronę jest analogiczny.

2

background image

Podstawowe własności relacji

37

Twierdzenie 2.2 Dla dowolnych relacji ρ

1

⊂ A

1

× A

2

i ρ

2

⊂ A

2

× A

3

zachodzi równość

(ρ

2

◦ ρ

1

)

1

= ρ

1
1

◦ ρ

1
2

.

Dowód. Niech x(ρ

2

◦ ρ

1

)

1

y wtedy

2

◦ ρ

1

x oraz istnieje z, takie że

1

z i

2

x. Stąd wynika, że

1
2

z i

1
1

y, czyli

1
1

◦ ρ

1
2

y. Dowód

implikacji odwrotnej jest podobny.

2

Definicja 2.5 Niech ρ ⊂ A

1

× A

2

oraz B

i

⊂ A

i

, i = 1, 2. Relacje

ρ  B

1

= ρ ∩ (B

1

× A

2

)

oraz

ρ  B

2

= ρ ∩ (A

1

× B

2

)

nazywamy obcięciami relacji ρ do zbiorów odpowiednio B

1

i B

2

.

Podobnie

ρ ↑ B

1

× B

2

nazywamy obustronnym obcięciem relacji ρ do B

1

× B

2

.

Definicja 2.6 Załóżmy, że ρ ⊂ A

2

oraz B ⊂ A. Relację

I

B

= {(x, x) : x ∈ B}

nazywamy relacją identycznościową w zbiorze B.

Twierdzenie 2.3 Jeżeli ρ ⊂ A

1

× A

2

oraz B

i

⊂ A

i

, i = 1, 2, to

ρ  B

1

= ρ ◦ I

B

1

,

ρ  B

2

= I

B

1

◦ ρ.

Dowód jest oczywisty.

Zajmiemy się dokładniej własnościami relacji ρ ⊂ A × A.

Definicja 2.7 Relację ρ ⊂ A × A nazywamy:

(a) zwrotną, jeśli

^

x∈A

xρx,

background image

38

Relacje i funkcje

(b) przeciwzwrotną, jeśli

^

x∈A

(xρx),

(c) symetryczną, jeśli

^

x∈A

^

y∈A

(xρy ⇒ yρx),

(d) przeciwsymetryczną, jeśli

^

x∈A

^

y∈A

(xρy ⇒∼ (yρx)),

(e) słabo antysymetryczną, jeśli

^

x∈A

^

y∈A

(xρy ∧ yρx ⇒ y = x),

(f) przechodnią, jeśli

^

x∈A

^

y∈A

^

z∈A

(xρy ∧ yρz ⇒ xρz),

(g) spójną, jeśli

^

x∈A

^

y∈A

(xρy ∨ yρz ∨ x = y).

Przykład. Zbadamy własności następujących relacji:

i) ρ ⊂

R

2

xρy ⇔ xy > 0,

ii) ρ ⊂

N

2

nρm ⇔ |n − m| = 2.

Zajmiemy się najpierw relacją i). Relacja ta nie jest zwrotna, bo na

przykład nie jest prawdą, że 0ρ0. Nie jest też przeciwzwrotna, gdyż nie
jest prawdą, że dla dowolnego x ∈

R, x

2

¬ 0. Rozważana relacja jest

oczywiście symetryczna i nie jest przeciwsymetryczna. Nie jest słabo
antysymetryczna, bo z tego, że xy > 0 nie wynika, że x = y. Relacja
jest przechodnia, ponieważ jeśli xy > 0 i yz > 0, to xy

2

z > 0, skąd

wynika, że xz > 0. Relacja nie jest spójna, bo np. liczby 1 i 2 nie są
ze sobą w relacji oraz 1 6= 2.

background image

Relacje pomiędzy elementami zbiorów skończonych

39

Zbadajmy relację ii). Relacja ta nie jest zwrotna, bo |n−n| = 0 6= 2.

Jest ona natomiast przeciwzwrotna. Ponadto, relacja ta jest syme-
tryczna, ponieważ |n − m| = |m − n|. Nie jest przeciwsymetrycz-
na. Czy jest słabo asymetryczna? Odpowiedź jest negatywna, gdyż
np. 3ρ5 5ρ3, ale 3 6= 5. Zauważmy jednocześnie, że chociaż 3ρ5 5ρ7,
to nie jest prawdą, że 3ρ7, a zatem relacja nie jest przechodnia. Relacja
nie jest też spójna, ponieważ np. 1 nie jest w relacji ρ z 2 (i vice versa),
a ponadto 1 6= 2.

Twierdzenie 2.4 Relacja ρ ⊂ A

2

jest symetryczna wtedy i tylko wte-

dy, gdy

ρ ⊂ ρ

1

.

Dowód. Załóżmy, że relacja ρ jest symetryczna. Wynika stąd, że jeśli
xρy, to yρx, a zatem

1

y, czyli ρ ⊂ ρ

1

.

Jeśli natomiast ρ ⊂ ρ

1

, to z tego, iż xρy wynika, że

1

y, czyli

yρx.

2

Twierdzenie 2.5 Relacja ρ ⊂ A

2

jest przechodnia wtedy i tylko wtedy,

gdy

ρ ◦ ρ ⊂ ρ.

Dowód. Załóżmy najpierw, że relacja ρ jest przechodnia. Niech xρ◦ρy.
Istnieje wtedy z, takie że xρz i zρy. Zatem xρy, czyli ρ ◦ ρ ⊂ ρ.

Niech ρ ◦ ρ ⊂ ρ i załóżmy, że xρy i yρz. Wtedy xρ ◦ ρz, a stąd

wynika, że xρz.

2

2.2

Relacje pomiędzy elementami
zbiorów skończonych

Zajmiemy się teraz bardziej szczegółowo relacjami zachodzącymi

pomiędzy elementami zbiorów skończonych. Przedstawiamy te relacje
często za pomocą odpowiednich diagramów.

background image

40

Relacje i funkcje

Przykład. Rozważmy relację ρ pomiędzy elementami zbiorów

A = {α, β, γ, δ}

i

B = { , 4, }

określoną następująco

ρ = {(α, ), (β, 4), (γ, ), (δ, )}.

Za pomocą diagramu możemy ją zilustrować w poniższy sposób.

α

β

γ

δ

4



A

B

Relację odwrotną do powyższej przedstawiamy za pomocą diagra-

mu

α

β

γ

δ

4



A

B

Jeśli ponadto dana jest relacja

τ = {( , a), ( , b), ( , c), (4, b)}

zawarta w iloczynie kartezjańskim B ×C, gdzie C = {a, b, c}, to relację
τ ◦ ρ przedstawiamy graficznie w formie kolejnego diagramu.

background image

Relacje pomiędzy elementami zbiorów skończonych

41

α

β

γ

δ

4



A

B

C

a

b

c

czyli

α

β

γ

δ

a

b

c

A

C

Tak więc

τ ◦ ρ = {(α, a), (α, b), (α, c), (β, b), (γ, a), (γ, b), (γ, c)}.

W przypadku, gdy relacja zachodzi pomiędzy elementami tego

samego zbioru, również przedstawimy ją za pomocą odpowiedniego
diagramu.

Przykład. Rozważmy relację ρ ⊂ A

2

, gdzie A = {x, y, z, t} taką, że

ρ = {(x, x), (x, y), (x, u), (y, z), (y, t), (y, u), (z, y), (z, t), (t, t)}.

background image

42

Relacje i funkcje

Odpowiada jej diagram

x

y

u

t

z

A

Definicja 2.8 Niech dana będzie relacja ρ ⊂ A × B, gdzie

A = {x

1

, x

2

, ..., x

n

},

B = {y

1

, y

2

, ..., y

m

}.

Macierz R = [r

ij

]

n×m

, gdzie

r

ij

=

(

1, jeśli

x

i

ρy

j

,

0, jeśli ∼ (x

i

ρy

j

)

nazywamy macierzą tej relacji.

Twierdzenie 2.6 ([15, s. 668]) Niech dane będą dwie relacje ρ ⊂
A × B i τ ⊂ B × C, gdzie A
= {x

1

, x

2

, ..., x

n

}, B = {y

1

, y

2

, ..., y

m

}, zaś

C = {z

1

, z

2

, ..., z

k

}. Wtedy relacji τ ◦ ρ odpowiada macierz S = [s

il

]

n×k

,

której współczynniki są równe

s

il

=

m

[

j=1

r

ij

∩ t

jl

,

gdzie R = [r

ij

]

n×m

oraz T = [t

jl

]

m×k

są macierzami odpowiednio relacji

ρ i τ , natomiast symbole ∪ oraz ∩ oznaczają, jak poprzednio, maksi-
mum i minimum.

Dowód twierdzenia jest oczywisty. Pozostawiamy go Czytelnikowi

jako ćwiczenie.

Przykład. Niech dane będą relacje

ρ = {(0, x), (0, y), (1, z), (2, y), (3, z)}

background image

Relacje równoważności

43

oraz

τ = {(x, a), (y, a), (y, b), (z, b)},

takie że

ρ ⊂ {0, 1, 2, 3} × {x, y, z}

i

τ ⊂ {x, y, z} × {a, b}.

Odpowiadają im macierze

R =

0
1
2
3

x y z




1 1 0
0 0 1
0 1 0
0 0 1




i

T =

x
y

z

a b


1 0
1 1
0 1


.

Zauważmy, że

τ ◦ ρ = {(0, a), (0, b), (1, b), (2, a), (2, b), (3, b)}.

Odpowiada jej macierz S = R × T .

S =

0
1
2
3

a b




1 1
0 1
1 1
0 1




2.3

Relacje równoważności

Definicja 2.9 Relację ρ ⊂ A

2

nazywamy relacją równoważności jeśli

jest ona zwrotna, symetryczna i przechodnia.

Przykład. Relacjami równoważności są:

(i) ρ ⊂

R

2

taka, że ρ = {(x, x) : x ∈

R},

(ii) σ ⊂

R

2

taka, że xσy ⇔ x

2

= y

2

,

background image

44

Relacje i funkcje

(iii) τ ⊂

Z

2

taka, że nτ m ⇔ 4|(n − m), gdzie symbol k|l rozumiemy

jako: liczba k dzieli liczbę l,

(iv) ξ ⊂

N

2

×

N

2

taka, że (k

1

, l

1

)ξ(k

2

, l

2

) ⇔ k

1

− l

1

= k

2

− l

2

.

To, że relacje ρ i σ są relacjami równoważności nie wymaga komen-

tarza. Przyjrzyjmy się relacji τ .

Jest ona zwrotna, bo n − n = 0 dzieli się przez 4. Jest także syme-

tryczna, gdyż jeśli n − m dzieli się przez 4, to także m − n dzieli się
przez 4. Jest też relacją przechodnią, ponieważ, jeśli n − m oraz m − k
dzielą się przez 4, to n − k = n − m + m − k również dzieli się przez 4.

Relacja ξ jest oczywiście zwrotna i symetryczna. Jest też przechod-

nia, ponieważ, jeśli k

1

−l

1

= k

2

−l

2

i k

2

−l

2

= k

3

−l

3

, to k

1

−l

1

= k

3

−l

3

.

Definicja 2.10 Niech ρ ⊂ A

2

będzie relacją równoważności. Zbiór

[x]

ρ

= {y ∈ A : xρy}

nazywamy klasą abstrakcji elementu x dla relacji ρ.

Zbiór wszystkich klas abstrakcji tej relacji nazywamy zbiorem ilo-

razowym i oznaczamy symbolem A/ρ.

Przykład. Dla relacji równoważności ρ, σ, τ , ξ z poprzedniego przy-
kładu klasami abstrakcji są

(i) [x]

ρ

= {x}, x ∈

R,

(ii) [x]

σ

= {−x, x}, x ∈

R,

(iii) [0]

τ

= {4k : k ∈

Z},

[1]

τ

= {4k + 1 : k ∈

Z},

[2]

τ

= {4k + 2 : k ∈

Z},

[3]

τ

= {4k + 3 : k ∈

Z},

(iv) [(k, l)]

ξ

= {(r + k − l, r) : r ∈

N}, k, l ∈ N.

Dla klasy [x]

ρ

element x nazywamy jej reprezentantem. Jeśli xρy,

to oczywiście [x]

ρ

= [y]

ρ

. Na przykład dla relacji τ , jak wyżej, [0]

τ

=

[2]

τ

= [4]

τ

, itd.

background image

Relacje równoważności

45

Twierdzenie 2.7 Niech ρ ⊂ A

2

będzie relacją równoważności. Wtedy

(i) [x]

ρ

6= ∅ dla dowolnego x ∈ A,

(ii) [x]

ρ

= [y]

ρ

lub [x]

ρ

[y]

ρ

= ∅ dla dowolnych x i y należących do

A,

(iii) każdy element x zbioru A należy do pewnej klasy abstrakcji rela-

cji ρ.

Dowód twierdzenia jest oczywisty.

Definicja 2.11 Podziałem zbioru A 6= ∅ nazywamy rodzinę zbiorów
A

i

, i ∈ I, gdzie A

i

6= ∅ dla dowolnego i ∈ I, a ponadto A

i

∩ A

j

= ∅ dla

i 6= j, i, j ∈ I, oraz

[

i∈I

A

i

= A.

Uwaga. Z ostatniego twierdzenia i definicji wynika, że relacja równo-
ważności ρ ⊂ A

2

dokonuje podziału zbioru niepustego A.

Twierdzenie 2.8 Niech dany będzie podział A

i

, i ∈ I, zbioru A 6= ∅.

Istnieje relacja równoważności ρ ⊂ A

2

, która prowadzi do tego podziału.

Dowód. Nietrudno zauważyć, że relacja ρ jest określona następująco

xρy ⇔

_

i∈I

(x ∈ A

i

∧ y ∈ A

i

).

2

Uwaga. Ostatnie dwa twierdzenia łączące relację równoważności po-
między elementami danego zbioru z podziałem tego zbioru noszą nazwę
zasady abstrakcji.

background image

46

Relacje i funkcje

2.4

Relacje porządku

Definicja 2.12 Relację ρ ⊂ A

2

nazywamy relacją częściowego porząd-

ku (lub, po prostu, porządku), jeśli jest ona zwrotna, słabo antysyme-
tryczna i przechodnia.

Umowa notacyjna. Relację częściowego porządku oznaczać będziemy
zazwyczaj symbolem .

Przykład. Poniższe relacje są relacjami częściowego porządku.

(i) Relacja  ⊂

R

2

taka, że

x  y ⇔ x ¬ y.

(ii) Relacja  ⊂

N

2
+

taka, że

n  m ⇔ n|m,

gdzie

N

+

=

N \ {0}.

(iii) Niech A będzie zbiorem. Rozważmy relację ⊂ P(A)

2

taką, że

U  V ⇔ U ⊂ V.

Definicja 2.13 Jeżeli  ⊂ A

2

jest relacją częściowego porządku, to

x ≺ y

def

⇐⇒ (x  y ∧ x 6= y),

x, y ∈ A.

W dalszym ciągu, jeśli x  y, będziemy pisać, że element x jest

mniejszy lub równy od elementu y, a element y jest większy lub równy
od x. Jeśli natomiast x ≺ y, będziemy pisać, że x jest mniejszy od y,
a y jest większy od x.

Definicja 2.14 Załóżmy, że  ⊂ A

2

i niech x

0

∈ A

0

⊂ A. Wtedy, jeśli

^

x∈A

0

(x

0

 x ⇒ x = x

0

),

to x

0

nazywamy elementem maksymalnym w zbiorze A

0

.

Jeżeli natomiast

^

x∈A

0

(x  x

0

⇒ x = x

0

),

to x

0

nazywamy elementem minimalnym w zbiorze A

0

.

background image

Relacje porządku

47

Definicja 2.15 Niech  ⊂ A

2

i załóżmy, że x

0

∈ A

0

⊂ A. Jeżeli

^

x∈A

0

x  x

0

,

to x

0

nazywamy elementem największym w zbiorze A

0

lub maksimum

zbioru A

0

i oznaczamy symbolem max A

0

.

Jeżeli

^

x∈A

0

x

0

 x,

to x

0

nazywamy elementem najmniejszym w zbiorze A

0

albo minimum

A

0

i oznaczamy symbolem min A

0

.

Definicja 2.16 Ograniczeniem górnym zbioru A

0

⊂ A nazywamy każ-

dy element x

0

∈ A, taki że

^

x∈A

x  x

0

.

Ograniczeniem dolnym zbioru A

0

nazywamy x

0

, który spełnia wa-

runek

^

x∈A

x

0

 x.

Definicja 2.17 Kresem górnym albo supremum zbioru A

0

⊂ A nazy-

wamy najmniejsze z ograniczeń górnych tego zbioru. Kres górny zbioru
A

0

oznaczmy symbolem sup A

0

.

Podobnie, kresem dolnym albo infimum zbioru A

0

nazywamy naj-

większe z ograniczeń dolnych tego zbioru. Kres dolny zbioru A

0

ozna-

czamy symbolem inf A

0

.

Uwaga. Zdefiniowane wyżej elementy nazywamy elementami wyróż-
nionymi.

Przykład. Rozważmy zbiór

N

=

N

+

∪ {

1

n

: n ∈

N

+

} z relacją częścio-

wego porządku

m  k ⇔

k

m

N

,

k, m ∈

N

.

background image

48

Relacje i funkcje

Weźmy pod uwagę następujące podzbiory tego zbioru

B

1

= {

1

2n

: n ∈

N

+

} ∪ {2n : n ∈

N

+

},

B

2

= {

1
3

, 1, 3, 9},

B

3

= {

1
4

,

1
3

, 1, 4, 7, 9},

B

4

= {p ∈

N

+

: p jest liczbą pierwszą}.

Tutaj zbiór B

1

nie ma elementów wyróżnionych. W przypadku

zbioru B

2

, max B

2

= sup B

2

= 9 oraz min B

2

= inf B

2

=

1
3

. Zbiór B

3

ma dwa elementy minimalne

1
4

i

1
3

, a także trzy elementy maksymalne

4, 7, 9. Nie ma oczywiście ani elementu największego, ani elementu
najmniejszego. Każdy element zbioru B

4

jest zarówno elementem mi-

nimalnym jak i maksymalnym.

Uwaga. Można wykazać, że dowolny zbiór ma co najwyżej jeden ele-
ment największy, najmniejszy oraz co najwyżej jeden kres górny i dol-
ny. Ponadto jeśli element największy (podobnie: najmniejszy) istnieje,
to jest on również kresem górnym zbioru i jedynym jego elementem
maksymalnym (odpowiednio: kresem dolnym i jedynym elementem mi-
nimalnym).

Definicja 2.18 Relację częściowego porządku, która jest spójna nazy-
wać będziemy relacją porządku liniowego.

Przykład. Relacjami liniowego porządku są

(i) relacja ¬ w zbiorze liczb rzeczywistych

R,

(ii) relacja podzielności w zbiorze {2

n

: n ∈

N}.

Do przedstawiania graficznego zbiorów częściowo uporządkowa-

nych wykorzystywane są tzw. diagramy Hassego. Składają się one
z punktów płaszczyzny, nazywanych wierzchołkami, i łączących je linii
(odcinków lub łuków).

Wierzchołki odpowiadają elementom zbioru, przy czym elementom

wcześniejszym, w sensie relacjami , odpowiadają wierzchołki położo-
ne niżej. Ponadto dwa wierzchołki połączone są linią wtedy i tylko wte-
dy, gdy pomiędzy odpowiadającymi im elementami zbioru, powiedzmy

background image

Relacje porządku

49

x i y, zachodzi relacja, a także nie istnieje z, takie że x  z  y lub
y  z  x, z 6= x, y.

Przykład

(i) Rozważmy zbiór A = {2, 3, 5, 6, 7, 8, 11, 15, 16, 30, 35, 105}, w któ-

rym dana jest relacja podzielności. Odpowiedni diagram Hassego
ma postać

16

8

2

6

30

3

5

7

11

15

35

105

(ii) Weźmy pod uwagę zbiór P({0, 1}) uporządkowany przez relację

inkluzji. Odpowiada mu diagram Hassego

{0, 1}

{0}

{1}

{∅}

(iii) Zajmijmy się zagadnieniem nieco bardziej skomplikowanym. Za-

stanówmy się, na ile sposobów można wprowadzić relację częścio-
wego porządku w zbiorze czteroelementowym {1, 2, 3, 4}. Okazu-
je się, że sposobów takich jest aż 249. Nie sposób przedstawić
wszystkie odpowiadające im diagramy Hassego. Poniżej prezen-
tujemy szesnaście diagramów, w oparciu o które łatwo otrzymać
diagramy pozostałe.

background image

50

Relacje i funkcje

1

2

3

4

(a)

1

2

3

4

(b)

1

2

3

4

(c)

1

2

3

4

(d)

2

1

3

4

(e)

1

2

3

4

(f)

1

2

3

4

(g)

1

2

3

4

(h)

1

2

3

4

(i)

1

2

3

4

(j)

3

4

2

1

(k)

background image

Funkcje i ich własności

51

3

2

4

1

(l)

1

2

3

4

(m)

1

2

3

4

(n)

1

2

3

4

(o)

2

4

1

3

(p)

2.5

Funkcje i ich własności

Przyjmijmy na wstępie założenie, które uczynione zostało wcze-

śniej, gdy definiowane było pojęcie relacji. Podobnie jak poprzednio,
zakładać będziemy, że zbiory rozważane w tym podrozdziale są niepu-
ste.

Definicja 2.19 Relację f ⊂ A × B nazywamy funkcją odwzorowującą
zbiór A w zbiór B, jeśli

(i)

V

x∈A

W

y∈B

xf y,

(ii)

V

x∈A

V

y

1

∈B

V

y

2

∈B

(xf y

1

∧ xf y

2

⇒ y

1

= y

2

).

background image

52

Relacje i funkcje

Umowa notacyjna. W dalszym ciągu zamiast pisać xf y, będziemy
używać zapisu y = f (x). Element x nazywamy argumentem funkcji
f , zaś y - jej wartością dla tego argumentu. Funkcję zapisywać też
będziemy następująco f : A → B.

Przykład

(i) Relacja f

1

= {(x, y)

R

2

: y = x

2

} jest funkcją odwzorowującą

zbiór

R w R.

(ii) Relacja f

2

= {(x, y) [0; ) ×

R : x = y

2

} nie jest funkcją, bo

na przykład 1f

2

1 oraz 1f

2

1.

Definicja 2.20 Zbiory D(f ) i R(f ) nazywamy odpowiednio dziedziną
i przeciwdziedziną funkcji f .

Definicja 2.21 Niech dana będzie funkcja f : A → B oraz zbiory
A

0

⊂ A i B

0

⊂ B. Zbiory

f (A

0

) = {y ∈ B :

_

x∈A

0

y = f (x)}

f

1

(B

0

) = {x ∈ A :

_

y∈B

0

f (x) = y}

nazywamy odpowiednio obrazem zbioru A

0

poprzez funkcję f oraz prze-

ciwobrazem zbioru B

0

poprzez f .

Twierdzenie 2.9 Niech dana będzie funkcja f : A → B. Wtedy dla
A

1

, A

2

⊂ A:

(i) f (A

1

∪ A

2

) = f (A

1

) ∪ f (A

2

),

(ii) f (A

1

∩ A

2

) ⊂ f (A

1

) ∩ f (A

2

),

(iii) f (A

1

) \ f (A

2

) ⊂ f (A

1

\ A

2

).

Dowód

(i) Jeśli y ∈ f (A

1

∪ A

2

), to istnieje x ∈ A

1

∪ A

2

o takiej własności,

że y = f (x). Zatem y ∈ f (A

1

) lub y ∈ f (A

2

), czyli y ∈ f (A

1

)

f (A

2

). Dowód implikacji odwrotnej jest podobny.

background image

Funkcje i ich własności

53

(ii) Jeżeli y ∈ f (A

1

∩ A

2

), to istnieje x takie, że x ∈ A

1

i x ∈ A

2

oraz

y = f (x). Tak więc y ∈ f (A

1

) ∩ f (A

2

).

(iii) Załóżmy, że y ∈ f (A

1

) \ f (A

2

). Stąd wynika, że istnieje x ∈ A

1

takie, że y ∈ f (A

1

), x /

∈ A

2

, bo y /

∈ f (A

2

). Zatem x ∈ A

1

\ A

2

,

czyli y ∈ f (A

1

\ A

2

).

2

Uwaga. W punktach (ii) i (iii) powyższego twierdzenia inkluzja nie
może być zastąpiona równością. Świadczy o tym przykład funkcji
f :

R R, takiej że f(x) = x

2

oraz A

1

= [1, 0], A

2

= [0, 1].

Mamy zatem

f (A

1

∩ A

2

) = f ({0}) = {0} 6= f (A

1

) ∩ f (A

2

) = [0, 1]

oraz

f (A

1

) \ f (A

2

) = ∅ 6= f (A

1

\ A

2

) = f ([1, 0)) = (0, 1].

Twierdzenie 2.10 Niech f : A → B oraz B

1

, B

2

⊂ B. Wtedy

(i) f

1

(B

1

∪ B

2

) = f

1

(B

1

) ∪ f

1

(B

2

),

(ii) f

1

(B

1

∩ B

2

) = f

1

(B

1

) ∩ f

1

(B

2

),

(iii) f

1

(B

1

\ B

2

) = f

1

(B

1

) \ f

1

(B

2

).

Dowód powyższego twierdzenia pozostawiamy Czytelnikowi.

Definicja 2.22 Niech dane będą dwie funkcje

f

1

: A → B

i

f

2

: B → C.

Ich złożeniem albo superpozycją nazywamy relację f

2

◦ f

1

.

Przykład. Niech funkcja f

1

: [1, 1]

R będzie dana zależnością

f

1

(x) =

(

1

dla x ∈ [1, 0],

x + 2 dla x ∈ (0, 1]

oraz niech dana będzie funkcja f

2

: [1, 3] [1, 3] taka, że

f

2

(x) =

(

2

dla x ∈ [1, 2]

2x + 2 dla x ∈ (2, 3].

background image

54

Relacje i funkcje

Wtedy

f

2

◦ f

1

(x) = f

2

(f

1

(x)) =

2

dla x ∈ f

1

1

([1, 2])

2f

1

(x) + 2

dla x ∈ f

1

1

((2, 3])

=

=

2

dla x ∈ [1, 0]

2f

1

(x) + 2

dla x ∈ (0, 1]

=

=

2

dla x ∈ [1, 0]

2(x + 2) + 2

dla x ∈ (0, 1]

=

=

2

dla x ∈ [1, 0]

2x + 6

dla x ∈ (0, 1].

Definicja 2.23 Wykresem funkcji f : A → B nazywa się zbiór

W

f

= {(x, f (x)) : x ∈ A}.

Definicja 2.24 Funkcję f : A → B nazywa się

(a) iniekcją (albo funkcją różnowartościową), jeśli

^

x

1

∈A

^

x

2

∈A

(x

1

6= x

2

⇒ f (x

1

) 6= f (x

2

)),

(b) suriekcją (funkcją na cały zbiór B), jeśli

^

y∈B

_

x∈A

y = f (x),

(c) bijekcją (funkcją wzajemnie - jednoznaczną), jeśli jest ona zara-

zem iniekcją i suriekcją.

Umowa notacyjna. W dalszym ciągu, gdy f : A → B jest suriekcją,
będziemy pisać, że odwzorowuje ona zbiór A na zbiór B.

background image

Funkcje i ich własności

55

Definicja 2.25 Zbiór wszystkich funkcji odwzorowujących zbiór A
w zbiór B oznaczany będzie symbolem B

A

.

Zbiory wszystkich iniekcji, suriekcji i bijekcji ze zbioru A w zbiór B

będą oznaczane odpowiednio symbolami ini (B

A

), sur (B

A

) oraz bij (B

A

).

Definicja 2.26 Funkcją odwrotną do funkcji f nazywamy relację f

1

,

jeśli jest ona funkcją.

Przykład

(i) Rozważmy funkcję f :

R R daną zależnością

f (x) = min{x − 1, 1}.

1

0

1

2

x

1

1

y

f

Funkcja ta nie jest iniekcją, bo np. f (2) = f (3) = 1. Nie jest też
suriekcją, gdyż f (x) ¬ 1 dla dowolnego x ∈

R. A zatem nie jest

bijekcją.

1

0

1

2

y

2

1

1

x

f

1

Relacja f

1

nie jest funkcją, ponieważ 1f

1

2 i 1f

1

3, a jest to

sprzeczne z warunkiem (ii) definicji funkcji.

background image

56

Relacje i funkcje

(ii) Weźmy pod uwagę funkcję f :

R

2

R

2

, taką że

f (x

1

, x

2

) = (x

1

+ x

2

, x

1

− x

2

).

Po pierwsze, zauważmy, że f jest suriekcją. Rzeczywiście, dla
dowolnych y

1

, y

2

R, układ równań

x

1

+ x

2

= y

1

,

x

1

− x

2

= y

2

ma rozwiązanie

x

1

=

1
2

(y

1

+ y

2

),

x

2

=

1
2

(y

1

− y

2

)

Rozwiązanie to jest jednoznaczne, a więc f jest iniekcją. Funkcja
ta jest bijekcją. Funkcja f

1

:

R

2

R

2

dana jest zależnością

f

1

(y

1

, y

2

) =



1

2

(y

1

+ y

2

),

1

2

(y

1

− y

2

)



.

Definicja 2.27 Niech dana będzie funkcja f : A → B oraz niech A

0

A. Obcięciem funkcji f do zbioru A

0

nazywamy funkcję f

 A

0

.

Przykład

(i) Niech dana będzie funkcja f z punktu (i) poprzedniego przykła-

du. Funkcja f

 (−∞, 2] jest iniekcją.

(ii) Funkcja sin :

R R nie jest oczywiście ani iniekcją ani suriekcją.

Jednak funkcja sin

 [

π

2

,

π

2

] przekształca w sposób wzajemnie -

jednoznaczny przedział [

π

2

,

π

2

] na przedział [1, 1]. Umożliwia

to zdefiniowanie funkcji odwrotnej arcsin : [1, 1] [

π

2

,

π

2

].

1

1

x

π

2

π

2

y

arcsin

background image

3

Zbiór liczb naturalnych i indukcja

3.1

Zbiór liczb naturalnych.
Definiowanie przez indukcję

Zbiór liczb naturalnych można wprowadzić w bardzo różnorodny

sposób. Można go na przykład zdefiniować jako pewien podzbiór zbioru
liczb rzeczywistych. Możliwe jest też zdefiniowanie zbioru liczb natu-
ralnych na drodze aksjomatycznej. Właśnie tak uczynimy, posługując
się aksjomatami przedstawionymi przez Giuseppe’a Peana.

Definicja 3.1 Zbiorem liczb naturalnych nazywamy zbiór

N, na któ-

rym określona jest funkcja następnika

s :

N N,

spełniająca następujące aksjomaty

1

0

N,

2

V

n∈

N

(s(n) = 0),

background image

58

Zbiór liczb naturalnych i indukcja

3

V

n∈

N

W

m∈

N

(s(n) = m ∧

V

k∈

N

(s(n) = k ⇒ k = m)),

4

V

n∈

N

V

m∈

N

V

k∈

N

(s(n) = s(m) = k ⇒ n = m),

5

(zasada indukcji zupełnej)

V

A⊂

N

((0 ∈ A ∧

V

n∈

N

(n ∈ A ⇒ s(n) ∈ A)) ⇒ A =

N

Przedstawimy kluczowe twierdzenie pozwalające na definiowanie

funkcji spełniającej pewien warunek początkowy oraz zależność rekur-
sywną.

Twierdzenie 3.1 (o definiowaniu przez indukcję) Załóżmy, że A
jest dowolnym zbiorem niepustym. Jeśli ϕ
:

N → A oraz ψ : N × N

r

×

A → A są dowolnymi funkcjami, to istnieje dokładnie jedna funkcja
f
:

N × N

r

→ A o tej własności, że dla dowolnych liczb naturalnych

m

1

, m

2

, ..., m

r

, n zachodzą warunki

f (0, m

1

, m

2

, ..., m

r

) = ϕ(m

1

, m

2

, ..., m

r

)

(3.1)

i

f (s(n), m

1

, m

2

, ..., m

r

) = ψ(n, m

1

, m

2

, ..., m

r

, f (n, m

1

, m

2

, ..., m

r

)).

(3.2)

Dowód twierdzenia pomijamy.
Pierwszy z powyższych warunków nazywamy początkowym, a dru-

gi rekursywnym. Przedstawiony w twierdzeniu schemat definiowania
funkcji nazywamy schematem rekursji prostej.

Wniosek. Jeżeli A jest dowolnym zbiorem niepustym, zaś ϕ :

N → A

i ψ :

N × N × A → A są dowolnymi funkcjami, to istnieje dokładnie

jedna funkcja f :

N × N → A, taka że dla dowolnych liczb naturalnych

m i n

f (0, m) = ϕ(m)

(3.3)

oraz

f (s(n), m) = ψ(n, m, f (n, m)).

(3.4)

background image

Zbiór liczb naturalnych. Definiowanie przez indukcję

59

Niekiedy korzysta się ze schematu definiowania przez indukcję

w jeszcze prostszej postaci.

Wniosek. Załóżmy, że A jest dowolnym niepustym zbiorem. Niech
a ∈ A i niech dana będzie funkcja γ : A → A. Wtedy istnieje dokładnie
jedna funkcja f :

N → A, taka że

f (0) = a

(3.5)

i

f (s(n)) = γ(f (n)).

(3.6)

Korzystając z pierwszego z wniosków, można w zbiorze liczb natu-

ralnych zdefiniować działania dodawania i mnożenia.

Twierdzenie 3.2 Istnieje funkcja + :

N × N N o tej własności, że

dla dowolnych m, n ∈

N

+(0, m) = m,

+(s(n), m) = s(+(n, m)).

Funkcja ta jest wyznaczona jednoznacznie.

Dowód. Należy zastosować pierwszy z wniosków do funkcji ψ :

N ×

N × N N określonej zależnością

ψ(j, k, l) = s(l).

Istnieje dokładnie jedna funkcja + :

N × N N, taka że

+(0, m) = ϕ(m) = m

i

+(s(n), m) = ψ(n, m, +(n, m)) = s(+(n, m))

dla dowolnych n, m ∈

N. Dowód jest zakończony.

2

Umowa notacyjna. W dalszym ciągu zamiast pisać +(n, m), będzie-
my pisać n + m. Ponadto, zamiast symbolu s(n), będziemy pisać n + 1.
Liczbę n + m nazywać będziemy sumą liczb n oraz m.

background image

60

Zbiór liczb naturalnych i indukcja

Twierdzenie 3.3 Dla dowolnych k, n, m ∈

N

(i) k + n = n + k,

(ii) k + (n + m) = (k + n) + m.

Dowód twierdzenia pozostawiamy Czytelnikowi.
Również w sposób indukcyjny można zdefiniować mnożenie liczb

naturalnych.

Twierdzenie 3.4 Istnieje dokładnie jedna funkcja · :

N × N N,

taka że

·(0, m) = 0,

·(n + 1, m) = ·(n, m) + m.

Prosty dowód tego twierdzenia pomijamy.

Umowa notacyjna. W dalszym ciągu zamiast pisać ·(m, n) będziemy
pisać m · n lub mn. Liczbę mn nazywamy iloczynem liczb m i n.

Iloczyn ma własności analogiczne jak dodawanie.

Twierdzenie 3.5 Dla dowolnych liczb k, m, n ∈

N

(i) km = mk,

(ii) (km)n = k(mn).

Ponadto zachodzi

Twierdzenie 3.6 Dla dowolnych k, m, n ∈

N

k(m + n) = (km) + (kn).

Powyższa równość to oczywiście prawo rozdzielności mnożenia

względem dodawania. Przy założeniu, że mnożenie ma priorytet w sto-
sunku do dodawania, nawiasy po prawej stronie równości mogą być
pominięte.

background image

Zbiór liczb naturalnych. Definiowanie przez indukcję

61

Przykład

(i) Jedną z najczęściej definiowanych indukcyjnie funkcji jest silnia,

czyli funkcja ! :

N N, taka że

!(0) = 1

oraz

!(n + 1) = (n + 1)!(n).

Jej istnienie, a także to, że taka funkcja jest jedna, wynika z wa-
runków (3.3) i (3.4).
Rzeczywiście, jeżeli przyjmiemy

ϕ(n) = 1,

n ∈

N,

oraz

ψ(j, k, l) = (j + 1)l,

to istnieje funkcja f , taka że

f (0, m) = 1

i

f (n + 1, m) = (n + 1)f (n, m),

n, m ∈

N.

Przyjmijmy

!(n) = f (n, 0).

Z powyższej definicji wynika, że

!(0) = f (0, 0) = 1

oraz

!(n + 1) = f (n + 1, 0) = (n + 1) · f (n.0) = (n + 1)·!(n).

W dalszym ciągu, zamiast pisać !(n), będziemy stosowali trady-
cyjny zapis n!.

background image

62

Zbiór liczb naturalnych i indukcja

(ii) Niech k

0

N. Istnieje dokładnie jedna funkcja h : N N, taka

że

h(0) = 1

oraz

h(n + 1) = k

0

· h(n).

Korzystamy tu z warunków (3.5) i (3.6), przyjmując a = k

0

oraz

γ(n) = k

0

· n.

Funkcję h nazywamy wykładniczą i stosujemy zapis

h(n) = k

n

0

.

3.2

Funkcje rekurencyjne

W poprzednim podrozdziale został przedstawiony pewien ważny

sposób definiowania nowych funkcji - za pomocą indukcji albo, inaczej
mówiąc, w oparciu o schemat tzw. rekursji prostej.

Obok tej metody, wykorzystuje się jeszcze kilka innych sposobów

definiowania funkcji [10, s. 342n]. Skoncentrujemy uwagę na trzech,
szczególnie istotnych sposobach definiowania.

Niekiedy przy definiowaniu funkcji bierze się pod uwagę różne przy-

padki, w każdym z nich określając funkcję inną zależnością.

Przykład. Rozważmy funkcje

(i)

f (n) =

(

1

dla n < 10,

n

2

dla n ­ 10

(ii)

g(n, m) =

(

n − m dla n > m,
0

dla n ¬ m

W ostatnim przypadku stosuje się oznaczenie

g(n, m) = n ˙

−m.

background image

Funkcje rekurencyjne

63

Zauważmy, że w ogólnym przypadku tego rodzaju definicje mają

postać

f (n

1

, n

2

, ..., n

r

) =

(

ϕ(n

1

, n

2

, ..., n

r

), jeśli (n

1

, n

2

, ..., n

r

) ∈ ρ,

ψ(n

1

, n

2

, ..., n

r

), jeśli (n

1

, n

2

, ..., n

r

) /

∈ ρ,

gdzie ϕ :

N

r

N, ψ : N

r

N, natomiast ρ jest dowolną relacją

r-członową w zbiorze

N

r

.

Inny ważny sposób definiowania opiera się na pojęciu superpozycji

funkcji.

Przykład. Niech dane będą funkcje

f (n, m, k) = n + m + k + 1,

n, m, k ∈

N

oraz

g(l) = 1,

l ∈

N.

Wtedy w wyniku superpozycji otrzymujemy między innymi funkcje

f (g(l), m, k) = m + k + 2,

f (n, g(l), k) = n + k + 2,

f (n, m, g(l)) = n + m + 2

oraz

g(f (n, m, k)) = 1,

n, m, k, l ∈

N.

Przyjmujemy też, że wynikiem superpozycji są funkcje otrzymane w wy-
niku przyrównania niektórych argumentów.

Przykład. Rozważmy funkcje, których wartości dane są zależnościami

f (n, m, k) = n + m

2

+ k

oraz

g(l) = l,

n, m, k, l ∈

N.

Wtedy, na przykład,

f (g(l), g(l), k) = l

2

+ l + k

background image

64

Zbiór liczb naturalnych i indukcja

oraz

f (g(l), g(l), g(l)) = l

2

+ 2l.

W pierwszym przypadku przyrównaliśmy do siebie pierwsze dwa

parametry, w drugim - wszystkie trzy. Ponieważ symbole n, m, k, l
są jedynie tzw. zmiennymi bieżącymi, funkcje nie ulegną zmianie, gdy
zastąpimy je innymi parametrami. W przypadku pierwszej funkcji mo-
żemy, co wydaje się dość naturalne, przyjąć zamiast l zmienną n (lub
m). Wtedy wartości funkcji piszemy następująco

f (g(n), g(n), k) = n

2

+ n + k.

Podobnie można postąpić w przypadku drugiej funkcji, pisząc

f (g(n), g(n), g(n)) = n

2

+ 2n.

Jeszcze jeden sposób definiowania funkcji opiera się na zastosowa-

niu operacji minimum do pewnej relacji ρ ⊂

N

r+1

. Mianowicie, okre-

ślamy

(µm)[(n

1

, n

2

, ..., n

r

, m) ∈ ρ]

jako najmniejszą liczbę naturalną m, dla której zachodzi relacja ρ lub
0, jeśli liczba taka nie istnieje.

Przykład. Rozważmy relację ρ ⊂

N

2

, taką że

nρm ⇔ n · m > 10.

Wtedy

(µm)[n · m > 10] = Ent



10

n



+ 1,

n ∈

N

+

,

gdzie Ent(x) oznacza największą liczbę całkowitą, która jest mniejsza
lub równa od x, x ∈

R, oraz

(µ0)[0 · m > 10] = 0.

Otrzymujemy w ten sposób funkcję, której wartości wyrażają się

zależnością

f (n) =

(

0

dla n = 0,

Ent



10

n



+ 1 dla n ­ 1.

background image

Funkcje rekurencyjne

65

Definicja 3.2 Funkcję f :

N

r

N określoną zależnością

f (n

1

, n

2

, ..., n

r

) = (µm)[(n

1

, n

2

, ..., n

r

, m) ∈ ρ]

nazywamy zdefiniowaną za pomocą operacji minimum efektywnego, je-
żeli dla dowolnych n

1

, n

2

, ..., n

r

N istnieje m, takie że

(n

1

, n

2

, ..., n

r

, m) ∈ ρ.

Przykład

(i) Funkcja z poprzedniego przykładu nie została zdefiniowana za

pomocą minimum efektywnego, bo dla n = 0 nie istnieje m ∈

N

o tej własności, że 0ρm.

(ii) Funkcja określona za pomocą operacji

n 7−→ (µm)[m + n > 10]

jest zdefiniowana w sposób efektywny, gdyż w tym przypadku

n 7−→

(

11 − n dla n ¬ 10,
0

dla n > 10

i jak łatwo widać dla dowolnej liczby n ∈

N istnieje m ∈ N, takie

że nρm.

W matematyce jest rzeczą istotną, jakimi metodami dowodzenia

się posługujemy. Czy dowodząc jakieś twierdzenie, wykazujemy jedy-
nie istnienie postulowanego obiektu matematycznego, czy też konstru-
ujemy go w skończonej liczbie kroków przy zastosowaniu uchwytnych
intuicyjnie elementarnych operacji. Jakie operacje uznajemy za elemen-
tarne (czyli, jak je nazywamy - proste), a jakie metody za efektywne,
ukazują poniższe definicje.

Definicja 3.3 Funkcję f : A →

N, gdzie A jest pewnym właściwym

podzbiorem

N

r

(tzn. A 6=

N

r

) nazywamy funkcją częściową.

Funkcję f :

N

r

N nazywamy funkcją całkowitą.

Definicja 3.4 Funkcjami prostymi są funkcje całkowite, określone na-
stępującymi zależnościami:

background image

66

Zbiór liczb naturalnych i indukcja

(i) o(n) = 0,

(ii) s(n) = n + 1,

(iii) I

r

k

(n

1

, n

2

, ..., n

r

) = n

k

,

1 ¬ k ¬ r.

Definicja 3.5 Funkcję f : A →

N, A ⊂ N

r

, nazywamy:

a) pierwotnie rekurencyjną, jeśli może być uzyskana z funkcji pro-

stych za pomocą superpozycji i rekursji prostej,

b) częściowo rekurencyjną, jeśli powstaje z funkcji prostych za po-

mocą superpozycji, rekursji prostej i minimum efektywnego,

c) ogólnie rekurencyjną (obliczalną), jeśli jest całkowitą funkcją czę-

ściowo rekurencyjną.

Przykład

(i) Rozważmy funkcję określoną zależnością

f (n) = n + k,

n ∈

N,

gdzie k ∈

N

+

jest ustaloną liczbą. Ponieważ

f = s ◦ s ◦ ... ◦ s

|

{z

}

k razy

,

więc f jest funkcją całkowitą pierwotnie rekurencyjną. Jest też
oczywiście funkcją ogólnie rekurencyjną.

(ii) Z kolei funkcja dwóch zmiennych dana zależnością

f (n, m) = m

n

może zostać zdefiniowana indukcyjnie czyli w oparciu o schemat
rekursji prostej, bowiem

f (0, m) = 1,

(ϕ(m) = 1)

i

f (n + 1, m) = f (n, m) · m,

(ψ(j, k, l) = k · l).

Wykorzystujemy tu umowę, zgodnie z którą 0

0

= 1. Zatem funk-

cja ta jest pierwotnie rekurencyjną funkcją całkowitą.

background image

Zastosowanie rekurencji ...

67

Definicja 3.6 Jeżeli ρ ⊂

N

r

jest relacją r-członową, to funkcję

χ

ρ

(n

1

, n

2

, ..., n

r

) =

(

1 jeśli (n

1

, n

2

, ..., n

r

) ∈ ρ,

0 jeśli (n

1

, n

2

, ..., n

r

) /

∈ ρ

nazywa się funkcją charakterystyczną tej relacji.

Definicja 3.7 Jeśli A ⊂

N

r

, to funkcją charakterystyczną tego zbioru

nazywa się funkcję

χ

A

(n

1

, n

2

, ..., n

r

) =

(

1 jeśli (n

1

, n

2

, ..., n

r

) ∈ A,

0 jeśli (n

1

, n

2

, ..., n

r

) /

∈ A.

Powyższe definicje pozwalają na przeniesienie pojęcia rekurencji

na zbiory i relacje.

Definicja 3.8 Zbiór lub relację nazywać będziemy rekurencyjnymi, je-
śli odpowiadające im funkcje charakterystyczne są pierwotnie rekuren-
cyjne. Podobnie, zbiór lub relację nazywać będziemy ogólnie rekuren-
cyjnymi, jeśli odpowiadające im funkcje charakterystyczne są ogólnie
rekurencyjne.

Przykład. Nietrudno sprawdzić, że poniższe relacje są rekurencyjne:

(i) relacja identycznościowa I

N

N × N, taka że

nI

N

m ⇔ n = m,

(ii) relacja ρ ⊂

N

3

o tej własności, że

(n, m, k) ∈ ρ ⇔ n + m = k.

Rekurencyjne są też oczywiście zbiory odpowiadające tym rela-

cjom.

3.3

Zastosowanie rekurencji: automaty
skończone i ich języki

Na wstępie tego podrozdziału przedstawimy dwie definicje.

background image

68

Zbiór liczb naturalnych i indukcja

Definicja 3.9 Zbiorem przeliczalnym nazywamy każdy zbiór A, dla
którego istnieje bijekcja f
:

N → A.

Nietrudno wykazać, że zbiorami przeliczalnymi są na przykład:

zbiór wszystkich naturalnych liczb parzystych

N

par

, zbiór wszystkich

liczb całkowitych

Z, a także zbiór wszystkich liczb wymiernych Q.

Definicja 3.10 Zbiór A nazywamy skończonym, jeśli dla pewnego n ∈
N istnieje bijekcja

f : {0, 1, ..., n} → A.

Rozróżnienie pomiędzy, z jednej strony, zbiorami przeliczalnymi

i skończonymi, a z drugiej strony - zbiorami nieskończonymi nieprzeli-
czalnymi (takimi jak

R) jest niezwykle ważne w matematyce dyskret-

nej. W jednym z kolejnych rozdziałów zajmiemy się dokładniej wła-
snościami zbiorów skończonych, w szczególności metodami zliczania
ich elementów.

Możemy przejść do zasadniczego tematu tego podrozdziału.

Definicja 3.11 Alfabetem języka automatu skończonego nazywamy
skończony zbiór symboli

X

=

0

, α

1

, ..., α

r

},

r ∈

N.

Słowem języka takiego automatu nazywamy dowolny skończony ciąg

symboli (być może powtarzających się) pochodzących z alfabetu

P

.

Słowo, które nie zawiera ani jednego symbolu nazywać będziemy

pustym; będzie ono oznaczane symbolem λ.

Konkatenacją dwóch słów w

1

= α

i

1

α

i

2

...α

i

k

oraz w

2

= α

j

1

α

j

2

...α

j

l

nazywamy słowo

w

1

w

2

= α

i

1

α

i

2

...α

i

k

α

j

1

α

j

2

...α

j

l

.

Definicja 3.12 Językiem formalnym nad alfabetem

P

nazywamy zbiór

P

wszystkich słów, włącznie ze słowem pustym, utworzonych z symboli

tego alfabetu.

background image

Zastosowanie rekurencji ...

69

Przykład

(i) Jeżeli

P

= {a, b, c}, to

P

= {λ, a, b, c, aa, ab, ac, ba, bb, bc, ca, cb,

cc, aaa, ...}. Konkatenacją słów abc i cc jest słowo abccc, ale także
słowo ccabc.

(ii) Niech

P

= {0, 1}. Wtedy

P

= {λ, 0, 1, 00, 01, 10, 11, 000, ...}.

Konkatenacjami słów 010 i 101 są słowa 010101 oraz 101010.

Definicja 3.13 Długością słowa w ∈

P

nazywamy liczbę |w| symboli

alfabetu tworzących to słowo.

Definicja 3.14 Przedrostkiem słowa w nazywa się dowolne słowo σ,
takie że istnieje słowo τ , iż

w = στ.

Przyrostkiem słowa w nazywa się dowolne słowo τ o tej własności,

że istnieje słowo σ, takie że zachodzi powyższa równość.

Definicja 3.15 ([11, s. 30]) Automatem skończonym nazywać będzie-
my strukturę

A = (Q,

X

, δ, q

0

, E),

gdzie Q = {q

0

, q

1

, ..., q

r

} jest zbiorem stanów automatu A,

P

jest al-

fabetem wejściowym automatu, q

0

jest stanem początkowym, a E ⊂ Q

zbiorem stanów końcowych tego automatu, natomiast

δ : Q ×

X

→ Q

jest tzw. funkcją przejścia, która stanom automatu oraz symbolom al-
fabetu przyporządkowuje stany automatu.

Działanie automatu skończonego możemy zilustrować następująco:

· · α β γ · · · ·

q

sterowanie

(i)

· · α β γ · · · ·

δ(q, β)

sterowanie

(ii)

background image

70

Zbiór liczb naturalnych i indukcja

Automat znajdujący się w stanie q czyta z taśmy symbol alfabetu

β, a następnie głowica przesuwa się o jedno miejsce w prawo i zarazem
automat przechodzi do stanu δ(q, β).

W przypadku, gdy głowica urządzenia przesunęła się na prawy

koniec taśmy, mówimy, że automat A zaakceptował całe słowo zapisane
na taśmie.

Przykład. Rozważmy automat skończony przedstawiony następują-
cym diagramem

start

q

0

q

1

q

2

end

1

0

0

1

1

0

Stanem początkowym tego automatu jest q

0

, a stanem końcowym q

2

.

Symbolom alfabetu 0 i 1 oraz stanom odpowiadają przejścia zaznaczo-
ne łukami skierowanymi. Słowami akceptującymi, tzn. przeprowadza-
jącymi automat ze stanu początkowego q

0

w stan końcowy q

2

, są na

przykład

00, 0100, 010100, 1, 011, 01011.

Do tej pory pisaliśmy o pojedynczych symbolach alfabetu, których

odczytywanie przeprowadza automat z jednego stanu w drugi (może
być on stanem wyjściowym). Znacznie wygodniej jest jednak rozważać
całe słowa. W związku z tym należy zdefiniować nową funkcję

δ

1

: Q ×

X

→ Q,

która stanom i słowom języka przyporządkowuje stany automatu. Funk-
cję tę definiujemy indukcyjnie, korzystając z nieco zmodyfikowanej za-
sady indukcji, którą łatwo można otrzymać w oparciu o znane już
metody definiowania przez indukcję.

background image

Zastosowanie rekurencji ...

71

Definicja 3.16 Funkcję δ

1

definiujemy następująco:

δ

1

(q, λ) = q

i

δ

1

(q, wα) = δ(δ

1

(q, w), α).

Przykład. Dla automatu z poprzedniego przykładu

δ

1

(q

0

, 01010) = q

1

,

δ

1

(q

1

, 100) = q

2

.

Definicja 3.17 Załóżmy, że A ⊂

P

. Wtedy zbiory A

r

definiujemy

indukcyjnie następująco:

A

0

def

= {λ},

A

r

def

= AA

r−1

,

r ­ 1.

Ponadto przyjmujemy

A

def

=

[

r=0

A

r

i

A

+

def

=

[

r=1

A

r

.

A

nazywamy domknięciem Kleenego zbioru A, natomiast A

+

nazywa-

my domknięciem dodatnim tego zbioru.

Zbiory słów wygodnie jest reprezentować za pomocą tzw. wyrażeń

regularnych. Ich ścisłe określenie zawiera poniższa definicja.

Definicja 3.18 Niech

P

będzie alfabetem pewnego języka automatu

skończonego. Wyrażeniami regularnymi tego języka są:

(i) ∅ - odpowiadające zbiorowi pustemu,

(ii) λ - odpowiadające zbiorowi {λ},

(iii) α - odpowiadające zbiorowi {α}, gdzie α ∈

P

,

background image

72

Zbiór liczb naturalnych i indukcja

(iv) jeśli w i σ są wyrażeniami regularnymi odpowiadającymi odpo-

wiednio zbiorom A i B, A, B ⊂

P

, to wσ, w + σ i w

są wyra-

żeniami regularnymi odpowiadającymi zbiorom AB, A ∪ B, A

.

Umowa notacyjna. W dalszym ciągu będziemy przyjmować, że sym-
bol wiąże silniej niż konkatenacja, a ta z kolei wiąże silniej niż sym-
bol +.

Przykład Niech dany będzie alfabet

P

= {0, 1}. Wtedy

(i) wyrażenie 101 reprezentuje zbiór {101},

(ii) wyrażenie 0 + 1 reprezentuje zbiór {0, 1},

(iii) wyrażenie 0

+ 1

reprezentuje zbiór {λ, 0, 1, 00, 11, ...},

(iv) wyrażenie (0 + 1)

reprezentuje zbiór

P

,

(v) wyrażenie 11(0 + 1)

∗∗

000 reprezentuje zbiór wszystkich słów za-

czynających się od co najmniej dwóch jedynek a kończących się
co najmniej trzema zerami.

Twierdzenie 3.7 ([11, s. 66]) Dla dowolnych wyrażeń regularnych
w, σ, τ zachodzą zależności

(i) w + σ = σ + w,

(ii) w + (σ + τ ) = (w + σ) + τ ,

(iii) w(στ ) = ()τ ,

(iv) w(σ + τ ) = + wτ ,

(σ + τ )w = σw + τ w,

(v) (w

)

= w

,

(vi) (w

σ

)

= (w + σ)

,

(vii)

= λ,

(viii) (w + λ)

= w

.

Łatwy dowód powyższego twierdzenia pozostawiamy Czytelnikowi.

Definicja 3.19 Niech dany będzie automat skończony A. Językiem ak-
ceptowalnym przez ten automat nazywamy zbiór

L(A) = {w ∈

X

:

_

q∈E

δ

1

(q

0

, w) = q}.

background image

Zastosowanie rekurencji ...

73

Przykład. Rozważmy jeszcze raz ten sam, co poprzednio, automat
trzystanowy. Nietrudno zauważyć, że słowa akceptowalne przez ten
automat są postaci

w00

lub

w1,

gdzie w jest albo zbiorem pustym, albo jest postaci

01, 0101, 010101, itd.

Zatem L(A) jest reprezentowany przez wyrażenie regularne

(01)

(00 + 1).

Czy każdy język

P

jest akceptowalny przez pewien automat skończo-

ny? Jak się okazuje, nie. Można dowieść (dowód jest dość skomplikowa-
ny), że język jest akceptowalny przez automat skończony wtedy i tylko
wtedy, gdy język ten jest reprezentowany przez wyrażenie regularne.

background image
background image

4

Kraty. Algebry Boole’a

i funkcje booleowskie

4.1

Kraty i ich własności

Definicja 4.1 Niepusty zbiór K z relacją częściowego porządku ⊂
K

2

nazywamy kratą, jeśli dla dowolnych elementów x, y ∈ K

sup{x, y} ∈ K

i

inf{x, y} ∈ K.

Kratę będziemy zapisywać przy pomocy symbolu (K, ).

Twierdzenie 4.1 Niech x

1

, x

2

, ..., x

r

będą elementami kraty (K, ).

Wtedy

sup{x

1

, x

2

, ..., x

r

} = sup{sup{x

1

, x

2

, ..., x

r−1

}, x

r

}

oraz

inf{x

1

, x

2

, ..., x

r

} = inf{inf{x

1

, x

2

, ..., x

r−1

}, x

r

}.

Dowód. Wykażemy pierwszą z powyższych równości. Dowód drugiej
jest analogiczny.

background image

76

Kraty. Algebry Boole’a i funkcje booleowskie

Oznaczmy

a = sup{x

1

, x

2

, ..., x

r

}

i

b = sup{sup{x

1

, x

2

, ..., x

r−1

}, x

r

}.

Oczywiście x

1

 a, x

2

 a, ..., x

r

 a. Stąd wynika, że

sup{x

1

, x

2

, ..., x

r−1

}  a.

Zatem b  a (wykorzystaliśmy tu definicję supremum jako najmniej-
szego z ograniczeń górnych).

Z drugiej strony, b jest ograniczeniem górnym zbioru {x

1

, x

2

, ...,

x

r−1

}, więc x

1

 b, x

2

 b, ..., x

r−1

 b. Także x

r

 b.

Zatem b jest ograniczeniem górnym zbioru {x

1

, x

2

, ..., x

r

}. Dlatego

a  b. Ostatecznie a = b.

2

Umowa notacyjna. Będziemy stosować oznaczenia

x ∪ y = sup{x, y}

oraz

x ∩ y = inf{x, y}.

Z powyższymi symbolami zetknęliśmy się już w rozdziale 1, rozwa-

żając działania w zbiorze {

0, 1}. Zastosowanie tych samych oznaczeń

jest nieprzypadkowe, ponieważ zbiór {

0, 1} z działaniami oraz jest

szczególnie ważnym przykładem kraty.

Przykład. Obok zbioru {

0, 1} z działaniami oraz , kratami są

także na przykład:

(i) zbiór P(A) wszystkich podzbiorów zbioru niepustego A z relacją

częściowego porządku

X  Y ⇔ X ⊂ Y.

W tym przypadku

sup{X, Y } = X ∪ Y

i

inf{X, Y } = X ∩ Y,

(ii) dowolny zbiór liniowo uporządkowany,

background image

Kraty i ich własności

77

(iii) zbiór P = {

0, x

1

, x

2

, x

3

,

1} z relacją częściowego porządku przed-

stawioną poniższym diagramem

1

x

2

x

3

x

1

0

Krata ta nazywana jest pentagonem.

(iv) zbiór D = {

0, x

1

, x

2

, x

3

,

1} z relacją częściowego porządku przed-

stawioną diagramem

1

x

2

x

1

x

3

0

Krata ta nazywana jest diamentem.

(v) zbiór B = {2

n

· 3

k

: n, k ∈

Z} z relacją podzielności,

(vi)

N

+

z relacją podzielności.

Twierdzenie 4.2 Niech x, y, z będą elementami kraty (K, ). Wtedy

(i) x ∪ y = y ∪ x,

(ii) x ∩ y = y ∩ x,

(iii) x ∪ (y ∪ z) = (x ∪ y) ∪ z,

(iv) x ∩ (y ∩ z) = (x ∩ y) ∩ z,

(v) x ∩ (y ∪ z) = (x ∩ y) (x ∩ z),

(vi) x ∪ (y ∩ z) = (x ∪ y) (x ∪ z).

background image

78

Kraty. Algebry Boole’a i funkcje booleowskie

Dowód wynika natychmiast z definicji działań i oraz z po-

przedniego twierdzenia.

Wniosek. (prawa idempotentności) Dla dowolnego elementu x kraty
(K, )

(i) x ∪ x = x,

(ii) x ∩ x = x.

Twierdzenie 4.3 Dla dowolnych elementów x, y kraty (K, ) poniż-
sze trzy warunki są sobie równoważne

(i) x  y,

(ii) x ∪ y = y,

(iii) x ∩ y = x.

Dowód. Implikacje (i)(ii) oraz (i)(iii) są natychmiastowe. Jeżeli
x ∪ y = y, to x  y, a zatem także x ∩ y = x.

2

Twierdzenie 4.4 Dla dowolnych elementów x, y kraty (K, ) zacho-
dzą tzw. prawa pochłaniania

(i) x ∩ (x ∪ y) = x,

(ii) x ∪ (x ∩ y) = x.

Dowód

(i) Na mocy definicji kresu dolnego

x ∩ (x ∪ y)  x.

Z drugiej strony x  x oraz x  x∪y. Zatem x jest ograniczeniem
dolnym zbioru

{x, x ∪ y}.

Jednak x ∩ (x ∪ y) jest największym ograniczeniem dolnym tego
zbioru. Dlatego

x  x ∩ (x ∪ y).

Ostatecznie otrzymujemy tezę.

background image

Kraty i ich własności

79

Dowód równości (ii) jest analogiczny.

2

Definicja 4.2 Kratę (K, ), która ma element najmniejszy

0 i ele-

ment największy

1 nazywamy kratą z zerem i jednością.

Przykład

(i) Zbiór

B = {0, 1} z działaniami i jest kratą z zerem i jedno-

ścią.

(ii) Zbiór P(A) wszystkich podzbiorów niepustego zbioru A z relacją

inkluzji jest kratą z zerem i jednością. Dla tej kraty

0 = oraz

1 = A.

(iii) Zbiór {2, 4, 6, 10, 12, 20, 30, 60} z relacją podzielności jest kratą

z zerem i jednością. Zerem tej kraty jest liczba 2, jednością jest
liczba 60.

(iv) Każda krata skończona jest kratą z zerem i jednością.

Twierdzenie 4.5 Dla dowolnego elementu x kraty (K, ) z zerem
i jednością

(i) 0  x  1,

(ii)

0 ∩ x = 0, 0 ∪ x = x,

(iii)

1 ∩ x = x, 1 ∪ x = 1.

Dowód twierdzenia jest oczywisty.

Na zakończenie tego podrozdziału przedstawimy jeszcze jedno waż-

ne pojęcie.

Definicja 4.3 Niech dane będą dwie kraty (K

1

, 

1

) oraz (K

2

, 

2

).

Funkcję f : K

1

→ K

2

, taką że dla dowolnych x, y ∈ K

1

x 

1

y ⇒ f (x) 

2

f (y)

nazywamy homomorfizmem krat. Jeśli f jest bijekcją, to f nazywamy
izomorfizmem krat.

background image

80

Kraty. Algebry Boole’a i funkcje booleowskie

Przykład. Rozważmy rodzinę zbiorów {∅, {0}, {1}, {2}, {0, 1, 2}} upo-
rządkowaną przez relację zawierania się oraz zbiór liczb {2, 4, 6, 8, 24}
z relacją podzielności. Oba zbiory sa izomorficznymi kratami. Odpo-
wiadają im podobne diagramy.

{1}

{1, 2, 3}

{0}

{2}

6

24

4

8

2

Izomorfizm f : {∅, {0}, {1}, {2}, {0, 1, 2}} → {2, 4, 6, 8, 24} ma po-

stać

f () = 2,

f ({0}) = 4,

f ({1}) = 6,

f ({2}) = 8,

f ({0, 1, 2}) = 24.

Nietrudno zauważyć, że homomorfizm krat ma następujące wła-

sności.

Twierdzenie 4.6 Załóżmy, że f : K

1

→ K

2

jest homomorfizmem krat

(K

1

, 

1

) i (K

2

, 

2

). Wtedy

f (x ∪

1

y) = f (x)

2

f (y)

i

f (x ∩

1

y) = f (x)

2

f (y),

gdzie x, y ∈ K

1

. Ponadto, obrazem homomorficznym zera i jedności

kraty K

1

są odpowiednio zero i jedność kraty K

2

.

background image

Algebry Boole’a

81

4.2

Algebry Boole’a

Algebry Boole’a należą do najważniejszych struktur matematycz-

nych. Z przykładami algebr Boole’a spotkaliśmy się już w rozdziale 1
tej książki, jakkolwiek sam termin: algebra Boole’a nie został wtedy
użyty. Przedstawimy definicję tego ważnego pojęcia.

Definicja 4.4 ([3, s. 342]) Algebrą Boole’a nazywamy strukturę (B,
∪, ∩, −,

0, 1}, gdzie B jest zbiorem, do którego należą 0 i 1, ∪ oraz ∩

są działaniami dwuargumentowymi nazywanymi dodawaniem i mnoże-
niem booleowskim

: B × B → B,

: B × B → B,

natomiast − jest działaniem jednoargumentowym nazywanym dopeł-
nieniem

: B → B,

przy czym dla dowolnych x, y, z ∈ B spełnione są równości

(i)

x ∪ y = y ∪ x,

(prawa przemienności)

(ii)

x ∩ y = y ∩ x,

(iii)

x ∪ (y ∪ z) = (x ∪ y) ∪ z,

(prawa łączności)

(iv)

x ∩ (y ∩ z) = (x ∩ y) ∩ z,

(v)

x ∩ (x ∪ y) = x,

(prawa pochłaniania)

(vi)

x ∪ (x ∩ y) = x,

(vii)

x ∩ (y ∪ z) = (x ∩ y) (x ∩ z),

(prawa rozdzielności)

(viii)

x ∪ (y ∩ z) = (x ∪ y) (x ∪ z),

(ix)

x ∪ (−x) =

1,

(prawa dopełnienia)

(x)

x ∩ (−x) =

0.

background image

82

Kraty. Algebry Boole’a i funkcje booleowskie

Umowa. W dalszym ciągu tego rozdziału będziemy zakładać, że sym-
bol wiąże silniej niż symbol , a ten z kolei wiąże silniej niż .

Uwaga. Nietrudno zauważyć (por. np. [3, s. 34]), że krata (K, )
z zerem i jednością oraz działaniami i , zdefiniowanymi tak jak
w poprzednim podrozdziale, jest algebrą Boole’a, o ile spełniony jest
warunek

^

x∈K

_

y∈K

(x ∪ y =

1 ∧ x ∩ y = 0).

Przykład

(i) Algebrą Boole’a jest rozważany już zbiór

B = {0, 1} z działania-

mi

x ∪ y = max{x, y}

i

x ∩ y = min{x, y}

oraz

−x =

1 − x.

(ii) Zbiór

B

r

z działaniami

(x

1

, x

2

, ..., x

r

) (y

1

, y

2

, ..., y

r

) =

= (max{x

1

, y

1

}, max{x

2

, y

2

}, ..., max{x

r

, y

r

})

oraz

(x

1

, x

2

, ..., x

r

) (y

1

, y

2

, ..., y

r

) =

= (min{x

1

, y

1

}, min{x

2

, y

2

}, ..., min{x

r

, y

r

})

i

(x

1

, x

2

, ..., x

r

) = (1 − x

1

, 1 − x

2

, ..., 1 − x

r

)

jest także algebrą Boole’a.

(iii) Zbiór P(A), gdzie A jest zbiorem niepustym, z działaniami sumy

mnogościowej, iloczynu mnogościowego oraz dopełnienia, jest al-
gebrą Boole’a. Zerem tej algebry jest zbiór pusty, a jednością jest
zbiór A.

background image

Algebry Boole’a

83

(iv) Dla dowolnej liczby naturalnej n > 1 zbiór Div(n) wszystkich

jej naturalnych dzielników (wraz z samą liczbą n) jest algebrą
Boole’a z działaniami (por. [15, s. 601])

k ∪ l = N W W (k, l),

k ∩ l = N W D(k, l)

i

−k =

n

k

,

gdzie, przypomnijmy, N W W (k, l) oznacza najmniejszą wspólną
wielokrotność liczb k i l, zaś N W D(k, l) oznacza najmniejszy
wspólny dzielnik tych liczb, jeśli w rozkładzie liczby n na liczby
pierwsze, te ostatnie występują w pierwszej potędze.
Tak jest np. dla n = 210 = 2

1

· 3

1

· 5

1

· 7

1

. Ale już dla n = 60 =

2

2

· 3

1

· 5

1

Div(60) nie jest algebrą Boole’a, bo 2 ∪ −2 = 2 30 =

30 6= 60; należy bowiem pamiętać, że jeśli Div(n) jest algebrą
Boole’a, to jej jednością jest liczba n, a zerem liczba 1.

Twierdzenie 4.7 Dla dowolnych elementów x, y algebry Boole’a (B, ∪,
∩, −,

0, 1) zachodzą zależności

(i) x ∪ x = x,

(ii) x ∩ x = x,

(iii) x ∪

0 = x,

(iv) x ∩

1 = x,

(v) x ∪ y = y ⇔ x ∩ y = x.

Dowód. (i) Na podstawie prawa pochłaniania (vi)

x ∪ (x ∩ (x ∪ x)) = x.

Zarazem, na podstawie (v), x ∩ (x ∪ x) = x. Tak więc, x ∪ x = x.

Dowód (ii) jest analogiczny. Z kolei (iii) jest konsekwencją zależ-

ności

x ∪

0 = x ∪ (x ∩ −x) = x,

background image

84

Kraty. Algebry Boole’a i funkcje booleowskie

która wynika także z prawa pochłaniania (vi). Dowód (iv) jest podob-
ny. Dowód zależności (v) pozostawiamy Czytelnikowi jako nietrudne
ćwiczenie.

2

Każda algebra Boole’a jest zbiorem częściowo uporządkowanym

poprzez odpowiednio zdefiniowaną relację.

Definicja 4.5 Dla dowolnych elementów x, y algebry Boole’a (B, ∪, ∩,
−,

0, 1) definiujemy relację  następująco

x  y ⇔ x ∪ y = y.

Twierdzenie 4.8 Relacja  określona powyższą zależnością jest rela-
cją częściowego porządku w algebrze
(B, ∪, ∩, −,

0, 1).

Dowód. Relacja  jest zwrotna, bo x ∪ x = x.

Relacja ta jest także słabo antysymetryczna, ponieważ jeśli x ∪ y =

y oraz y ∪ x = x, to oczywiście, biorąc pod uwagę przemienność sumy
booleowskiej, otrzymujemy x = y.

Relacja  jest przechodnia. Rzeczywiście, załóżmy, że x  y i y 

z. Oznacza to, że x ∪ y = y i y ∪ z = z. Zatem

x ∪ z = x ∪ (y ∪ z) = (x ∪ y) ∪ z = y ∪ z = z,

czyli x  z.

2

Twierdzenie 4.9 Dla dowolnych elementów x, y algebry Boole’a za-
chodzą prawa De Morgana

(x ∪ y) = −x ∩ −y

i

(x ∩ y) = −x ∪ −y.

Dowód. Zauważmy, że

(x ∪ y) (−x ∩ −y) = ((x ∪ y) ∪ −x) ((x ∪ y) ∪ −y) =

= ((x ∪ −x) ∪ y) ((y ∪ −y) ∪ x) =

1 1 = 1.

background image

Algebry Boole’a

85

Analogicznie możemy wykazać, że

(x ∪ y) (−x ∩ −y) = (x ∩ (−x ∩ −y)) (y ∩ (−x ∩ −y)) =

= ((x ∩ −x) ∩ −y) ((y ∩ −y) ∩ −x) =
=

0 0 = 0.

Z powyższych zależności wynika, iż

(x ∪ y) = (x ∪ y)

0 = (x ∪ y) ((x ∪ y) (−x ∩ −y)) =

= [(x ∪ y) (x ∪ y)] [(x ∪ y) (−x ∩ −y)] =

=

1 [(x ∪ y) (−x ∩ −y)] =

= [(x ∪ y) (−x ∩ −y)] [(x ∪ y) (−x ∩ −y)] =

= (−x ∩ −y) [(x ∪ y) ∪ −(x ∪ y)] = (−x ∩ −y)

1 =

= −x ∩ −y.

Dowód równości (x ∩ y) = −x ∪ −y przebiega podobnie.

2

Definicja 4.6 Atomem w algebrze Boole’a (B, ∪, ∩, −,

0, 1) nazywa-

my dowolny element x 6=

0, mający tę własność, że jeśli x = y ∪ z, to

y = x lub z = x.

Przykład

(i) Niech B = P(

N) z działaniami sumy mnogościowej i dopełnienia.

Atomami w tej algebrze Boole’a są zbiory jednoelementowe {n},
gdzie n ∈

N.

(ii) Atomami w algebrze Boole’a

B

n

są elementy

(1, 0, 0, ..., 0, 0),
(0, 1, 0, ..., 0, 0),

. . . . . . . . . . . . . . .

(0, 0, 0, ..., 1, 0),
(0, 0, 0, ..., 0, 1).

Jest ich oczywiście n.

background image

86

Kraty. Algebry Boole’a i funkcje booleowskie

(iii) W algebrze Boole’a Div(n), gdzie n = p

1

· p

2

· ... · p

r

, przy czym

p

i

, i = 1, 2, ..., r, są różnymi liczbami pierwszymi, atomami są

właśnie wszystkie wymienione liczby pierwsze.

Zachodzi ważne twierdzenie.

Twierdzenie 4.10 Załóżmy, że B jest skończoną algebrą Boole’a. Wte-
dy istnieje zbiór

U = {u

1

, u

2

, ..., u

n

}

zawierający wszystkie atomy algebry B, takie że dowolny niezerowy ele-
ment x algebry B jest skończoną sumą elementów zbioru U

x = u

i

1

∪ u

i

2

∪ ... ∪ u

i

r

.

Powyższe przedstawienie jest jednoznaczne z dokładnością do kolejności
składników.

Dowód. Po pierwsze, należy zauważyć, że nie istnieje element y ∈ B,
taki że

0 ≺ y ≺ u

i

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

W dalszym ciągu załóżmy, że element x algebry B nie jest sumą

atomów. Oznacza to, że

x = y ∪ z,

gdzie

0 ≺ y ≺ x, 0 ≺ z ≺ x, oraz co najmniej jeden z elementów y i z

nie jest sumą atomów. Powyższe rozumowanie możemy powtórzyć dla
tego elementu y lub z, który nie jest sumą atomów. W konsekwencji
otrzymujemy ciąg malejący

x  x

1

 x

2

 ...

elementów algebry niebędących sumami atomów. Jednak, ponieważ
zbiór B jest skończony, więc w powyższym ciągu powinien istnieć ele-
ment najmniejszy. Element ten jest atomem; z drugiej strony, wobec
założenia dotyczącego x, nie jest on atomem. Otrzymaliśmy sprzecz-
ność.

Wykażemy jednoznaczność przedstawienia x w postaci sumy ato-

mów. Załóżmy, że

x = y

1

∪ y

2

∪ ... ∪ y

p

background image

Algebry Boole’a

87

oraz

x = z

1

∪ z

2

∪ ... ∪ z

q

,

gdzie y

1

, y

2

, ..., y

p

, z

1

, z

2

, ..., z

q

są atomami.

Wtedy

x = x ∩ x = (y

1

∩ z

1

) (y

1

∩ z

2

) ∪ ... ∪ (y

1

∩ z

q

) (y

2

∩ z

2

) ∪ ... ∪ (y

p

∩ z

q

).

Zauważmy, że

y

i

∩ z

l

=

0 lub y

i

= z

l

,

i = 1, 2, ..., p,

l = 1, 2, ..., q.

W przeciwnym przypadku y

i

, i = 1, 2, ..., p oraz z

l

, l = 1, 2, ..., q,

nie byłyby atomami. W ten sposób twierdzenie zostało dowiedzione.

2

Definicja 4.7 Dwie algebry Boole’a

(B

1

, ∪

1

, ∩

1

, −

1

,

0

1

,

1

1

)

oraz

(B

2

, ∪

2

, ∩

2

, −

2

,

0

2

,

1

2

)

nazywamy homomorficznymi, jeśli istnieje funkcja f : B

1

→ B

2

, taka

że

f (x ∪

1

y) = f (x)

2

f (y),

f (x ∩

1

y) = f (x)

2

f (y),

f (

1

x) =

2

f (x)

dla dowolnych x, y ∈ B

1

. Wtedy f nazywamy homomorfizmem. Jeśli

f jest bijekcją, to algebry nazywamy izomorficznymi, a f nazywamy
izomorfizmem.

Przykład. Algebry Boole’a Div(n), gdzie n = p

1

p

2

...p

r

jest iloczynem

różnych liczb pierwszych, oraz P ({1, 2, ..., r}) są izomorficzne. Izomor-
fizm f : Div(n) → P ({1, 2, ..., r}) jest postaci

f (p

i

1

1

p

i

2

2

...p

i

r

r

) = {k ∈ {1, 2, ..., r} : i

k

= 1},

gdzie i

1

, i

2

, ..., i

r

= 0, 1.

background image

88

Kraty. Algebry Boole’a i funkcje booleowskie

4.3

Formuły i funkcje booleowskie

Zaczniemy od indukcyjnej definicji standardowych formuł boole-

owskich zawierających jedynie znaki , oraz .

Definicja 4.8 Standardowymi formułami booleowskimi są

(i) zmienne x

1

, x

2

, ..., x

n

, ...,

(ii) stałe

0, 1,

(iii) jeśli w

1

i w

2

są standardowymi formułami booleowskimi, to są

nimi także (w

1

∪ w

2

), (w

1

∩ w

2

) oraz −w

1

.

Umowa notacyjna. Jak poprzednio przyjmiemy, że znak wiąże
silniej niż , a ten silniej niż . W dalszym ciągu znak często będzie
pomijany.

W praktyce często zamiast używać symboli x

1

, x

2

, ..., x

n

, stosuje

się znaki x, y, x, t, ....

Definicja 4.9 Zbiór wszystkich standardowych formuł booleowskich
będziemy oznaczać symbolem

W, a zbiór wszystkich formuł booleowskich

n-zmiennych oznaczać będziemy symbolem

W(n), n ­ 2.

Przykład. Wyrażeniami booleowskimi są na przykład

x ∩ y ∪ z ∩ (−x) (−t)

oraz

(xyz ∪ (−x)(−y)z)xy.

Pierwsze z tych wyrażeń jest formułą, która zależy od czterech zmien-
nych, a drugie - od trzech zmiennych. Można jednak spojrzeć na te
wyrażenia jako na zależne od większej liczby zmiennych, które jednak
explicite nie występują.

Definicja 4.10 Dwie formuły tej samej liczby zmiennych nazywamy
równoważnymi, jeśli dla dowolnego układu zer i jedności przyjmują one
zawsze te same wartości.

background image

Formuły i funkcje booleowskie

89

Przykład

(i) Wyrażenia

w

1

= (xy ∪ xy(−z))z

oraz

w

2

= xyz

są sobie równoważne ponieważ z(−z) =

0.

(ii) Także równoważne są wyrażenia

w

1

= ((−x

1

)(−x

2

)...(−x

n

))

oraz

w

2

= x

1

∪ x

2

∪ ... ∪ x

n

.

Równoważność formuł może być wykazana poprzez zastosowanie

odpowiednich przekształceń formuł booleowskich. Można także zasto-
sować, znaną z logiki, metodę tabelkową.

Przykład. Wykażemy, stosując metodę tabelkową, równoważność wy-
rażeń w

1

i w

2

z punktu (i) poprzedniego przykładu.

x

y

z

xy

xy(−z)

xy ∪ xy(−z)

w

1

w

2

0 0 0 0

0

0

0

0

0 0 1 0

0

0

0

0

0 1 0 0

0

0

0

0

0 1 1 0

0

0

0

0

1 0 0 0

0

0

0

0

1 0 1 0

0

0

0

0

1 1 0 1

1

1

0

0

1 1 1 1

0

1

1

1

Definicja 4.11 O wyrażeniu w ∈

W(n) będziemy mówić, że ma postać

normalną sumacyjno-iloczynową, jeżeli jest sumą booleowską tzw. ilo-
czynów minimalnych, tzn. wyrażeń postaci

x


1

x


2

...x


n

,

gdzie x


i

= x

i

lub x


i

= −x

i

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

background image

90

Kraty. Algebry Boole’a i funkcje booleowskie

Przykład

(i) Wyrażenie

w = xy(−z) (−x)(−y)x ∪ (−x)yz

ma postać normalną sumacyjno-iloczynową przy przyjęciu zało-
żenia, że w ∈

W(3). Gdyby w ∈ W(4) i czwartą zmienną było t,

należałoby wyrażenie w poddać przekształceniom

w = w ∩

1 = w ∩ (t ∪ −t) = [xy(−z) (−x)(−y)z ∪ (−x)yz]

(t ∪ −t) = xy(−z)t ∪ (−x)(−y)zt ∪ (−x)yzt∪

∪xy(−z)(−t) (−x)(−y)z(−t) (−x)yz(−t).

(ii) Wyrażenie w ∈

W(3)

w = xy ∪ z

nie ma żądanej postaci. Należy je poddać następującym prze-
kształceniom

xy ∪ z = xy(z ∪ −z) ∪ z(x ∪ −x)(y ∪ −y) = xyz ∪ xy(−z)

∪xyz ∪ x(−y)z ∪ (−x)yz ∪ (−x)(−y)z =

= xyz ∪ xy(−z) ∪ x(−y)z ∪ (−x)yz ∪ (−x)(−y)z.

Jak widać, każde wyrażenie booleowskie jest związane z pewną

funkcją, która układom zer i jedności przyporządkowuje zero lub jeden.

Definicja 4.12 Funkcją booleowską n-argumentową nazywamy każdą
funkcję

f :

B

n

B.

Uwaga. Równoważne sobie formuły booleowskie tej samej liczby argu-
mentów generują tę samą funkcję booleowską. Opisując jej działanie,
można posłużyć się jednym z tychże wyrażeń lub tabelą.

Przykład. Weźmy pod uwagę funkcję booleowską f :

B

3

B, która

dana jest tabelką

background image

Formuły i funkcje booleowskie

91

x

y

z

f (x, y, z)

0 0 0

0

0 0 1

0

0 1 0

1

0 1 1

0

1 0 0

1

1 0 1

1

1 1 0

0

1 1 1

0

Nietrudno zauważyć, że wartości funkcji opisuje wyrażenie

(−x)y(−z) ∪ x(−y)(−z) ∪ x(−y)z,

będące sumą iloczynów minimalnych odpowiadających tym wierszom
powyższej tabelki, dla których f (x, y, z) =

1.

Wartości funkcji booleowskich mogą być też określane przy użyciu

znaków różnych od , czy .

Przykład

(i) Niech dana będzie funkcja f :

B

3

B określona wzorem

f (x, y, z) = x + y + z,

gdzie znak + oznacza dodawanie modulo dwa. Funkcji tej odpo-
wiada tabela.

x

y

z

x + y + z

0 0 0

0

0 0 1

1

0 1 0

1

0 1 1

0

1 0 0

1

1 0 1

0

1 1 0

0

1 1 1

1

Biorąc pod uwagę iloczyny minimalne, dla których x + y + z =

1,

otrzymujemy

x + y + z = (−x)(−y)z ∪ (−x)y(−z) ∪ x(−y)(−z) ∪ xyz.

background image

92

Kraty. Algebry Boole’a i funkcje booleowskie

(ii) W rozdziale 1 tej książki rozpatrywana była funkcja

:

B

2

B,

dana tabelką

x

y

x → y

0 0

1

0 1

1

1 0

0

1 1

1

Oczywiście

x → y = (−x)(−y) (−x)y ∪ xy.

Nietrudno zauważyć, że

x → y = −x ∪ y

oraz

x → y = (x ∩ −y).

(iii) Weźmy pod uwagę funkcję

| :

B

2

B,

określoną tabelką

x

y

x|y

0 0

1

0 1

1

1 0

1

1 1

0

Funkcja ta odpowiada logicznemu funktorowi nazywanemu „kre-
ską” Scheffera i może być nazwana funkcją Scheffera.
Zachodzą równości

x|y = (−x)(−y) (−x)y ∪ x(−y)

oraz

x|y = (x ∩ y)

i

x|y = −x ∪ −y.

background image

Formuły i funkcje booleowskie

93

Jak zatem widać, obok standardowych symboli booleowskich, ta-

kich jak , , , można też użyć innych symboli, na przykład +,
czy |. Przy zastosowaniu znaków , , można zdefiniować wszyst-
kie inne funkcje booleowskie. Powstaje pytanie: jakie układy symboli,
czy ogólniej, funkcji booleowskich wystarczą do zdefiniowania funkcji
pozostałych.

W dalszej części tego podrozdziału przedstawimy twierdzenie, któ-

re odpowiada na to pytanie. Wypowiedź twierdzenia poprzedzimy kil-
koma definicjami (por. [12, s. 18-31]).

Definicja 4.13 Funkcję f

:

B

n

B nazywamy dualną do funkcji

f :

B

n

B, jeżeli

f

(x

1

, x

2

, ..., x

n

) = −f (−x

1

, −x

2

, ..., −x

n

).

Przykład

(i) Funkcją dualną do x 7→ x jest ta sama funkcja.

(ii) Funkcja (x

1

, x

2

) 7→ x

1

∩ x

2

jest dualna do funkcji (x

1

, x

2

) 7→

x

1

∪ x

2

i vice versa, funkcja druga jest dualna do pierwszej.

Twierdzenie 4.11 Dla dowolnej funkcji f :

B

n

B

(f

)

= f.

Dowód twierdzenia jest oczywisty.

Definicja 4.14 Dla dowolnego zbioru F skończenie argumentowych
funkcji booleowskich domknięciem
[F ] nazywamy zbiór wszystkich funk-
cji otrzymanych z funkcji należących do F za pomocą operacji super-
pozycji.

Jak łatwo widać, zachodzą zależności

Twierdzenie 4.12 Dla dowolnego zbioru F funkcji booleowskich

(i) F ⊂ [F ],

(ii) [[F ]] = [F ],

background image

94

Kraty. Algebry Boole’a i funkcje booleowskie

(iii) jeśli F

1

⊂ F

2

, to [F

1

] [F

2

].

Definicja 4.15 Zbiór funkcji booleowskich F nazywać będziemy do-
mkniętym funkcyjnie, jeśli

[F ] = F.

Definicja 4.16 Zbiór wszystkich funkcji booleowskich f skończenie ar-
gumentowych, dla których

f (

0, 0, ..., 0) = 0

oznaczać będziemy symbolem T

0

.

Symbolem T

1

oznaczać będziemy skończenie argumentowe funkcje

booleowskie, dla których

f (

1, 1, ..., 1) = 1.

Symbolem S oznaczane będą skończenie argumentowe funkcje bo-

oleowskie spełniające zależności

f

= f,

tzn. funkcje samodualne.

Symbolem M oznaczać będziemy skończenie argumentowe funkcje

booleowskie monotoniczne, tzn. takie, dla których

f (x

1

, x

2

, ..., x

n

) ¬ f (y

1

, y

2

, ..., y

n

),

jeśli x

i

¬ y

i

, i = 1, 2, ..., n, n ∈

N.

Symbolem L oznaczać będziemy skończenie argumentowe funkcje

booleowskie liniowe, tzn. funkcje otrzymane za pomocą operacji super-
pozycji z funkcji stałych

0, 1 oraz funkcji x 7→ x, x 7→ −x, (x

1

, x

2

) 7→

x

1

+ x

2

.

Wszystkie funkcje ze zbiorów T

0

, T

1

, S, M i L są funkcyjnie do-

mknięte, a ponadto zachodzi następujące

Twierdzenie 4.13 Niech dany będzie zbiór F skończenie argumen-
towych funkcji booleowskich. Każda skończenie argumentowa funkcja
booleowska może być przedstawiona jako superpozycja funkcji ze zbioru
F wtedy i tylko wtedy, gdy F nie jest zawarty w żadnym ze zbiorów T

0

,

T

1

, S, M , L.

background image

Formuły i funkcje booleowskie

95

Uwaga. Powyższe twierdzenie nazywane jest niekiedy twierdzeniem
o funkcyjnej zupełności, a zbiór F spełniający założenia tego twierdze-
nia nazywany jest funkcyjnie zupełnym.

Przykład. Funkcyjnie zupełnymi są zbiory

(i) {∪, ∩, −},

(ii) {∪, −},

(iii) {→, −},

(iv) {|},

(v) {

0, 1, ∩, (x, y, z) 7→ x + y + z} (por. [12, s. 31]).

background image
background image

5

Zbiory skończone i metody zliczania

elementów tych zbiorów

5.1

Wprowadzenie do metod kombinato-
rycznych

Kombinatoryka to dział matematyki, który zajmuje się zlicza-

niem liczby elementów zbiorów skończonych. Według ujęcia tradycyj-
nego, mamy do czynienia z losowaniem elementów z pewnego zbioru
n-elementowego P = {x

1

, x

2

, ..., x

n

}, nazywanego niekiedy populacją,

do multizbioru k-elementowego A = {x

i

1

, x

i

2

, ..., x

i

k

}, gdzie x

i

j

∈ P ,

j = 1, 2, ..., k, nazywanego próbą.

Odnotujmy, że przez multizbiór rozumiemy „zbiór”, którego ele-

menty mogą się powtarzać. Ścisłej definicji pojęcia multizbioru nie bę-
dziemy tutaj wprowadzać, mimo że nie jest ona skomplikowana, a opie-
ra się na „zwykłym” pojęciu zbioru.

Pytanie, na które odpowiada kombinatoryka, brzmi: ile multizbio-

rów k-elementowych A można otrzymać, nakładając przy tym pewne
założenia na strukturę owych zbiorów? W przypadku zliczania multi-
zbiorów A bierzemy pod uwagę przede wszystkim dwie kwestie:

background image

98

Zbiory skończone i metody zliczania ...

a) czy elementy multizbioru A powtarzają się (inaczej mówiąc, czy

losowanie elementów ze zbioru P do multizbioru A odbywa się
ze zwracaniem, czy też bez zwracania);

b) czy A jest liniowo uporządkowany, czy nie.

Definicja 5.1 Każdy multizbiór A, który jest liniowo uporządkowany
nazywamy wariacją z n elementów po k elementów.

Multizbiór A, w którym nie jest określona relacja porządku, nazy-

wamy kombinacją z n elementów po k elementów.

Definicja 5.2 Wariacje lub kombinacje otrzymane w wyniku losowa-
nia bezzwrotnego, tzn. takie, których elementy się nie powtarzają, nazy-
wamy wariacjami, lub odpowiednio kombinacjami, bez powtórzeń.
W przeciwnym przypadku, mówimy o wariacjach lub kombinacjach
z powtórzeniami.

Definicja 5.3 Liczbę wariacji bez powtórzeń z n elementów po k ele-
mentów oznaczamy symbolem V

k

n

.

Liczbę wariacji z powtórzeniami z n elementów po k elementów

oznaczamy symbolem V

k
n

.

Z kolei liczbę kombinacji bez powtórzeń z n elementów po k ele-

mentów oznaczamy symbolem C

k

n

.

Liczbę kombinacji z powtórzeniami z n elementów po k elementów

oznaczamy symbolem

C

k
n

.

W ramach kursu matematyki obowiązującego w szkole średniej wy-

kazuje się (my to uczynimy w sposób ścisły w następnym podrozdziale),
że

V

k

n

=

n!

(n − k)!

,

V

k
n

= n

k

,

C

k

n

=

n

k

!

,

C

k
n

=

n + k − 1

k

!

,

background image

Wprowadzenie do metod kombinatorycznych

99

gdzie przyjmujemy

n

k

!

=

n!

k!(n − k)!

.

Ostatnie wyrażenie to tzw. symbol Newtona; w rzeczywistości sym-

bol ten pochodzi od Leonarda Eulera.

Szczególnym rodzajem wariacji są permutacje.

Definicja 5.4 Permutacją n-elementową bez powtórzeń nazywamy wa-
riacje bez powtórzeń z n elementów po n elementów.

Definicja 5.5 Liczbę permutacji n-elementowych bez powtórzeń ozna-
czamy symbolem P

n

.

Z powyższych definicji wynika natychmiast, że

P

n

= V

n

n

=

n!

0!

= n!

Definicja 5.6 Permutacją n-elementową, w której jeden element wy-
stępuje n

1

razy, drugi element n

2

razy, ..., k-ty element n

k

razy, gdzie

n

1

+ n

2

+ ... + n

k

¬ n, a pozostałe elementy nie powtarzają się, nazy-

wamy wariacją z powtórzeniami o powyższych własnościach.

Definicja 5.7 Liczbę n-elementowych permutacji zdefiniowanych wy-
żej oznaczamy symbolem

P

n

1

,n

2

,...,n

k

n

.

Nietrudno wykazać, że

P

n

1

,n

2

,...,n

k

n

=

n!

n

1

!n

2

!...n

k

!

.

Rzeczywiście, jeśli jeden z elementów powtarza się n

1

razy, to permu-

tując ze sobą n

1

egzemplarzy tego samego elementu, otrzymujemy n

1

!

permutacji nie różniących się między sobą. Podobnie jest w przypad-
ku pozostałych powtarzających się elementów. Tak więc, aby uzyskać
P

n

1

,n

2

,...,n

k

n

, należy P

n

podzielić przez n

1

!, n

2

!, itd.

background image

100

Zbiory skończone i metody zliczania ...

Przykład

(i) Winda, w której znajduje się pięciu pasażerów, może się zatrzy-

mać na 10-u kondygnacjach. Na ile sposobów może wysiąść tych
pięciu pasażerów?
Każdemu z pasażerów możemy przyporządkować numer kondy-
gnacji, na której wysiada. Tworzymy w ten sposób ciągi pię-
cioelementowe, w których występują liczby 1, 2, 3, 4, 5, 6, 7,
8, 9, 10. Ponieważ pasażerowie mogą wysiadać na tych samych
piętrach, więc liczby wyrażające numery kondygnacji mogą się
powtarzać w pięcioelementowym ciągu. Poszukiwana przez nas
liczba sposobów opuszczenia windy przez pasażerów jest równa
liczbie wariacji z powtórzeniami ze zbioru 10-elementowego po 5,
tzn.

L = V

5
10

= 10

5

.

(ii) Prostokąt podzielono na mniejsze prostokąty czterema poziomy-

mi i sześcioma pionowymi prostymi poprowadzonymi w równych
odległościach. Iloma sposobami można dojść od jednego wierz-
chołka prostokąta do przeciwległego mu, posuwając się tak, aby
suma odcinków przebytych była równa sumie dwóch przyległych
boków prostokąta?

D

C

A

B

Rozpatrujemy wszystkie możliwe drogi z A do C, których dłu-
gość jest równa sumie długości dwóch przyległych boków pro-
stokąta (np. AB i AD). Każda droga może być jednoznacznie
reprezentowana przez ciąg kresek poziomych i pionowych. Droga
zaznaczona na rysunku jest reprezentowana przez układ

|| − | − − − || − −−

background image

Wprowadzenie do metod kombinatorycznych

101

Każda droga jest ciągiem 12-u kresek, w tym 5-u pionowych
i 7-u poziomych. Oczywiście, kolejności kresek mogą być dowol-
ne. Mamy zatem do czynienia w tym przypadku z permutacją
z powtórzeniami 12-u elementów, z których jeden powtarza się
5 razy, a drugi 7 razy.

L = P

5,7

12

=

12!

5! · 7!

.

(iii) Na płaszczyźnie danych jest 12 punktów, z których dokładnie 6

leży na jednej prostej; z pozostałych żadne 3 nie leżą na jednej
prostej i żadne 2 z tych pozostałych i żadne z tych 6 nie leżą
na jednej prostej. Należy znaleźć liczbę trójkątów, jakie można
otrzymać, łącząc punkty po 3?
Każdy trójkąt jest wyznaczony przez swoje wierzchołki, przy
czym obojętne jest w jakiej kolejności te wierzchołki są wymie-
niane. Wierzchołki, rzecz jasna, nie mogą się powtarzać.
Trójkąty otrzymujemy na trzy sposoby:

a) łączymy dowolny z 6 punktów leżących na prostej z dowolnie

wybranymi 2 punktami spośród 6 pozostałych punktów,

b) łączymy dowolny z 6 punktów spośród tych, które nie leżą

na prostej, z 2 dowolnie wybranymi ze zbioru 6 punktów
leżących na prostej,

c) spośród 6 punktów nieleżących na prostej wybieramy 3.

Zatem liczba trójkątów jest równa

6 · C

2

6

+ 6 · C

2

6

+ C

3

6

.

(iv) Ile jest parzystych liczb trzycyfrowych, w których cyfry nie po-

wtarzają się (zakładamy, że zero nie występuje na początku)?
Najpierw bierzemy pod uwagę wszystkie możliwości utworzenia
„liczb” trzycyfrowych parzystych, w których cyfry nie powtarzają
się i zero może występować na początku. „Liczb” takich jest

5 · V

2

9

= 5 · 9 · 8 = 360.

Istotnie: cyfr, które zapisane na końcu liczby „sprawiają”, że jest
ona parzysta, mamy pięć: 0, 2, 4, 6, 8.

background image

102

Zbiory skończone i metody zliczania ...

V

2

5

5

Jeśli wybierzemy jedną z tych pięciu cyfr, pozostanie nam 9 cyfr.
Z tych dziewięciu wybieramy następnie dwie różne cyfry na V

2

9

sposobów. Stosujemy wariacje, ponieważ porządek rozmieszcze-
nia cyfr jest ważny.

0

V

1

8

4

W następnym kroku musimy od 360 odjąć ilość tych „liczb”,
w których zero występuje na początku. Tych „liczb” jest 4 · V

1

8

.

Ostatecznie liczb spełniających warunki zadania mamy

5 · V

2

9

4 · V

1

8

= 360 32 = 328.

(v) W kwiaciarni jest pięć gatunków róż: białe, czerwone, różowe,

żółte i pomarańczowe. Ile bukietów złożonych z pięciu róż można
utworzyć, przyjmując, że w bukiecie kolory kwiatów mogą się
powtarzać?
Bukiet jest zbiorem nieuporządkowanym. Mamy tu zatem do
czynienia z kombinacjami z powtórzeniami złożonymi z pięciu
elementów, które wylosowane zostały w sposób zwrotny ze zbio-
ru pięcioelementowego. Dlatego liczba wszystkich bukietów jest
równa

C

5
5

=

5 + 5 1

5

!

=

9

5

!

=

9!

5!4!

=

6 · 7 · 8 · 9

1 · 2 · 3 · 4

= 2 · 7 · 9 = 126.

5.2

Formalne ujęcie podstaw
kombinatoryki

W poprzednim rozdziale podana została definicja zbioru skoń-

czonego. Zdefiniujemy teraz pojęcie liczebności albo, inaczej mówiąc,
liczby elementów takiego zbioru.

background image

Formalne ujęcie podstaw kombinatoryki

103

Definicja 5.8 Niech A będzie zbiorem skończonym i niepustym oraz
niech

f : A → {1, 2, ..., n}

będzie bijekcją przekształcającą A na zbiór pierwszych n liczb natural-
nych dodatnich. Wtedy liczbę n nazywamy liczebnością zbioru A i pi-
szemy

n = card (A).

Jeśli A = ∅, to przyjmujemy card (A) = 0.

Twierdzenie 5.1 Dla dowolnych rozłącznych zbiorów skończonych A
i B zachodzi równość

card (A ∪ B) = card (A) + card (B).

Dowód. Niech f

1

: A → {1, 2, ..., n} oraz f

2

: B → {1, 2, ..., m} będą

bijekcjami. Wtedy bijekcją jest odwzorowanie g : A ∪ B → {1, 2, ...,
n
+ m}, takie że

g(x) =

(

f

1

(x)

dla x ∈ A,

f

2

(x) + n dla x ∈ B.

2

Wniosek. Dla dowolnych, skończonych, parami rozłącznych zbiorów

A

1

, A

2

, ..., A

k

card (A

1

∪ A

2

∪ .... ∪ A

k

) = card (A

1

) + card (A

2

) + ... + card (A

k

).

Dowód wniosku jest natychmiastowy. Należy wykorzystać tezę

poprzedniego twierdzenia i indukcję.

Uwaga. Powyższy wniosek nazywany jest niekiedy podstawową albo
fundamentalną zasadą zliczania.

Twierdzenie 5.2 Dla dowolnych skończonych zbiorów A i B zachodzi
równość

card (A × B) = card (A) · card (B).

Dowód. Niech A = {x

1

, x

2

, ..., x

n

} i B = {y

1

, y

2

, ..., y

m

}. Oczywiście

card (A) = n, card (B) = m. W celu wykazania tezy twierdzenia za-
stosujemy indukcję względem m.

background image

104

Zbiory skończone i metody zliczania ...

Dla m = 1

A × B = {(x

1

, y

1

), (x

2

, y

1

), ..., (x

n

, y

1

)}

oraz

card (A × B) = n = n · 1 = card (A) · card (B).

Załóżmy, że teza twierdzenia zachodzi dla pewnego m. Wtedy dla

zbioru m + 1-elementowego B = {y

1

, y

2

, ..., y

m+1

} zachodzi równość

A × B = A × B

1

∪ A × B

2

,

gdzie B

1

= {y

1

, y

2

, ..., y

m

}, B

2

= {y

m+1

}. Ponieważ zbiory A × B

1

i A × B

2

są rozłączne, więc w oparciu o podstawową zasadę zliczania

card (A × B) = card (A × B

1

) + card (A × B

2

) = n · m + n =

= n(m + 1) = card (A) · card (B).

Jeśli jeden ze zbiorów A lub B jest pusty, teza twierdzenia także za-
chodzi.

2

Twierdzenie 5.3 Dla dowolnych zbiorów skończonych A

1

, A

2

, ..., A

k

ma miejsce równość

card (A

1

× A

2

× ... × A

k

) = card (A

1

) · card (A

2

) · ... · card (A

k

).

Łatwy dowód tego twierdzenia (należy posłużyć się indukcją) po-

zostawiamy Czytelnikowi.

Twierdzenie 5.4 Dla dowolnego skończonego zbioru A

card (P(A)) = 2

card (A)

.

Dowód. Jeśli A = , to

card (P(A)) = 1 = 2

0

= 2

card (A)

.

Jeżeli A = {x

1

}, to

P(A) = {∅, A},

background image

Formalne ujęcie podstaw kombinatoryki

105

czyli

card (P(A)) = 2 = 2

1

= 2

card (A)

.

Załóżmy, że teza twierdzenia zachodzi dla dowolnego zbioru n-ele-

mentowego. Niech A = {x

1

, x

2

, ..., x

n

, x

n+1

}. Wtedy

P(A) = P({x

1

, x

2

, ..., x

n

}) ∪ B,

gdzie B jest rodziną podzbiorów zbioru A, taką że

B ∈ B ⇔ B = A

1

∪ {x

n+1

} ∧ A

1

∈ P({x

1

, x

2

, ..., x

n

}).

Obie rodziny zbiorów: P({x

1

, x

2

, ..., x

n

}) i B mają tyle samo elemen-

tów, a mianowicie 2

n

. Ostatecznie

card (P(A)) = 2

n

+ 2

n

= 2

n+1

.

Twierdzenie zostało udowodnione.

2

W dalszej kolejności podamy kilka twierdzeń odnoszących się do

zbiorów funkcji (por. [9, s. 40n]). Przypomnijmy, że w jednym z wcze-
śniejszych

rozdziałów

wprowadziliśmy

oznaczenia

B

A

,

ini(B

A

),

sur(B

A

) oraz bij(B

A

) dla zbiorów wszystkich funkcji odwzorowują-

cych A w B, wszystkich iniekcji ze zbioru A w zbiór B, wszystkich
suriekcji ze zbioru A na B oraz wszystkich bijekcji ze zbioru A na
zbiór B. W tym podrozdziale obliczymy card (B

A

), card (ini(B

A

)),

card (bij(B

A

)) dla zbiorów skończonych A oraz B. Rachunki dotyczące

card (sur(B

A

)) są bardziej skomplikowane i zostaną wykonane w na-

stępnym podrozdziale.

Twierdzenie 5.5 Dla dowolnych niepustych i skończonych zbiorów A
i B zachodzi równość

card (B

A

) = card (B)

card (A)

.

Dowód. Wykorzystamy indukcję względem liczby elementów zbioru
A. Niech A = {x

1

} oraz B = {y

1

, y

2

, ..., y

m

}. Wtedy istnieje dokładnie

m funkcji odwzorowujących A w B, czyli równość zawarta w tezie
twierdzenia jest spełniona.

background image

106

Zbiory skończone i metody zliczania ...

Załóżmy, że równość ta zachodzi dla dowolnego n-elementowego

zbioru i przyjmijmy, że A = {x

1

, x

2

, ..., x

n+1

}. Wtedy

A = A

1

∪ {x

n+1

},

gdzie A

1

= {x

1

, x

2

, ..., x

n

}.

Każdej funkcji należącej do B

A

1

odpowiada m funkcji odwzorowu-

jących {x

n+1

} w B. Zatem

card (B

A

) = card (B

A

1

) · card (B) = card (B)

card (A

1

)

· card (B) =

= card (B)

card (A

1

)+1

= card (B)

card (A)

.

Twierdzenie zostało wykazane.

2

Twierdzenie 5.6 Niech A i B będą niepustymi zbiorami skończony-
mi, takimi że
card (A) ¬ card (B). Wtedy

card (ini(B

A

)) =

card (B)!

(card (B) card (A))!

.

Dowód. Zastosujemy indukcję względem liczby elementów zbioru B.
Jeżeli card (B) = 1, to card (A) = 1 i równość zawarta w tezie twier-
dzenia zachodzi.

Załóżmy, że jest ona prawdziwa dla dowolnego n-elementowego

zbioru B i dla dowolnego zbioru A o liczbie elementów nie większej
niż n.

Przyjmijmy, że B = {y

1

, y

2

, ..., y

n+1

}. Załóżmy też, że A = {x

1

, x

2

,

..., x

k

}, gdzie k ¬ n + 1. W takim przypadku

ini(B

A

) =

n+1

[

i=1

C

i

,

gdzie

C

i

= {f ∈ ini(B

A

) : f (x

k

) = y

i

},

i = 1, 2, ..., k + 1.

Oczywiście

C

i

∩ C

j

= ∅,

jeśli

i 6= j.

background image

Formalne ujęcie podstaw kombinatoryki

107

W przypadku, gdy A = {x

1

} zachodzi równość

card



ini(B

A

)



= n + 1 =

(n + 1)!

n!

=

card (B)!

(card (B) card (A))!

.

Przyjmijmy, że card (A) ­ 2.

Zauważmy, że każdy ze zbiorów C

i

zawiera jako swoje elemen-

ty funkcje, którym w sposób wzajemnie jednoznaczny odpowiadają
wszystkie iniekcje ze zbioru {x

1

, x

2

, ..., x

k−1

} w zbiór {y

1

, y

2

, ..., y

n+1

} \

{y

i

}. Takich iniekcji jest

n!

(n − k + 1)!

,

a zatem, korzystając z podstawowej zasady zliczania, otrzymujemy

card (ini(B

A

)) = (n + 1)

n!

(n − k + 1)!

=

card (B)!

(card (B) card (A))!

,

co kończy dowód twierdzenia.

2

Ostatnie dwa twierdzenia są przydatne do zliczania wariacji z po-

wtórzeniami i wariacji bez powtórzeń. Zauważmy bowiem, że każdy
wybór uporządkowany z populacji P dla próby A można zinterpreto-
wać jako funkcję

f : {1, 2, ..., k} → {x

1

, x

2

, ..., x

n

},

gdzie {x

1

, x

2

, ..., x

n

} = P , natomiast A = {f (i) : i = 1, 2, ..., k}.

Dlatego też liczbę wariacji z powtórzeniami ze zbioru n-elementowego

(tutaj: P ) po k elementów wyznaczamy poprzez zliczenie wszystkich
funkcji f określonych powyższą zależnością. Wzór

V

k
n

= n

k

jest więc konsekwencją zależności

card (B

A

) = card (B)

card (A)

.

background image

108

Zbiory skończone i metody zliczania ...

Podobnie, rozważając wariacje bez powtórzeń, odwołujemy się do

iniekcji ze zbioru {1, 2, ..., k} w zbiór P (zakładamy, że k ¬ n. A zatem
wzór

V

k

n

=

n!

(n − k)!

wynika z zależności

card



ini(B

A

)



=

card (B)!

(card (B) card (A))!

.

Jak widać, pojęcie wariacji w prosty i elegancki sposób można spro-

wadzić do pojęcia funkcji o odpowiednich własnościach. W jaki sposób
poradzić sobie z pojęciem kombinacji? Należy „utożsamić” ze sobą
funkcje przyjmujące te same wartości (wraz z ewentualnymi krotno-
ściami), jednak niekoniecznie w tej samej „kolejności”. Bardziej ściśle
można to ująć w poniższy sposób.

W zbiorze wszystkich funkcji odwzorowujących {1, 2, ..., k} w {x

1

,

x

2

, ..., x

n

} wprowadzamy relację ε następująco

f εg ⇔ f (i) = g(σ(i))

dla i = 1, 2, ..., k oraz pewnej permutacji σ : {1, 2, ..., k} → {1, 2, ..., k}
(por. [9, s. 52]).

Twierdzenie 5.7 Relacja ε jest relacją równoważności.

Dowód. Relacja ta jest zwrotna, bowiem dla permutacji ι(i) = i,
i = 1, 2, ..., k, zachodzi równość

f (i) = f (ι(i)).

Relacja ta jest symetryczna, gdyż jeśli

f (i) = g(σ(i)),

i = 1, 2, ..., k,

to

g(i) = f (σ

1

(i)),

i = 1, 2, ..., k.

Relacja ε jest przechodnia, bo jeśli

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

oraz

g(i) = h(τ (i)),

i = 1, 2, ..., k,

background image

Formalne ujęcie podstaw kombinatoryki

109

to

f (i) = h(τ (σ(i))),

i = 1, 2, ..., k.

Tak więc, zliczając - dla ustalenia uwagi - kombinacje bez powtó-

rzeń, zliczamy faktycznie klasy abstrakcji relacji ε, czyli elementy zbio-
ru ilorazowego ini(P

{1,2,...,k}

)lub, jeśli zastosujemy uprzednią sym-

bolikę, ini(B

A

)/ε.

2

Twierdzenie 5.8 Niech dany będzie zbiór funkcji B

A

, gdzie card (A)

= card (B). Wtedy zbiór ini(B

A

)/ε ma

card (B)

card (A)!(card (B) card (A))!

.

Dowód. Dowód twierdzenia jest natychmiastowy, a wynika stąd, iż
każda klasa abstrakcji ma card (A)! elementów.

2

Z powyższego twierdzenia otrzymujemy znany wzór na liczbę kom-

binacji bez powtórzeń

C

k

n

=

n!

k!(n − k)!

,

gdzie n jest liczebnością populacji, a k jest liczebnością próby.

Wniosek. Niech dany będzie dowolny zbiór n-elementowy. Zbiór ten
ma

n!

k!(n − k)!

podzbiorów k-elementowych, gdzie k ¬ n.

Powyższy wynik ma pewne ważne zastosowanie.

Definicja 5.9 Załóżmy, że A i B są niepustymi zbiorami uporządko-
wanymi liniowo. Funkcję f
: A → B nazywamy rosnącą (malejącą),
jeśli

^

x

a

,x

b

∈A

x

a

≺ x

b

⇒ f (x

a

) ≺ f (x

b

),

background image

110

Zbiory skończone i metody zliczania ...

^

x

a

,x

b

∈A

x

a

≺ x

b

⇒ f (x

a

)  f (x

b

)

,

gdzie tym samym symbolem  oznaczone zostały relacje liniowego po-
rządku w zbiorach A i B.

Podobnie, f nazywamy nierosnącą (niemalejącą), jeśli

^

x

a

,x

b

∈A

x

a

≺ x

b

⇒ f (x

a

)  f (x

b

),

^

x

a

,x

b

∈A

x

a

≺ x

b

⇒ f (x

a

)  f (x

b

)

.

Jeśli funkcja f jest rosnąca lub malejąca, ewentualnie nierosnąca

lub niemalejąca, nazywamy ją monotoniczną.

Definicja 5.10 Niech A oraz B będą skończonymi zbiorami niepusty-
mi. Wtedy

(i) symbolem inc(B

A

) oznaczmy zbiór wszystkich funkcji rosnących

z A do B,

(ii) symbolem dec(B

A

) oznaczamy zbiór wszystkich funkcji maleją-

cych z A do B,

(iii) symbolem ninc(B

A

) oznaczamy zbiór wszystkich funkcji niero-

snących z A do B,

(iv) symbolem ndec(B

A

) oznaczamy zbiór wszystkich funkcji niema-

lejących z A do B,

(v) symbolem mon(B

A

) oznaczamy zbiór wszystkich funkcji monoto-

nicznych odwzorowujących A w B.

Twierdzenie 5.9 Liczba funkcji rosnących, odwzorowujących niepu-
sty skończony liniowo uporządkowany zbiór A w niepusty skończony
liniowo uporządkowany zbiór B, jest równa

card (inc(B

A

)) =

card (B)!

card (A)!(card (B) card (A))!

.

background image

Współczynniki dwumianowe i wielomianowe

111

Dowód. Powyższa równość wynika stąd, że funkcja rosnąca jest jedno-
znacznie określona poprzez wybór card (A)-elementowych podzbiorów
zbioru card (B)-elementowego.

Obliczenie card (dec(B

A

)) przebiega analogicznie.

2

Nieco trudniej obliczyć card (B

A

). Odpowiedni rezultat zawarty

jest w poniższym twierdzeniu, które podajemy bez dowodu.

Twierdzenie 5.10 Dla dowolnych skończonych zbiorów niepustych A
i B oraz dla relacji ε określonej jak wyżej, zachodzi równość

card (B

A

) =

(card (B) + card (A) 1)!

card (A)!(card (B) 1)!

.

Powyższa zależność pozwala na otrzymanie wzoru na liczbę kom-

binacji z powtórzeniami z n elementów po k elementów

C

k
n

=

(n + k − 1)!

k!(n − 1)!

.

Podobnie jak kombinacje bez powtórzeń służą do zliczania funkcji

rosnących, kombinacje z powtórzeniami są wykorzystywane do zlicza-
nia funkcji niemalejących.

Twierdzenie 5.11 Jeśli A i B są niepustymi zbiorami skończonymi
liniowo uporządkowanymi, to

card (ndec(B

A

)) =

(card (B) + card (A) 1)!

card (A)!(card (B) 1)!

.

Analogicznie obliczamy card (ninc(B

A

)).

5.3

Współczynniki dwumianowe
i wielomianowe

Zacznijmy od definicji

Definicja 5.11 Niech k, n ∈

N. Współczynnikiem dwumianowym na-

zywamy liczbę

background image

112

Zbiory skończone i metody zliczania ...

n

k

!

=

n!

k!(n − k)!

,

gdy

n ­ k,

oraz

n

k

!

= 0,

gdy

n < k.

Uwaga. Z powyższego określenia wynika, że C

k

n

=



n
k



oraz

C

k
n

=



n+k−1

k



.

Twierdzenie 5.12 Dla dowolnych n, k ∈

N, k ¬ n, zachodzą równo-

ści

(i)



n
k



=



n

n−k



,

(ii)



n
k



+



n

k+1



=



n+1
k+1



.

Prosty dowód pozostawiamy Czytelnikowi.

Twierdzenie 5.13 Dla dowolnych x, y ∈

R i n ∈ N

+

(x + y)

n

=

n

0

!

x

n

+

n

1

!

x

n−1

y + ... +

n

n

!

y

n

.

Dowód Stosujemy indukcję względem n. Dla n = 1

(x + y)

1

=

1

0

!

x +

1

1

!

y,

a zatem równość zachodzi. Załóżmy, że jest ona spełniona dla n ∈

N.

Wtedy

(x + y)

n+1

= (x + y)

n

(x + y) =

h

n

0



x

n

+



n

1



x

n−1

y + ... +



n
n



y

n

i

·

·(x + y) =



n

0



x

n+1

+



n

1



x

n

y + ... +



n
n



xy

n

+

+



n

0



x

n

y +



n

1



x

n−1

y

2

+ ... +



n
n



y

n+1

=

= x

n+1

+



n

1



+



n

0



x

n

y +



n

2



+



n

1



x

n−1

y

2

+

+... +



n
k



+



n

k−1



x

n−k+1

y

k

+ ... + y

n+1

=

=



n+1

0



x

n+1

+



n+1

1



x

n

y + ... +



n+1

k



x

n+1−k

y

k

+

+... +



n+1
n+1



y

n+1

.

background image

Współczynniki dwumianowe i wielomianowe

113

Wykorzystaliśmy tu zależność

n

k

!

+

n

k − 1

!

=

n + 1

k

!

będącą konsekwencją punktu (ii) poprzedniego twierdzenia.

W ten sposób dowód jest zakończony.

2

Wzór zawarty w tezie twierdzenia nazywany jest wzorem dwumia-

nowym Newtona.

Wniosek. Dla n ∈

N zachodzi równość

n

0

!

+

n

1

!

+ ... +

n

n

!

= 2

n

.

Dowód. Powyższa równość jest konsekwencją poprzedniego twierdze-
nia z x = y = 1.

2

Uwaga. Ostatnią zależność kombinatoryczną można zinterpretować
następująco: liczby



n
k



są równe liczbom podzbiorów k-elementowych

zbioru n-elementowego. Oznacza to, że dowolny zbiór n-elementowy
ma 2

n

podzbiorów. W związku z tym, staje się bardziej zrozumiałe

użycie nazwy „zbiór potęgowy” dla zbioru złożonego ze wszystkich
podzbiorów danego zbioru.

Wniosek. Dla n ∈

N ma miejsce równość

n

0

!

n

1

!

+

n

2

!

+ ... + (1)

n

n

n

!

= 0.

Dowód. Powyższa równość wynika z ostatniego twierdzenia, w którym
należy przyjąć x = 1, y = 1.

2

Obok powyższych równości można dowieść także, stosując różno-

rodne metody kombinatoryczne i analityczne, wiele innych tożsamości.

background image

114

Zbiory skończone i metody zliczania ...

Przykład

(i) Wykazać równość (por. [5, s. 28-29])

n + l

k

!

=

n

0

!

l

k

!

+

n

1

!

l

k − 1

!

+ ... +

n

n

!

l

k − n

!

,

gdzie n ¬ k ¬ l.
Wykorzystamy równości dwumianowe

(1 + x)

n

=

n

0

!

+

n

1

!

x + ... +

n

n

!

x

n

,

(1 + x)

l

=

l

0

!

+

l

1

!

x + ... +

l

l

!

x

l

.

Mamy

(1 + x)

n+l

=



n

0



+



n

1



x + ... +



n
n



x

n



·

·



l

0



+



l

1



x + +... +



l
l



x

l



.

Współczynniki przy x

k

po lewej i prawej stronie powyższej rów-

ności są sobie równe. W ten sposób uzyskujemy żądaną równość.

(ii) Wykazać, że



n

0



n

m



y

m

+



n

1



n−1

m−1



xy

m−1

+



n

2



n−2

m−2



x

2

y

m−2

+

+



n

m



n−m

0



x

m

y

m−n

=



n

m



(x + y)

m

,

gdzie n, m ∈

N, n ­ m.

W celu dowiedzenia powyższej równości zauważmy, że



n

i



n−i

m−i



=

n!

i!(n−i)!

·

(n−i)!

(m−i)!(n−m)!

=

n!

m!(n−m)!

·

m!

i!(m−i)!

=

=



n

m



m

i



,

i = 0, 1, ..., m.

W związku z tym lewa strona równości, którą należy wykazać,
jest równa

n

m

! "

m

0

!

y

m

+

m

1

!

xy

m−1

+ ... +

m

m

!

x

m

#

=

n

m

!

(x + y)

m

.

background image

Współczynniki dwumianowe i wielomianowe

115

Przy okazji zauważmy, że dowodzona równość może być zapisana
z użyciem symbolu

P

w bardziej zwartej postaci

m

X

i=0

n

i

!

n − i

m − i

!

x

i

y

m−i

=

n

m

!

(x + y)

m

.

(iii) Dowiedziemy, iż

n

X

i−1

n

i

!

i = n · 2

n−1

.

Skorzystamy ze wzoru dwumianowego Newtona, zapisanego
w postaci równości

n

X

i=0

n

i

!

x

i

y

n−i

= (x + y)

n

.

Różniczkując powyższą tożsamość względem x, otrzymujemy

n

X

i=1

n

i

!

ix

i−1

y

n−i

= n(x + y)

n−1

.

Podstawiając x = y = 1, otrzymujemy żądaną równość.

Pożytecznym uogólnieniem współczynników dwumianowych są

tzw. współczynniki wielomianowe.

Definicja 5.12 Dla dowolnych n, i

1

, i

2

, ..., i

k

N, takich że k ­ 2 oraz

i

1

+i

2

+...+i

k

= n, współczynnik wielomianowy definiujemy następująco

n

i

1

i

2

...i

k

!

=

n!

i

1

!i

2

!...i

k

!

.

Uwaga. Z powyższej definicji wynika, że

n

i

1

i

2

...i

k

!

= P

i

1

,i

2

,...,i

k

n

.

Innymi słowy, współczynnik wielomianowy jest równy liczbie uporząd-
kowanych wyborów mających tę własność, że jeden element występuje
i

1

razy, drugi i

2

razy, ..., k-ty i

k

razy.

background image

116

Zbiory skończone i metody zliczania ...

Z drugiej strony

n

i

1

i

2

...i

k

!

=

n

i

1

!

n − i

1

i

2

!

...

n − i

1

− i

2

− ... − i

k−1

i

k

!

,

a zatem współczynnik wielomianowy jest też równy liczbie takich wy-
borów, iż i

1

elementów zostaje zaliczonych do pierwszego zbioru, i

2

do

drugiego zbioru, itd.

Twierdzenie 5.14 Zachodzi równość

(x

1

+ x

2

+ ... + x

k

)

n

=

X

i

1

+i

2

+...+i

k

=n

n

i

1

i

2

...i

k

!

x

i

1

1

x

i

2

2

...x

i

k

k

,

gdzie n ∈

N.

Dowód twierdzenia jest podobny do dowodu wzoru Newtna.

Twierdzenie 5.15 Dla n ∈

N oraz i

1

, i

2

, ..., i

k

, takich że i

1

+ i

2

+ ... +

i

k

= n, zachodzi równość

n

i

1

i

2

...i

k

!

=

X

i

l

>0

n − 1

i

1

i

2

...i

l

1...i

k

!

.

Powyższa równość jest uogólnieniem równości

n

i

!

=

n − 1

i − 1

!

+

n − 1

i

!

.

Dowód twierdzenia jest nieskomplikowany, lecz rachunkowy; z tego

względu pomijamy go.

5.4

Zasada włączeń i wyłączeń

Podstawową rolę w kombinatoryce odgrywa tzw. zasada włączeń

i wyłączeń. Pozwala ona w szczególnym przypadku na obliczenie
card (A ∪ B), jeśli znamy card (A), card (B) i card (A ∩ B). Miano-
wicie

card (A ∪ B) = card (A) + card (B) card (A ∩ B).

background image

Zasada włączeń i wyłączeń

117

A

B

W przypadku, gdy dane są trzy zbiory skończone A, B i C, zasada

ta przyjmuje postać równości

card (A ∪ B ∪ C) = card (A) + card (B) + card (C)

card (A ∩ B) card (B ∩ C) card (A ∩ C)+

+card (A ∩ B ∩ C).

A

B

C

W ogólności zasada włączeń i wyłączeń przedstawia się następują-

co:

Twierdzenie 5.16 Niech dane będą zbiory skończone A

1

, A

2

, ..., A

n

.

Wtedy

card



n

S

i=1

A

i



=

n

P

i=1

card (A

i

)

P

1¬i<j¬n

card (A

i

∩ A

j

)+

+

P

1¬i<j<k¬n

card (A

i

∩ A

j

∩ A

k

)+

+... + (1)

n+1

card (A

1

∩ A

2

∩ ... ∩ A

n

)

background image

118

Zbiory skończone i metody zliczania ...

Dowód. Zastosujemy indukcję względem n. Dla n = 2

card (A

1

∪ A

2

) = card (A

1

\ (A

1

∩ A

2

)) + card (A

2

\ (A

1

∩ A

2

))+

+card (A

1

∩ A

2

) = card (A

1

) card (A

1

∩ A

2

)+

+card (A

2

) card (A

1

∩ A

2

) + card (A

1

∩ A

2

) =

card (A

1

) + card (A

2

) card (A

1

∩ A

2

).

Przy przekształceniach wykorzystaliśmy podstawową zasadę zlicza-

nia, bo zbiory A

1

\ (A

1

∩ A

2

), A

2

\ (A

1

∩ A

2

) oraz A

1

∩ A

2

są parami

rozłączne. Ponadto A

1

∩ A

2

⊂ A

1

i A

1

∩ A

2

⊂ A

2

, więc

card (A

i

\ (A

1

∩ A

2

)) = card (A

i

) card (A

1

∩ A

2

),

i = 1, 2.

Załóżmy, że teza twierdzenia zachodzi dla n ∈

N. Wtedy

card



n+1

S

i=1

A

i



= card



n

S

i=1

A

i



+ card (A

n+1

) card

A

n+1

n

S

i=1

A

i

!

=

n

P

i=1

card (A

i

)

P

1¬i<j¬n

card (A

i

∩ A

j

)+

+... + (1)

n+1

card (A

1

∩ A

2

∩ ... ∩ A

n

)+

+card (A

n+1

)

"

n

P

i=1

card (A

i

∩ A

n+1

)

P

1¬i<j¬n

card (A

i

∩ A

j

∩ A

n+1

) + ...+

+(1)

n+1

card (A

1

∩ A

2

∩ ... ∩ A

n+1

)

#

=

=

n+1

P

i=1

card (A

i

)

P

1¬i<j¬n+1

card (A

i

∩ A

j

) + ...+

+(1)

n+1

card (A

1

∩ A

2

∩ ... ∩ A

n+1

).

Dowód twierdzenia jest zakończony.

2

Przykład. W pewnej klasie jest 35 uczniów. Dziesięciu z nich uczy
się języka angielskiego, dwudziestu - języka niemieckiego, piętnastu -

background image

Zasada włączeń i wyłączeń

119

języka francuskiego, ośmiu uczy się angielskiego i niemieckiego, dzie-
więciu - angielskiego i francuskiego, a dziewiętnastu uczy się wszystkich
tych trzech języków. Wiedząc, że każdy z uczniów uczy się co najmniej
jednego języka, należy obliczyć ilu uczniów uczy się niemieckiego i fran-
cuskiego.

W celu rozwiązania zadania wprowadzimy oznaczenia:

A - zbiór uczniów uczących się języka angielskiego,

N - zbiór uczniów uczących się języka niemieckiego,

F - zbiór uczniów uczących się języka francuskiego.

Wtedy card (A)

=

10, card (N )

=

20, card (F )

=

15,

card (A ∩ N ) = 8, card (A ∩ F ) = 9, card (A ∩ N ∩ F ) = 19, a także
card (A ∪ N ∪ F ) = 35.

Zasada włączeń i wyłączeń prowadzi do zależności

card (A ∩ N ∩ F ) = card (A) + card (N ) + card (F )

card (A ∩ N ) card (A ∩ F )

card (N ∩ F ) + card (A ∩ N ∩ F ),

czyli

35 = 10 + 20 + 15 8 9 card (N ∩ F ) + 19.

Zatem

card (N ∩ F ) = 12.

Z zasady włączeń i wyłączeń wynika poniższe twierdzenie

Twierdzenie 5.17 Niech A

1

, A

2

, ..., A

n

, B będą zbiorami skończony-

mi. Jeżeli A

i

⊂ B, i = 1, 2, ..., n, to

card



n

T

i=1

(B \ A

i

)



= card (B)

n

P

i=1

card (A

i

) +

P

1¬i<j¬n

card (A

i

∩A

j

) + ... + (1)

n

card (A

1

∩ A

2

∩ ... ∩ A

n

).

background image

120

Zbiory skończone i metody zliczania ...

W jaki sposób korzysta się z tego twierdzenia, pokazuje następu-

jący przykład.

Przykład. Rozważmy, ile spośród pierwszych 2000 liczb naturalnych
dodatnich nie jest podzielnych ani przez 5, ani przez 7, ani przez 11,
ani też przez 13.

Najpierw wprowadźmy oznaczenia:

B = {1, 2, ..., 2000}

A

1

- zbiór liczb należących do B, które nie są podzielne przez 5,

A

2

- zbiór liczb należących do B, które nie są podzielne przez 7,

A

3

- zbiór liczb należących do B, które nie są podzielne przez 11,

A

4

- zbiór liczb należących do B, które nie są podzielne przez 13.

Zauważmy, że

card (A

1

) = Ent



2000

5



= 400,

card (A

2

) = Ent



2000

7



= 285,

card (A

3

) = Ent



2000

11



= 181,

card (A

4

) = Ent



2000

13



= 153,

card (A

1

∩ A

2

) = Ent



2000

35



= 57,

card (A

1

∩ A

3

) = Ent



2000

55



= 36,

card (A

1

∩ A

4

) = Ent



2000

65



= 30,

card (A

2

∩ A

3

) = Ent



2000

77



= 25,

card (A

2

∩ A

4

) = Ent



2000

91



= 21,

card (A

3

∩ A

4

) = Ent



2000

143



= 13.

Podobnie

card (A

1

∩ A

2

∩ A

3

) = 5,

card (A

1

∩ A

2

∩ A

4

) = 4,

card (A

1

∩ A

3

∩ A

4

) = 2,

card (A

2

∩ A

3

∩ A

4

) = 1,

card (A

1

∩ A

2

∩ A

3

∩ A

4

) = 0.

background image

Zasada szufladkowa Dirichleta

121

Zbiorem liczb, które nie są podzielne przez 5, 7, 11, 13 jest zbiór

4

T

i=1

(B \ A

i

). Zatem

card



4

T

i=1

(B \ A

i

)



= card (B)

4

P

i=1

card (A

i

)+

+

P

1¬i<j¬4

card (A

i

∩ A

j

)

P

1¬i<j<k¬4

card (A

i

∩ A

j

∩ A

k

)+

+card (A

1

∩ A

2

∩ A

3

∩ A

4

),

czyli

card



4

T

i=1

(B \ A

i

)



= 2000 (400 + 285 + 181 + 153) + (57 + 36+

+30 + 25 + 21 + 13) (5 + 4 + 2 + 1) + 0 =

= 2000 1019 + 182 12 = 1151.

Z zasady włączeń i wyłączeń będziemy korzystać w następnym roz-

dziale przy rozwiązywaniu bardziej skomplikowanych problemów kom-
binatorycznych.

5.5

Zasada szufladkowa Dirichleta

Zasada Dirichleta w najbardziej znanej postaci stwierdza, że:

jeżeli w n szufladach rozmieszcza się więcej niż n przedmio-
tów, to istnieje co najmniej jedna szuflada, w której znaj-
duje się więcej niż jeden przedmiot.

Zasadzie tej można nadać bardziej ścisłą postać, formułując twier-

dzenie:

Twierdzenie 5.18 Niech A będzie zbiorem skończonym. Jeżeli zbiory
A

i

, i = 1, 2, ..., k, stanowią podział A, przy czym card (A) > k, to

istnieje i

0

∈ {1, 2, ..., k}, takie że card (A

i

0

) > 1.

background image

122

Zbiory skończone i metody zliczania ...

Dowód twierdzenia, jako oczywisty, pomijamy. Ostatni wynik moż-

na uogólnić; zachodzi mianowicie

Twierdzenie 5.19 Jeśli A jest zbiorem skończonym, a zbiory A

i

,

i = 1, 2, ..., k, stanowią jego podział, taki że dla pewnej liczby p ∈

N

+

card (A) > p · k,

to istnieje i

0

∈ {1, 2, ..., k} o tej własności, że

card (A

i

0

) > p.

Dowód. Gdyby card (A

i

) ¬ p dla dowolnego i = 1, 2, ..., k, to otrzy-

mujemy card (A) ¬ p · k, co jest sprzeczne z założeniem.

2

Podziały zbioru są niejednokrotnie generowane przez funkcje

(por. [15, s. 315]). W związku z tym ma miejsce następujący wnio-
sek.

Wniosek. Załóżmy, że dana jest funkcja f : A → B, gdzie A i B
zbiorami skończonymi, takimi że

card (A) > p · card (B),

gdzie p ∈

N

+

. Wtedy istnieje y ∈ B o tej własności, że

card (f

1

({y})) > p.

Dowód. Teza wynika z poprzedniego twierdzenia i faktu, iż zbiory
f

1

({y

i

}) stanowią podział zbioru A dla pewnego zbioru y

1

, y

2

, ..., y

k

,

k ¬ card (B), elementów B.

2

Przykład

(i) Zauważmy, że wśród dowolnych stu kolejnych liczb całkowitych

możemy wybrać kilka (w szczególnym przypadku jedną) kolej-
nych liczb w taki sposób, że ich suma dzieli się przez 5000.

background image

Zasada szufladkowa Dirichleta

123

Niech rozważanymi liczbami będą x

1

, x

2

, ..., x

100

. Istnieje 100 jed-

noskładnikowych sum tych elementów, 99 dwuskładnikowych
x

1

+ x

2

, x

2

+ x

3

, ..., x

99

+ x

100

, 98 trzyskładnikowych x

1

+ x

2

+

x

3

, x

2

+ x

3

+ x

4

, ..., x

98

+ x

99

+ x

100

, itd; na końcu bierzemy pod

uwagę jedną sumę złożoną ze 100 składników x

1

+ x

2

+ ... + x

100

.

W rezultacie, wszystkich sum jest

1 + 2 + ... + 99 + 100 =

1

2

· 100 · 101 = 5050.

Ponieważ przy dzieleniu przez 5000 można otrzymać wiele rów-
nych reszt, więc z powyższych rachunków wynika, że przynaj-
mniej jedna z sum dzieli się przez tę liczbę.

(ii) Wykażemy, że gdy dane jest 10 dowolnych dwucyfrowych liczb

naturalnych, można spośród nich wybrać co najmniej dwa pod-
zbiory rozłączne, takie że sumy ich elementów są sobie równe.
Istotnie, można utworzyć ogółem 2

10

1 = 1023 podzbiorów

niepustych zawierających liczby z danego zbioru. Zarazem naj-
mniejsza z sum wynosi 10, a największa jest równa 90 + 91 +
92 + ... + 99 < 1000. Stąd wynika, że istnieją przynajmniej dwa
podzbiory o tej samej sumie elementów. Jeżeli zbiory te nie są
rozłączne, należy z nich usunąć elementy wspólne; sumy pozo-
staną sobie równe.

(iii) Wykażemy, że dla dowolnej liczby n ∈

N

+

istnieje liczba zapisana

(w systemie dziesiętnym) przy użyciu jedynie cyfr 0 i 1, która jest
podzielna przez n.
Liczb, które mogą być zapisane tylko przy użyciu cyfry 1 jest do-
wolnie wiele. Wśród nich są: 1, 11, 111, ..., 111...1 = 10

n

+ 10

n−1

+

... + 1. Tych ostatnich liczb jest n + 1, a zatem, zgodnie z zasadą
Dirichleta, są wśród nich co najmniej dwie liczby dające tę samą
resztę przy dzieleniu przez n. Jeśli nie jest to reszta równa zero,
to różnica tych liczb, zapisana jedynie przy użyciu cyfr 0 i 1, jest
podzielna przez n.

(iv) Niech dany będzie sześciokąt. Łączymy ze sobą wszystkie jego

wierzchołki, używając jedynie dwóch kolorów: niebieskiego i czer-
wonego do narysowania odpowiednich odcinków. Można wyka-
zać, że wśród narysowanych trójkątów przynajmniej jeden ma
wszystkie boki tego samego koloru.

background image

124

Zbiory skończone i metody zliczania ...

x

1

x

2

x

3

x

4

x

5

x

6

Ustalmy jeden z wierzchołków, powiedzmy x

1

. Wychodzi z nie-

go 5 krawędzi, z których co najmniej trzy muszą być jednego
koloru. Niech będą to na rysunku odcinki x

1

x

2

, x

1

x

3

oraz x

1

x

5

.

Jeśli tym samym kolorem co wymienione odcinki, narysujemy
jeden z odcinków: x

2

x

3

, x

3

x

5

lub x

2

x

5

, to uzyskamy trójkąt o bo-

kach w jednym kolorze (będzie to jeden z trójkątów: 4x

1

x

2

x

3

,

4x

1

x

3

x

5

, 4x

1

x

2

x

5

).

W przeciwnym przypadku wierzchołki x

2

, x

3

i x

5

zostaną połą-

czone drugim kolorem, a więc otrzymamy trójkąt 4x

2

x

3

x

5

o bo-

kach tego samego koloru.

background image

6

Podziały i permutacje.

Liczby Stirlinga i Bella

6.1

Liczenie podziałów

W tym podrozdziale powrócimy do pojęcia podziału zbioru na

podzbiory.

Definicja 6.1 Niech dany będzie skończony i niepusty zbiór A. Jego
podziałem nazywamy rodzinę zbiorów A

1

, A

2

, ..., A

k

, k ¬ card (A), nie-

pustych, parami rozłącznych i takich, że

n

[

i=1

A

i

= A.

Rozwiązując pewnego typu zadania, obliczamy liczbę podziałów

tego zbioru na podzbiory o określonych liczebnościach.

Przykład. Rozwiążmy dwa podobne zadania.

(i) Dziewięciu pasażerów wsiada do tramwaju złożonego z trzech

wagonów. Na ile sposobów mogą to uczynić, jeśli do pierwszego

background image

126

Podziały i permutacje. Liczby Stirlinga i Bella

wagonu ma wsiąść dwóch pasażerów, do drugiego - trzech, a do
trzeciego - czterech pasażerów.
W tym przypadku żądamy, aby to do pierwszego wagonu, a nie
drugiego czy trzeciego, wsiadło dwóch pasażerów; podobnie jest
w przypadku następnych wagonów. Mamy tu więc do czynienia
z podziałami na trzy zbiory o określonej liczebności. Ich liczba
jest równa

P

2,3,4

9

=

9!

2! · 3! · 4!

.

(ii) Zmodyfikujemy poprzednie zadanie. Tym razem chcemy, aby do

jednego z wagonów (niekoniecznie pierwszego) wsiadło dwóch pa-
sażerów, do innego - trzech, a do pozostałych wagonów - czterech.
W tym przypadku rozwiązaniem jest liczba

P

3

· P

2,3,4

9

=

3! · 9!

2! · 3! · 4!

.

Definicja 6.2 Symbolem P art

k;i

1

,...,i

k

(A) oznaczać będziemy liczbę

podziałów zbioru A, card (A) ­ k, na k podzbiorów o liczebnościach
i

1

, ..., i

k

.

Stwierdzenie. Zachodzi równość

P art

k;i

1

,...,i

k

(A) =

card (A)!

i

1

!i

2

!...i

k

!

.

Przedstawimy teraz niezwykle ważny wynik, mający znaczenie sa-

moistne, ale też przydatny w dalszych rozważaniach dotyczących liczby
podziałów.

Twierdzenie 6.1 Niech A i B będą zbiorami skończonymi i niepusty-
mi. Wtedy

card



sur(B

A

)



=

card (B)

X

i=0

(1)

i

card (B)

i

!

(card (B) − i)

card (A)

.

Dowód twierdzenia jest dość żmudny. Można go znaleźć np. w książ-

ce Flachsmeyera [9, s. 80-81].

Z powyższego twierdzenia wynika ważny wniosek. Najpierw poda-

my jednak następującą definicję

background image

Liczenie podziałów

127

Definicja 6.3 Symbolem P art

k

(A) oznaczać będziemy liczbę podzia-

łów zbioru A, card (A) ¬ k, na k podzbiorów niepustych.

Wniosek. Dla zbioru skończonego i niepustego zachodzi równość

P art

k

(A) =

k

X

i=0

(1)

i

k

i

!

(k − 1)

card (A)

.

Przykład. Znajdziemy wszystkie podziały nieuporządkowane zbioru
czteroelementowego A = {a, b, c, d}.

Istnieje tylko jeden podział złożony z jednego zbioru

{{a, b, c, d}}.

Podziałów złożonych z dwóch zbiorów jest siedem. Są to

{{a, b, c}, {d}}, {{a, c, d}, {b}}, {{b, c, d}, {a}}, {{a, b, d}, {c}}

oraz

{{a, b}, {c, d}}, {{a, c}, {b, d}}, {{a, d}, {b, c}}.

Podziałów złożonych z trzech zbiorów jest sześć

{{a, b}, {c}, {d}}, {{a, c}, {b}, {d}}, {{a, d}, {b}, {c}},

{{b, c}, {a}, {d}}, {{b, d}, {a}, {c}}, {{c, d}, {a}, {b}}.

Mamy ponadto jeden podział na cztery zbiory

{{a}, {b}, {c}, {d}}.

Zauważmy, że otrzymane wyniki są zgodne z ostatnim wnioskiem.

Rzeczywiście,w tym przypadku card (A) = 4 i odpowiednie liczby wy-
znaczające ilość podziałów tego zbioru na jeden, dwa i trzy podzbiory
są równe

1

1!



(1)

0



1
0



(1 0)

4

+ (1)

1



1
1



(1 1)

4



= 1,

1

2!



(1)

0



2
0



(2 0)

4

+ (1)

1



2
1



(2 1)

4

+ (1)

2



2
2



(2 2)

4



=

=

1
2

(16 2) = 7,

1

3!



(1)

0



3
0



(3 0)

4

+ (1)

1



3
1



(3 1)

4

+ (1)

2



3
2



(3 2)

4

+ 0



=

=

1
6

(81 3 · 16 + 3) = 6.

background image

128

Podziały i permutacje. Liczby Stirlinga i Bella

Wyznaczenie ostatniej liczby - odpowiadającej podziałowi zbioru A na
cztery podzbiory, pozostawiamy Czytelnikowi.

6.2

Rozkłady liczb

Rozważmy najpierw następujący problem.

Przykład. Ile rozwiązań w liczbach naturalnych dodatnich ma rów-
nanie

x

1

+ x

2

+ x

3

= 6,

jeśli odróżniamy od siebie wszystkie sumy różniące się kolejnością skład-
ników?

Najpierw wypiszemy wszystkie rozwiązania.

1 + 1 + 4 = 6, 1 + 2 + 3 = 6, 3 + 2 + 1 = 6, 2 + 3 + 1 = 6,
1 + 4 + 1 = 6, 1 + 3 + 2 = 6, 2 + 2 + 2 = 6, 2 + 1 + 3 = 6,
4 + 1 + 1 = 6, 3 + 1 + 2 = 6.

Jak widać, jest ich dziesięć. Czy jednak na pewno nie zapomnieliśmy
o jakimś rozwiązaniu? Okazuje się, że nie, a upewnia nas o tym nastę-
pujące rozumowanie (por. [5, s. 48]).

Zauważmy, że każdemu z powyższych rozwiązań odpowiada wybór

dwóch znaków + w poniższej sumie

1 + 1 + 1 + 1 + 1 + 1 = 6.

Znaków tych jest pięć, a więc liczba możliwych wyników jest równa

C

2

5

=

5

2

!

= 10.

Twierdzenie 6.2 Liczba rozwiązań równania

x

1

+ x

2

+ ... + x

k

= n,

k ¬ n,

będących liczbami naturalnymi dodatnimi, wynosi

n − 1

k − 1

!

,

jeśli za różne uznaje się rozwiązania odpowiadające różnej kolejności
składników.

background image

Rozkłady liczb

129

Dowód. Można przeprowadzić dowód tego twierdzenia, opierając się
na ujęciu mnogościowym pojęć kombinatorycznych, stosując przy tym
zasadę indukcji zupełnej względem n. Znacznie łatwiej jest jednak prze-
prowadzić dowód kombinatoryczny przypominający rozumowanie z po-
przedniego przykładu.

Mianowicie, liczba rozwiązań równania jest równa liczbie sposobów

wyboru k − 1 znaków + w poniższej równości

1 + 1 + ... + 1 = n.

2

W wielu przypadkach interesują nas rozkłady liczb dopuszczające

rozwiązania zerowe.

Przykład. Ile rozwiązań w liczbach naturalnych, przy założeniu, że
odróżniamy rozwiązania różniące się kolejnością składników, ma rów-
nanie

x

1

+ x

2

+ x

3

+ x

4

= 8 ?

Aby rozwiązać ten problem, wypiszemy osiem jedynek, a następnie,

w dowolny sposób, dopiszemy 4 1 = 3 znaki +.

W ten sposób można otrzymać na przykład napisy

111 + 1 + 11 + 11

lub

11 + + 111 + 111,

lub też

+ + + 11111111.

Napisy te odpowiadają rozwiązaniom

3 + 1 + 2 + 2 = 8,

2 + 0 + 3 + 3 = 8

oraz

0 + 0 + 0 + 8 = 8.

background image

130

Podziały i permutacje. Liczby Stirlinga i Bella

Ostatecznie, możliwych wyborów, i zatem rozwiązań, jest

P

8,3

8+3

=

11!

8!3!

=

11

3

!

.

Powyższy przykład jest szczególnym przypadkiem problemu, który

opisuje następujące twierdzenie

Twierdzenie 6.3 Dowolne równanie

x

1

+ x

2

+ ... + x

k

= n,

k ¬ n,

ma dokładnie

n + k − 1

k − 1

!

różnych rozwiązań w liczbach naturalnych przy, takim jak poprzednio,
założeniu, że rozwiązania różniące się kolejnością składników są różne.

Dowód. Tezę twierdzenia można wykazać za pomocą rozumowania po-
dobnego do tego, które zostało zastosowane w poprzednim przykładzie.
Dowód przeprowadzimy jednak inną metodą. Podstawiamy

y

i

= x

i

+ 1,

i = 1, 2, ..., k.

Wtedy równanie przyjmuje postać

y

1

+ y

2

+ ... + y

k

= n + k.

Ponieważ szukamy rozwiązań dodatnich, więc możemy zastosować po-
przednie twierdzenie, co natychmiast prowadzi do liczby



n+k−1

k−1



.

Stosując odpowiednie podstawienia, możemy badać liczbę rozwią-

zań równań liniowych o bardziej skomplikowanych postaciach.

2

Przykład. Ile rozwiązań w liczbach naturalnych ma równanie

2x + y = 15,

gdzie x ­ 1, y ­ 1?

background image

Permutacje

131

Zastosujemy podstawienie: u = 2x − 1. Oczywiście u ­ 1. Zatem

poszukujemy wszystkich rozwiązań równania

u + x = 14,

gdzie u, x ­ 1, a ponadto u jest liczbą nieparzystą.

Takich rozwiązań jest siedem.

1 + 13 = 14, 3 + 11 = 14, 5 + 9 = 14,

7 + 7 = 14,

9 + 5 = 14,

11 + 3 = 14, 13 + 1 = 14.

Odpowiada im siedem rozwiązań równania wyjściowego

2 · 1 + 13 = 15, 2 · 2 + 11 = 15, 2 · 3 + 9 = 15, 2 · 4 + 7 = 15,
2 · 5 + 5 = 15,

2 · 6 + 3 = 15,

2 · 7 + 1 = 15.

6.3

Permutacje

Definicja 6.4 Permutacją n-elementową (bez powtórzeń) nazywać bę-
dziemy każdą bijekcję

σ : {1, 2, ..., n} → {1, 2, ..., n}.

Umowa notacyjna. W dalszym ciągu permutacje będziemy oznaczać
przy pomocy liter greckich σ, τ , ω. Zamiast pisać σ : {1, 2, ..., n} →
{
1, 2, ..., n} będziemy też pisać

σ =

1

2

...

n

σ(1) σ(2) ... σ(n)

!

.

Superpozycję permutacji, która jest oczywiście też permutacją, na-

zywamy niejednokrotnie iloczynem permutacji. Zamiast pisać σ ◦ τ pi-
sze się na ogół στ . Permutację odwrotną do σ oznacza się, tak jak
w przypadku funkcji, symbolem σ

1

.

Przykład. Dane są permutacje zbioru 6-elementowego

τ =

1 2 3 4 5 6
2 4 1 3 6 5

!

background image

132

Podziały i permutacje. Liczby Stirlinga i Bella

i

σ =

1 2 3 4 5 6
1 3 6 5 4 2

!

.

Wtedy

1 7−→ τ (1) = 2 7−→

σ(2) = 3

2 7−→ τ (2) = 4 7−→

σ(4) = 5

3 7−→ τ (3) = 1 7−→

σ(1) = 1

4 7−→ τ (4) = 3 7−→

σ(3) = 6

5 7−→ τ (5) = 6 7−→

σ(6) = 2

6 7−→ τ (6) = 5 7−→ σ(5) = 4,

czyli

στ =

1 2 3 4 5 6
3 5 1 6 2 4

!

.

Ponadto

τ

1

=

2 4 1 3 6 5
1 2 3 4 5 6

!

=

1 2 3 4 5 6
3 1 4 2 6 5

!

.

Podobnie można obliczyć σ

1

.

Definicja 6.5 Zbiór wszystkich permutacji zbioru n-elementowego
{
1, 2, ..., n} oznaczmy symbolem S

n

.

Twierdzenie 6.4 Dla dowolnego n ∈

N

+

card (S

n

) = n!.

Dowód. Powyższa równość jest oczywistą konsekwencją tego, że per-
mutacje bez powtórzeń są wariacjami bez powtórzeń z n elementów po
n elementów. Dlatego ich liczba jest równa P

n

= V

n

n

= n!.

2

Definicja 6.6 Permutację σ ∈ S

n

nazywamy cykliczną, albo po prostu

cyklem, jeżeli istnieje ciąg liczb 1 ¬ i

1

< i

2

< ... < i

k

¬ n, takich że

σ(i

1

) = i

2

, σ(i

2

) = i

3

, ..., σ(i

k−1

) = i

k

, σ(i

k

) = i

1

,

a ponadto σ(i) = i dla i ∈ {1, 2, ..., n} \ {i

1

, i

2

, ..., i

k

}.

Liczbę k nazywamy długością cyklu. Cykl długości dwa nazywamy

transpozycją.

background image

Permutacje

133

Umowa notacyjna. Cykl σ ∈ S

n

zapisywać będziemy w postaci jed-

nowierszowej

(i

1

, i

2

, ..., i

k

).

Zakładać będziemy przy tym, że powyższy zapis jest równoważny za-
pisom

(i

2

, i

3

, ..., i

k

, i

1

), (i

3

, i

4

, ..., i

k

, i

1

, i

2

), itd.

Zachodzi ważne twierdzenie, które podajemy bez dowodu.

Twierdzenie 6.5 Dowolna permutacja jest iloczynem skończonej ilo-
ści cykli.

Przykład. Rozważmy permutację σ ∈ S

12

σ =

1 2 3 4 5 6

7

8 9 10 11 12

5 1 6 2 4 3 10 7 8

9

12 11

!

.

Wtedy

σ = (1, 5, 4, 2)(3, 6)(7, 10, 9, 8)(11, 12).

Ponieważ

(1, 5, 4, 2) = (1, 2)(1, 4)(1, 5)

oraz

(7, 10, 9, 8) = (7, 8)(7, 9)(7, 10),

więc także

σ = (1, 2)(1, 4)(1, 5)(3, 6)(7, 8)(7, 9)(7, 10)(11, 12).

Jak widać, permutację można przedstawić w postaci iloczynu cykli

na różne sposoby.

Definicja 6.7 Liczbę i ∈ {1, 2, ..., n} nazywamy punktem stałym per-
mutacji σ ∈ S

n

, jeśli σ(i) = i.

Definicja 6.8 Permutację σ ∈ S

n

nazywamy nieporządkiem, jeżeli

σ(i) 6= i dla każdego i ∈ {1, 2, ..., n}.

background image

134

Podziały i permutacje. Liczby Stirlinga i Bella

Umowa notacyjna. Liczbę wszystkich nieporządków należących do
S

n

oznaczamy symbolem D(n).

Twierdzenie 6.6 Dla dowolnego n ∈

N

+

zachodzi równość

D(n) =

n

X

i=0

(1)

i

n

i

!

(n − i)!.

Dowód. Zastosujemy zasadę włączeń i wyłączeń. Dla i = 1, 2, ..., n
oznaczmy symbolami A

i

zbiory, które mają dokładnie jeden punkt sta-

ły, a mianowicie i. Oczywiście zbiór

n

S

i=1

A

i

zawiera, jako elementy, te

permutacje, które mają co najmniej jeden punkt stały. Ponieważ

card (A

i

) = (n − 1)!,

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

card (A

i

∩ A

j

) = (n − 2)!,

1 ¬ i < j ¬ n,

card (A

i

∩ A

j

∩ A

k

) = (n − 3)!,

1 ¬ i < j < k ¬ n,

itd.,

więc

card



n

S

i=1

A

i



=



n

1



(n − 1)!



n

2



(n − 2)! +



n

3



(n − 3)! − ...+

+(1)

n+1



n
n



.

Tak więc

card



S

n

\

n

S

i=1

A

i



= n!



n

1



(n − 1)! +



n

2



(n − 2)! + ...+

+(1)

n



n
n



=

n

P

i=0

(1)

i



n

i



(n − i)! .

2

Proste przekształcenia prowadzą do jeszcze jednego wzoru pozwa-

lającego na obliczanie D(n).

Wniosek. Dla n ∈

N

+

ma miejsce równość

D(n) = n!

1

1

1!

+

1

2!

− ... +

(1)

n

n!

!

.

background image

Permutacje

135

Często rozwiązywanym problemem w teorii permutacji jest zagad-

nienie liczby rozkładów permutacji na określoną ilość cykli. Rozwią-
zanie tego problemu zostanie przedstawione w następnym rozdziale.
W tym miejscu przedstawimy jedynie pewien przykład.

Przykład. Ile jest permutacji dwu-, trzy- i czteroelementowych, które
są iloczynami dwóch cykli?

Łatwo zauważyć, że jest tylko jedna taka permutacja dwuelemen-

towa

(1)(2) =

1 2
1 2

!

i trzy permutacje należące do S

3

(1)(2, 3) =

1 2 3
1 3 2

!

, (1, 2)(3) =

1 2 3
2 3 1

!

,

(1, 3)(2) =

1 2 3
3 2 1

!

.

Permutacji należących do S

4

, o tej własności, jest już 11.

(1, 2, 3)(4) =

1 2 3 4
2 3 1 4

!

, (1, 2, 4)(3) =

1 2 3 4
2 4 3 1

!

,

(1, 3, 4)(2) =

1 2 3 4
3 2 4 1

!

, (1, 3, 2)(4) =

1 2 3 4
3 1 2 4

!

,

(1, 4, 2)(3) =

1 2 3 4
4 1 3 2

!

, (1, 4, 3)(2) =

1 2 3 4
4 2 1 3

!

,

(1, 2)(3, 4) =

1 2 3 4
2 1 4 3

!

, (1, 3)(2, 4) =

1 2 3 4
3 4 1 2

!

,

(1, 4)(2, 3) =

1 2 3 4
4 3 2 1

!

, (2, 3, 4)(1) =

1 2 3 4
1 3 4 2

!

,

(2, 4, 3)(1) =

1 2 3 4
1 4 2 3

!

.

background image

136

Podziały i permutacje. Liczby Stirlinga i Bella

6.4

Liczby specjalne

W kombinatoryce ważną rolę odgrywają pewne funkcje, jak n 7→

n! czy (n, k) 7→



n
k



, oraz ich wartości. Właśnie te wartości tworzą

ciągi liczb o szczególnym znaczeniu, pozwalające na rozwiązanie wielu
istotnych problemów.

Wartości funkcji kombinatorycznych znajdują się w odpowiednich

tablicach. Dla przykładu, tablica dla pierwszych jedenastu wartości
funkcji silnia przedstawia się następująco

n

0

1

2

3

4

5

6

7

8

9

10

n!

1

1

2

6

24

120

720

5040

40320

362880

3628800

Także współczynniki dwumianowe



n
k



mogą być umieszczane w ta-

beli. Oto taka właśnie tabela dla 0 ¬ k ¬ n ¬ 10.

H

H

H

H

H

H

n

k

0

1

2

3

4

5

6

7

8

9

10

0

1

1

1

1

2

1

2

1

3

1

3

3

1

4

1

4

6

4

1

5

1

5

10

10

5

1

6

1

6

15

20

15

6

1

7

1

7

21

35

35

21

7

1

8

1

8

28

56

70

56

28

8

1

9

1

9

36

84

126

126

84

36

9

1

10

1

10

45

120

210

252

210

120

45

10

1

Jak dobrze wiadomo, współczynniki dwumianowe mogą być przed-

stawione w postaci tzw. trójkąta Pascala.

background image

Liczby specjalne

137

1

1

1

1

2

1

1

3

3

1

1

4

6

4

1

1

5

10

10

5

1

1

6

15

20

15

6

1

1

7

21

35

35

21

7

1

1

8

28

56

70

56

28

8

1

1

9

36

84

126

126

84

36

9

1

1

10

45

120

210

252

210

120

45

10

1

Liczby w kolejnych wierszach są sumami liczb z wiersza wcześniej-

szego, sąsiadujących „od góry” z danymi liczbami. Zależność ta wynika
z udowodnionej w poprzednim rozdziale własności

n

k

!

=

n − 1

k − 1

!

+

n − 1

k

!

.

Kolejnym ważnym pojęciem kombinatorycznym są tzw. liczby Stir-

linga. Są dwa rodzaje takich liczb: liczby Stirlinga podzbiorowe (dru-
giego rodzaju) i liczby Stirlinga cykliczne (pierwszego rodzaju).

Definicja 6.9 Liczbami podzbiorowymi Stirlinga nazywamy liczby

(

n

k

)

=

1

k!

k

X

i=0

(1)

i

k

i

!

(k − i)

n

.

Innymi słowy, liczby podzbiorowe Stirlinga

n

n
k

o

są równe ilościom

podziałów zbioru n-elementowego na k podzbiorów.

Nietrudno jest dowieść, że liczby te, podobnie jak współczynniki

dwumianowe, spełniają pewną zależność rekurencyjną.

Twierdzenie 6.7 Dla n, k ∈

N, 1 ¬ k ¬ n, zachodzą równości

(

n

0

)

= 1

background image

138

Podziały i permutacje. Liczby Stirlinga i Bella

i

(

n

k

)

= k

(

n − 1

k

)

+

(

n − 1

k − 1

)

.

Liczby podzbiorowe Stirlinga można zaprezentować w postaci ta-

blicy.

H

H

H

H

H

H

n

k

0 1

2

3

4

5

6

7

8

9 10

0

1

1

0 1

2

0 1

1

3

0 1

3

1

4

0 1

7

6

1

5

0 1

15

25

10

1

6

0 1

31

90

65

15

1

7

0 1

63

301

350

140

21

1

8

0 1 127

966

1701

1050

266

28

1

9

0 1 255 3025

7770

6951

2646

462

36

1

10

0 1 511 9330 34105 42525 22827 5880 750 45

1

Zauważmy, że pierwsza kolumna powyższej tablicy zawiera liczby

n

n

0

o

. Dołączenie takich liczb jest wygodne ze względów czysto rachun-

kowych. Jednak interpretację kombinatoryczną jako liczby podziałów
zbioru n-elementowego na k, k > 0, podzbiorów, mają jedynie liczby

n

n
k

o

, k > 0.

Definicja 6.10 Niech n ∈

N

+

. Liczbami Bella nazywamy liczby

b

n

=

(

n

1

)

+

(

n

2

)

+ ... +

(

n

n

)

.

Liczby Bella są zatem równe ilości wszystkich możliwych podziałów

zbioru n-elementowego.

Przykład. Na ile sposobów można przedstawić zbiór 5-elementowy
w postaci sum zbiorów niepustych?

background image

Liczby specjalne

139

Liczba takich podziałów jest równa

b

5

=

(

5

1

)

+

(

5

2

)

+

(

5

3

)

+

(

5

4

)

+

(

5

5

)

= 1 + 15 + 25 + 10 + 1 = 52

Definicja 6.11 Cyklicznymi liczbami Stirlinga nazywamy liczby

h

n
k

i

,

k, n ∈

N, k ¬ n, które wyrażają liczbę permutacji należących do S

n

,

które można przedstawić w postaci iloczynu k cykli.

Twierdzenie 6.8 Dla dowolnych k, n ∈

N, 1 ¬ k ¬ n, zachodzą

równości

"

n

0

#

= 0

i

"

n

k

#

= (n − 1)

"

n − 1

k

#

+

"

n − 1

n − k

#

.

Liczby cykliczne Stirlinga także mogą być umieszczone w odpo-

wiedniej tablicy.

H

H

H

H

H

H

n

k

0

1

2

3

4

5

6

7

8 9

0

1

1

0

1

2

0

1

1

3

0

2

3

1

4

0

6

11

6

1

5

0

24

50

35

10

1

6

0

120

274

255

85

15

1

7

0

720

1764

1624

735

175

21

1

8

0

5040

13068

13132

6769

1960

322

28

1

9

0 40320 109584 118124 67284 22449 4536 546 36 1

Przykład. Znajdź wszystkie permutacje należące do S

4

, które są ilo-

czynami dwóch cykli.

background image

140

Podziały i permutacje. Liczby Stirlinga i Bella

Oto one

(1)(2, 3, 4), (1)(3, 2, 4), (2)(1, 3, 4), (2)(3, 1, 4),
(3)(1, 2, 4), (3)(2, 1, 4), (4)(1, 2, 3), (4)(2, 1, 3),
(1, 2)(3, 4), (1, 3)(2, 4), (1, 4)(2, 3).

Jak widać, jest ich 11, co zgadza się z teorią, bowiem

"

4

2

#

= 11.

Odnotujemy jeszcze jeden ważny, a zarazem prosty, związek.

Twierdzenie 6.9 Dla dowolnej liczby n ∈

N

"

n

0

#

+

"

n

1

#

+ ... +

"

n

n

#

= n! .

background image

7

Główne pojęcia teorii grafów

7.1

Nieformalne wprowadzenie do teorii
grafów

Pojęcie grafu wydaje się intuicyjnie łatwo uchwytne. Graf two-

rzą dwa zbiory: wierzchołków V i krawędzi E (są to zbiory skończo-
ne, jeśli graf jest skończony; w przeciwnym przypadku - przynajmniej
zbiór V jest nieskończony). Użycie takich terminów jak „wierzchołek”
i „krawędź” sugeruje, że grafy posiadają (dotyczy to zwłaszcza gra-
fów skończonych) interpretację geometryczną. By się o tym przekonać,
przyjrzyjmy się następującym przykładom.

background image

142

Główne pojęcia teorii grafów

Przykład

(i) Rozważmy następujący graf

v

3

v

2

v

4

v

1

v

5

v

6

v

7

e

3

e

4

e

5

e

6

e

7

e

2

e

8

e

1

e

9

W tym przypadku V = {v

1

, v

2

, v

3

, v

4

, v

5

, v

6

, v

7

}, zaś E = {e

1

, e

2

, e

3

,

e

4

, e

5

, e

6

, e

7

, e

8

, e

9

}. Jak widać, nie każde dwa wierzchołki połączone są

krawędziami. Ponadto jeden z wierzchołków, a mianowicie v

1

, nie jest

połączony krawędzią z żadnym innym wierzchołkiem. Gdybyśmy kra-
wędziom przypisali liczby, na przykład tak jak na poniższym rysunku
to otrzymalibyśmy tzw. graf z wagami.

v

3

v

2

v

4

v

1

v

5

v

6

v

7

30

35

42

38

21

64

53

18

47

background image

Nieformalne wprowadzenie do teorii grafów

143

Tego rodzaju grafy mają wiele zastosowań, między innymi służą

do przedstawiania odległości - rozumianych jako długości dróg pomię-
dzy wybranymi miejscowościami. Interpretując w ten sposób powyższy
graf, zauważamy na przykład, że droga z v

1

do v

2

liczy 30 km, a z v

2

do v

5

- 47 km. Zarazem widzimy, że v

1

i v

3

nie są połączone bezpośred-

nio. By dostać się z v

1

do v

3

, należy po drodze „odwiedzić” v

2

lub v

4

,

otrzymując drogi o długości odpowiednio 65 km i 106 km. Zauważmy,
że z v

7

nie można dostać się do pozostałych wierzchołków, co jest od-

zwierciedleniem tego, iż pomiędzy tą miejscowością a pozostałymi nie
ma połączeń drogowych (np. v

7

znajduje się na wyspie albo w innym

niedostępnym terenie).

(ii) Graf przedstawiony poniższym rysunkiem pokazuje w jaki sposób

połączone są ze sobą za pomocą mostów różne części pewnego
miasta położonego w ujściu do morza dwóch rzek (rysunek na
stronie następnej).

x

5

x

1

x

2

x

3

x

4

x

6

e

3

e

4

e

5

e

6

e

7

e

8

e

9

e

10

e

2

e

1

Krawędzie, takie jak e

1

i e

2

oraz e

8

i e

9

łączące te same wierzchołki

nazywane są wielokrotnymi, a graf zawierający takie krawędzie na-
zywany jest multigrafem, w przeciwieństwie do tzw. grafów prostych,
niemających krawędzi wielokrotnych. Przy okazji zauważmy, że krawę-
dzie mogą być przedstawione nie tylko za pomocą odcinków, ale także
łuków.

background image

144

Główne pojęcia teorii grafów

x

2

x

3

x

1

e

3

x

5

e

4

e

6

x

4

x

6

e

2

e

1

e

5

e

7

e

8

e

9

e

10

(iii) Niech dany będzie graf

3

2

5

9

15

6

Ilustruje on relację podzielności w zbiorze {2, 3, 5, 6, 9, 15}. Jest to

relacja częściowego porządku, a więc między innymi - zwrotna. Oznacza
to, że każda z liczb rozważanego zbioru jest połączona sama ze sobą.
Tego rodzaju krawędzie nazywane są pętlami.

background image

Nieformalne wprowadzenie do teorii grafów

145

(iv) Weźmy teraz pod uwagę następujący graf

s

u

1

u

2

z

1

c

1

b

1

b

2

c

2

z

2

p

1

p

2

q

1

q

2

q

3

q

4

q

5

q

6

Odpowiada on schematowi losowania kuli koloru białego, czerwo-

nego i zielonego z jednej z dwóch urn: u

1

i u

2

. Losowanie to prze-

biega w sposób następujący: z prawdopodobieństwem p

i

wybieramy

i-tą urnę, i = 1, 2. Temu wyborowi odpowiada przejście z wierzchoł-
ka s (start) do jednego z wierzchołków u

1

i u

2

. Przy tym oczywiście

p

1

+ p

2

= 1. Następnie z wybranej urny losujemy jedną kulę: białą,

czerwoną lub zieloną. Jeżeli losujemy z urny u

1

, to odpowiednie praw-

dopodobieństwa są równe: q

1

, q

2

i q

3

, gdzie q

1

+ q

2

+ q

3

= 1. Jeżeli

natomiast losujemy z urny u

2

, to czynimy to z prawdopodobieństwami

równymi odpowiednio q

4

, q

5

i q

6

, gdzie q

4

+ q

5

+ q

6

= 1.

Powyższy graf należy do szczególnego rodzaju grafów nazywanych

drzewami. Wierzchołek s nazywamy korzeniem. Takie grafy będą oma-
wiane w następnym rozdziale.

(v) Teoria grafów ma zastosowanie w rozważaniach dotyczących au-

tomatów skończonych (por. podrozdział 3.3).

q

4

q

3

q

2

q

0

q

1

0

1

0

1

1

0

1

1

0

0

background image

146

Główne pojęcia teorii grafów

Oto graf ilustrujący działanie automatu skończonego o stanach q

0

,

q

1

, q

2

, q

3

, q

4

, z których q

0

jest stanem początkowym, a q

4

stanem ak-

ceptującym. Automat odczytuje słowa napisane na taśmie przy użyciu
znaków alfabetu

P

= {0, 1}.

W tym przypadku ważna jest kolejność uzyskiwanych stanów. Dla-

tego krawędzie zostały zaopatrzone w strzałki. Tego rodzaju grafy na-
zywane są grafami skierowanymi albo digrafami. Również one, podob-
nie jak drzewa, będą jednym z tematów następnego rozdziału. Od-
notujmy, że drzewa w niektórych ujęciach teorii grafów zaliczane są
właśnie do grafów skierowanych.

Powyższy przykład ukazuje, jak wiele zastosowań ma teoria grafów.

W istocie, nie ma chyba dziedziny matematyki, która nie miałaby pew-
nych związków z tą teorią. Zanim przejdziemy do następnego podroz-
działu, w którym przedstawione zostaną ścisłe definicje podstawowych
pojęć teorii grafów, zwróćmy uwagę na dwie kwestie.

Po pierwsze, zauważmy, że graf jest pojęciem abstrakcyjnym, a ry-

sunki przedstawiające grafy mają swoiste własności geometryczne, któ-
re niosą ze sobą pewną dodatkową informację, nie odzwierciedlającą
relacji zachodzących w grafie.

Przykład. Poniższe dwa rysunki przedstawiają faktycznie ten sam
graf. Na rysunku pierwszym krawędzie e

5

i e

6

przecinają się w punkcie

niebędącym wierzchołkiem, a na rysunku drugim nie mają punktów
wspólnych.

v

2

v

1

v

3

v

4

e

4

e

1

e

5

e

6

e

2

e

3

v

2

v

1

v

3

v

4

e

4

e

1

e

6

e

2

e

3

e

5

Przykład ten stanowi zatem ostrzeżenie, aby nie traktować teorii

grafów jako działu geometrii. Grafy, jak to zobaczymy w następnym

background image

Nieformalne wprowadzenie do teorii grafów

147

podrozdziale, są funkcjami, a rysunki je przedstawiające, czyli wykresy,
mogą mieć własności akcydentalne, które trzeba odróżnić od własności
istotnych.

Kolejna kwestia, którą należy poruszyć, dotyczy oznakowania wierz-

chołków i krawędzi grafu. Bardzo często przedstawiając grafy, kiedy to
nie prowadzi do nieporozumień, pomijamy oznaczenia wierzchołków
i krawędzi. Takie grafy nazywamy nieoznakowanymi, w przeciwień-
stwie do grafów oznakowanych. Jednak rozróżnienie pomiędzy oboma
rodzajami grafów staje się istotne, gdy zliczamy grafy.

Przykład

(i) Istnieje jeden graf oznakowany o trzech wierzchołkach.

3

1

2

Istnieje też jeden graf nieoznakowany.

(ii) Dla grafu nieoznakowanego

background image

148

Główne pojęcia teorii grafów

istnieje 4!/4 = 6 grafów oznakowanych, powiedzmy o wierzchoł-
kach 1, 2, 3, 4. Oto one (symbole dla krawędzi pomijamy):

2

1

4

3

3

1

4

2

4

1

3

2

4

1

2

3

3

1

2

4

2

1

3

4

Zauważmy, że na przykład rysunki

2

1

4

3

1

4

3

2

4

3

2

1

3

2

1

4

przedstawiają ten sam graf. Podobnie jest w pozostałych przy-
padkach. Z tego względu rozważanych grafów oznakowanych jest
6 a nie 24 = 4!.

background image

Nieformalne wprowadzenie do teorii grafów

149

Zliczanie powyższych grafów jest w gruncie rzeczy wersją

znanego zadania kombinatorycznego: na ile sposobów można po-
sadzić przy okrągłym stole n osób (w tym wypadku cztery osoby),
jeśli istotne jest to, kto z kim sąsiaduje, a nie jak położone jest
miejsce siedzenia każdej osoby w stosunku do otoczenia?

Gdyby przy rozmieszczaniu gości przy stole brać pod uwagę

ich położenie w stosunku do otoczenia, należałoby rozważać, np.
następujące grafy, gdzie o

i

, i = 1, 2, 3, 4, ..., symbolizują otoczenie

(można też rozważać grafy nieco prostsze).

σ(2)

σ(1)

σ(4)

σ(3)

o

1

o

2

o

3

o

4

Takich grafów, przy założeniu, że wierzchołki o

i

nie permutują

się, jest 4! = 24.

(iii) Weźmy pod uwagę graf nieoznakowany o 6 wierzchołkach, w któ-

rych każdy wierzchołek jest połączony z każdym innym jedną
krawędzią.

Nietrudno zauważyć, ze grafowi temu odpowiada jeden graf ozna-
kowany przy użyciu symboli 1, 2, 3, 4, 5, 6.

background image

150

Główne pojęcia teorii grafów

7.2

Podstawowe definicje teorii grafów

W podrozdziale tym oraz w podrozdziałach następnych rozważać

będziemy grafy nieskierowne. Nazywać je będziemy po prostu grafami.
Będziemy dopuszczać istnienie krawędzi wielokrotnych, pętli i pętli
wielokrotnych.

Definicja 7.1 Dla dowolnego niepustego zbioru V symbolem P

2

(V )

oznaczamy zbiór wszystkich podzbiorów zbioru V , które mają co najwy-
żej dwa elementy, za wyjątkiem zbioru pustego, tzn.

P

2

(V ) = {{v, w} : v, w ∈ V }.

Uwaga. Z powyższej definicji wynika, że gdy v = w, otrzymuje się
zbiór jednoelementowy.

Definicja 7.2 Niech dane będą dwa niepuste i rozłączne zbiory V oraz
E. Grafem o zbiorze wierzchołków V i zbiorze krawędzi E nazywamy
odwzorowanie

Γ : E → P

2

(V )

przyporządkowujące każdej krawędzi dwa (lub jeden) wierzchołki.

Jeżeli dla e ∈ E, u ∈ Γ(e), to wierzchołek u nazywamy końcem e

lub mówimy, że e jest incydentna z u.

Jeśli card (Γ(e)) = 1, to e nazywamy pętlą.
Jeżeli dla dwóch różnych krawędzi e i f

Γ(e) = Γ(f ),

to e i f nazywamy krawędziami wielokrotnymi.

Definicja 7.3 Jeżeli funkcja Γ : E → P

2

(V ) jest iniekcją, to graf

nazywamy prostym. W przeciwnym przypadku graf nazywamy multi-
grafem.

Uwaga. Graf prosty nie ma krawędzi wielokrotnych w przeciwieństwie
do multigrafu, który takie krawędzie posiada.

Definicja 7.4 Wierzchołek v ∈ V nazywamy izolowanym, jeśli

v /

Γ(E) =

[

e∈E

Γ(e).

background image

Podstawowe definicje teorii grafów

151

Definicja 7.5 Jeśli dla dowolnych wierzchołków u, v ∈ V , card (V ) =
n ­ 2, takich że u 6= v, zachodzi zależność

card (Γ

1

({u, v})) = 1,

to graf nazywamy pełnym i oznaczamy go symbolem K

n

.

Przykład. Grafami pełnymi są poniższe grafy nieoznakowane

K

2

K

3

K

4

K

5

Grafy pełne to te, których dowolne dwa różne wierzchołki połączone
są dokładnie jedną krawędzią.

Definicja 7.6 Graf Γ : E → P

2

(V ) nazywamy k-dzielnym, jeżeli

V = V

1

∪ V

2

∪ ... ∪ V

k

,

gdzie

V

i

∩ V

j

=

dla

1 ¬ i < j ¬ k,

oraz

^

e∈E

_

1¬i<j¬k

(Γ(e) ∩ V

i

6= ∅ ∧ Γ(e) ∩ V

j

= ) .

background image

152

Główne pojęcia teorii grafów

Innymi słowy, w grafie k-dzielnym każda krawędź łączy wierzchołki

należące do dwóch różnych zbiorów V

i

oraz V

j

, i, j = 1, 2, ..., k.

Przykład

(i) Wśród grafów k-dzielnych szczególną rolę odgrywają grafy dwu-

dzielne, czyli takie, dla których V = U ∪ W , V 6= ∅ 6= W ,
U ∩ W = , i każda krawędź grafu łączy wierzchołek u

i

∈ U

z wierzchołkiem w

j

∈ W . Oto kilka przykładów takich grafów.

w

1

w

2

w

3

u

2

u

1

u

3

u

4

u

5

(a)

u

6

w

6

w

5

u

5

u

3

w

4

w

3

u

4

w

2

u

2

u

1

w

1

(b)

background image

Podstawowe definicje teorii grafów

153

w

1

w

2

u

1

u

2

(c)

w

1

u

1

u

2

u

3

(d)

(ii) A oto przykład dwóch grafów trójdzielnych.

w

z

u

(a)

w

1

w

2

u

2

u

1

z

1

z

2

(b)

Definicja 7.7 Pełnym grafem k-dzielnym nazywamy taki graf, że
V
= V

1

∪ V

2

∪ ... ∪ V

k

, zbiory V

i

, i = 1, 2, ..., k, są parami rozłącz-

ne i niepuste oraz każdy wierzchołek v

i

∈ V

i

jest połączony krawędzią

z każdym wierzchołkiem v

j

∈ V

j

, i 6= j, a ponadto wierzchołki należące

do dowolnego ze zbiorów V

i

, i = 1, 2, ..., k, nie są połączone ze sobą.

Jeżeli zachodzą równości card (V

i

) = r

i

, i = 1, 2, ..., k, to pełny graf

k-dzielny oznaczamy symbolem K

r

1

,r

2

,...,r

k

.

Przykład

(i) Graf

w

2

w

1

u

1

u

3

u

2

u

4

jest grafem typu K

4,2

.

background image

154

Główne pojęcia teorii grafów

(ii) Graf

w

1

u

1

u

5

u

4

u

3

u

2

jest grafem typu K

5,1

.

Definicja 7.8 Stopniem deg(v) wierzchołka v ∈ V grafu Γ : E →
P

2

(V ) nazywamy liczbę

card {e ∈ E : v ∈ Γ(e) card Γ(e) = 2}+

+ 2 card {e ∈ E : v ∈ Γ(e) card Γ(e) = 1}.

Powyższa definicja wydaje się skomplikowana, jednak jej sens jest

prosty. Stopień to liczba krawędzi dwuwierzchołkowych incydentnych
z danym wierzchołkiem, powiększona o podwojoną liczbę pętli wycho-
dzących (i wchodzących do wierzchołka).

Przykład. Rozważamy graf

v

7

v

2

v

6

v

3

v

5

v

1

v

4

v

8

Wtedy

deg(v

1

) = 2,

deg(v

2

) = 7, deg(v

3

) = 8, deg(v

4

) = 4,

deg(v

5

) = 4, deg(v

6

) = 9, deg(v

7

) = 2, deg(v

8

) = 0.

background image

Podstawowe definicje teorii grafów

155

Definicja 7.9 Minimalnym i maksymalnym stopniem wierzchołka gra-
fu
Γ : E → P

2

(V ) nazywamy odpowiednio liczby

δ(Γ) = min{deg(v) : v ∈ V }

oraz

∆(Γ) = max{deg(v) : v ∈ V }.

Definicja 7.10 Graf Γ : E → P

2

(V ) nazywamy regularnym stopnia

k ∈

N, jeżeli

δ(Γ) = ∆(Γ) = k.

Przykład. Grafami regularnymi są tzw. grafy platońskie odpowiada-
jące pięciu prawidłowym wielościanom (por. [16, s. 31]).

czworościan

sześcian

ośmiościan

dwunastościan

background image

156

Główne pojęcia teorii grafów

dwudziestościan

Definicja 7.11 Dla grafu Γ : E → P

2

(V ) symbolami d

0

(Γ), d

1

(Γ), ...,

d

k

(Γ), ... oznaczamy liczby wierzchołków grafu mające stopień odpo-

wiednio: zero, jeden, ..., k, itd. A zatem

d

k

(Γ) = card ({v ∈ V : deg(v) = k}),

k ∈

N.

Twierdzenie 7.1 Dla grafu Γ : E → P

2

(V ) zachodzi równość

∆(Γ)

X

k=0

k d

k

(Γ) = 2 card (E).

Dowód twierdzenia jest oczywisty, ponieważ licząc stopnie wierz-

chołków, liczymy dwukrotnie krawędzie dwuwierzchołkowe, a każda pę-
tla zwiększa stopień wierzchołka o dwa.

Przykład. Powyższy wynik pozwala na stwierdzenie, czy istnieje graf,
któremu odpowiada zadany ciąg liczb d

0

(Γ), d

1

(Γ), .... Dla przykładu,

łatwo zauważyć, że nie istnieje graf o dwóch wierzchołkach izolowanych,
jednym wierzchołku stopnia pierwszego, dwóch wierzchołkach stopnia
drugiego i dwóch wierzchołkach stopnia trzeciego, gdyż

2 · 0 + 1 · 1 + 2 · 2 + 2 · 3 = 11,

a ta liczba nie jest podzielna przez 2.

background image

Podstawowe definicje teorii grafów

157

Definicja 7.12 Drogą w grafie Γ : E → P

2

(V ), mającą długość k ∈

N

nazywamy ciąg krawędzi e

1

e

2

...e

k

o tej własności, że kolejne krawędzie

posiadają wspólne wierzchołki, tzn.

^

1¬i¬k−1

Γ(e

i

) Γ(e

i+1

) 6= ∅.

Uwaga. Droga e

1

e

2

...e

k

może być też zapisana jako ciąg wierzchołków

v

1

v

2

...v

k+1

, gdzie Γ(e

i

) = {v

i

, v

i+1

}, i = 1, 2, ..., k. Jednak ciąg wierz-

chołków nie określa jednoznacznie drogi w przypadku multigrafu.

Przykład. Niech dany będzie następujący multigraf:

v

1

v

2

v

3

v

4

v

5

a

b

c

d

e

f

g

Wtedy droga acdf może być zapisana jako v

1

v

2

v

3

v

4

v

4

. Zwróćmy

uwagę na to, że ostatni zapis odpowiada także drogom acef , abdf ,
abef .

Definicja 7.13 Drogę e

1

e

2

...e

k

nazywamy zamkniętą, jeżeli odpowiada

jej ciąg wierzchołków v

1

v

2

...v

k

v

1

.

Definicja 7.14 Drogę e

1

e

2

...e

k

nazywamy prostą, jeżeli e

i

6= e

j

dla

i, j = 1, 2, ...k, i 6= j.

Definicja 7.15 Prostą drogę zamkniętą e

1

e

2

...e

k

= v

1

v

2

...v

k

v

1

nazy-

wamy cyklem, jeżeli v

i

6= v

j

dla i, j = 1, 2, ..., k, i 6= j.

background image

158

Główne pojęcia teorii grafów

Przykład. Rozważamy graf

v

1

v

2

v

3

v

4

v

5

v

4

e

1

e

6

e

5

e

9

e

3

e

2

e

8

e

4

e

7

e

10

Wtedy e

1

e

5

e

7

e

8

e

4

, e

10

e

6

e

6

e

9

e

6

e

4

, e

7

e

5

e

5

e

5

e

5

e

6

są przykładami dróg.

Z kolei drogi e

1

e

5

e

5

e

1

, e

4

e

7

e

8

e

2

e

3

czy e

9

są przykładami dróg zamknię-

tych. Przy okazji zauważmy, że niekiedy samo wypisanie symboli kra-
wędzi może być niejednoznaczne. Dla przykładu, są dwie drogi za-
mknięte opisane symbolami e

2

e

3

, a mianowicie drogi v

1

v

4

v

1

oraz v

4

v

1

v

4

.

Jak zatem widać, niekiedy wygodniej jest posłużyć się ciągiem wierz-
chołków.

Drogami prostymi zamkniętymi są na przykład: e

5

, e

9

, e

2

e

3

=

v

1

v

4

v

1

, e

2

e

4

e

5

e

1

, e

2

e

3

e

4

e

7

e

8

= v

4

v

1

v

4

v

2

v

5

v

4

.

Pierwsze trzy z powyższych dróg są przy tym cyklami, w przeci-

wieństwie do ostatniej drogi prostej.

Informację na temat tego, w jaki sposób połączone są ze sobą wierz-

chołki grafu zawiera tzw. macierz sąsiedztwa. Oto jej definicja:

Definicja 7.16 Macierzą sąsiedztwa grafu Γ : E → P

2

(V ) o n wierz-

chołkach v

1

, v

2

, ..., v

n

nazywamy macierz S mającą tę własność, że jej

dowolny wyraz s

ik

jest równy liczbie krawędzi łączących wierzchołek v

i

z wierzchołkiem v

k

, gdzie i, j = 1, 2, ..., n.

Stwierdzenie. Dla dowolnego grafu Γ : E → P

2

(V )

S = S

T

,

gdzie po prawej stronie znaku równości występuje macierz transpono-
wana macierzy S.

background image

Podstawowe definicje teorii grafów

159

Przykład. Niech dany będzie graf

v

1

v

2

v

4

v

6

v

5

v

3

v

7

e

1

e

2

e

3

e

4

e

6

e

5

e

7

e

8

Odpowiada mu macierz sąsiedztwa

S =












0 0 0 0 0 0 0
0 0 0 2 0 0 0
0 0 1 0 1 0 0
0 2 0 0 1 2 0
0 0 1 1 0 0 1
0 0 0 2 0 0 0
0 0 0 0 1 0 0












Macierz sąsiedztwa pozwala na znalezienie liczby dróg długości m,

m ∈

N

+

, łączących dowolne dwa wierzchołki grafu. Zachodzi mianowi-

cie twierdzenie

Twierdzenie 7.2 Jeżeli S jest macierzą sąsiedztwa grafu Γ : E →
P

2

(V ), gdzie card (V ) = n, to liczba dróg długości m, m ∈

N

+

, łą-

czących dowolny wierzchołek v

i

z dowolnym wierzchołkiem v

k

, i, k =

1, 2, ..., n, jest równa s

(m)
ik

, gdzie ten ostatni symbol oznacza wyraz ma-

cierzy S

m

znajdujący się w i-tym wierszu i k-tej kolumnie tej macierzy.

Dowód. Przeprowadzimy indukcję względem m ∈

N

+

. Dla m = 1

równość jest oczywista. Załóżmy, że jest ona także prawdziwa dla
m ∈

N

+

.

Z wierzchołka v

i

do wierzchołka v

k

, i, k = 1, 2, ..., n, można przejść

wzdłuż m+1 krawędzi na jeden ze sposobów zilustrowanych poniższym
diagramem.

background image

160

Główne pojęcia teorii grafów

v

1

v

2

v

i

v

k

v

j

v

n

s

(m)
i1

s

(m)
i2

s

(m)
ij

s

(m)
in

s

1k

s

2k

s

jk

s

nj

Tak więc, po przejściu m krawędzi możemy dojść do wierzchołka

v

1

na s

(m)
i1

sposobów, do wierzchołka v

2

na s

(m)
i2

sposobów, itd. Z kolei

z wierzchołka v

1

do wierzchołka v

k

prowadzi s

1k

krawędzi, z wierzchołka

v

2

do v

k

prowadzi s

2k

krawędzi itd.

Ostatecznie wszystkich dróg długości m + 1 od v

i

do v

k

jest

s

(m)
ik

=

n

X

j=1

s

(m)
ij

s

jk

,

co kończy dowód twierdzenia.

2

Przykład. Weźmy pod uwagę ten sam graf, co w poprzednim przy-
kładzie. Obliczmy S

3

. Aby to uczynić, najpierw obliczamy S

2

.

S

2

=












0 0 0 0 0 0 0
0 4 0 0 2 4 0
0 0 2 1 1 0 1
0 0 1 9 0 0 1
0 2 1 0 3 2 0
0 4 0 0 2 4 0
0 0 1 1 0 0 1












background image

Podstawowe definicje teorii grafów

161

Następnie obliczamy S

3

.

S

3

=












0

0

0

0

0

0

0

0

0

2 18

0

0

2

0

2

3

1

4

2

1

0 18 1

0

11 18 0

0

0

4 11

1

0

3

0

0

2 18

0

0

2

0

2

1

0

3

2

0












Zauważmy na przykład, że zgodnie z powyższą macierzą, dróg dłu-

gości 3, wiodących z v

4

do v

5

jest 11. Wypiszmy te drogi:

e

1

e

2

e

5

, e

2

e

1

e

5

, e

3

e

4

e

5

, e

4

e

3

e

5

, e

5

e

5

e

5

, e

5

e

7

e

7

,

e

5

e

8

e

8

, e

1

e

1

e

5

, e

2

e

2

e

5

, e

3

e

3

e

5

, e

4

e

4

e

5

.

Kolejnym ważnym pojęciem, które należy wprowadzić, jest pojęcie

podgrafu.

Definicja 7.17 Niech dany będzie graf Γ : E → P

2

(V ). Podgrafem

tego grafu nazywamy dowolny graf Γ

1

: E

1

→ P

2

(V

1

), taki że E

1

⊂ E,

V

1

⊂ V oraz

^

e∈E

1

Γ

1

(e) = Γ(e).

Inaczej mówiąc, podgraf danego grafu to graf, który powstaje z da-

nego grafu przez ewentualne usunięcie kilku krawędzi lub wierzchołków.

Przykład. Podgrafami grafu rozważanego w ostatnich dwóch przykła-
dach są na przykład grafy (pomijamy dla uproszczenia symbole kra-
wędzi).

v

4

v

2

v

6

v

5

v

3

v

7

(i)

v

1

(ii)

v

2

v

4

v

5

v

7

(iii)

background image

162

Główne pojęcia teorii grafów

Natomiast podgrafami nie są poniższe diagramy,

v

4

v

6

v

3

v

7

(iv)

v

7

v

3

(v)

które powstały odpowiednio poprzez usunięcie z grafu wyjściowego
wierzchołków v

1

, v

2

, v

5

- w przypadku (v) - wierzchołków v

1

, v

2

, v

4

, v

5

, v

6

oraz krawędzi e

1

, e

2

, e

3

, e

4

, e

6

.

Szczególnie ważnym pojęciem w teorii grafów jest pojęcie izomor-

fizmu grafów, pozwalające na nieodróżnianie grafów (i ich rysunków),
które mają te same własności.

Definicja 7.18 Dwa grafy Γ

1

: E

1

→ P

2

(V

1

) i Γ

2

: E

2

→ P

2

(V

2

)

nazywamy izomorficznymi, jeżeli istnieją bijekcje ϕ : E

1

→ E

2

i ψ :

V

1

→ V

2

, takie że

^

e∈E

1

^

u,w∈V

1

Γ

1

(e) = {u, w} ⇔ Γ

2

(ϕ(e)) = (u), ψ(w)}.

Uwaga. Sens powyższej definicji jest następujący. Grafy są izomor-
ficzne wtedy i tylko wtedy, gdy odpowiadającym sobie krawędziom
odpowiadają również incydentne z nimi pary wierzchołków. Powyższa
definicja może być znacznie uproszczona, gdy rozważa się grafy proste,
ponieważ w tym przypadku każda krawędź e grafu może być utoż-
samiona z incydentnymi z nią wierzchołkami u i w (w szczególnym
przypadku, gdy e jest pętlą, u = w), tzn. e = {u, w}.

W dalszym ciągu, jeśli wierzchołki u i w mają powyższą własność,

tzn. {u, w} ∈ E, czyli są wierzchołkami sąsiednimi, zapisywać to bę-
dziemy w postaci u ∼ w.

Tego samego symbolu używać będziemy dla zaznaczenia, że

wierzchołki sąsiadują ze sobą, bez względu na to jaki graf rozważa-
my.

background image

Spójność grafów

163

Tak więc zachodzi wniosek

Wniosek. Grafy proste Γ

1

: E

1

→ P

2

(V

1

) i Γ

2

: E

2

→ P

2

(V

2

) są

izomorficzne, jeżeli istnieje bijekcja ψ : V

1

→ V

2

oraz

^

u,w∈V

1

u ∼ w ⇔ ψ(u) ∼ ψ(w).

Przykład.

(i) Dwa poniższe grafy proste są w oczywisty sposób izomorficzne.

c

e

d

b

f

a

a

0

b

0

f

0

e

0

d

0

c

0

(ii) Z kolei następujące grafy nie są izomorficzne, mimo iż mają tyle

samo wierzchołków odpowiednich stopni oraz taką samą ilość kra-
wędzi. Jednak drugi z grafów ma cykl długości osiem: wqrspvtuw,
podczas gdy graf pierwszy takiego cyklu nie posiada.

a

d

c

b

e

h

g

f

p

s

r

q

u

w

v

t

7.3

Spójność grafów

Definicja 7.19 Graf niepusty Γ : E → P

2

(V ) nazywać będziemy spój-

nym, jeżeli dowolne dwa jego wierzchołki mogą być połączone drogą.
W przeciwnym wypadku graf nazywać będziemy niespójnym.

background image

164

Główne pojęcia teorii grafów

Definicja 7.20 Składową niespójnego grafu Γ : E → P

2

(V ) nazywać

będziemy każdy maksymalny spójny podgraf tego grafu, tzn. taki podgraf,
który po dołączeniu kolejnego wierzchołka grafu
Γ, wraz z incydentnymi
z nim krawędziami przestaje być spójny.

Przykład. Graf

p

r

q

s

t

u

w

jest niespójny. Składa się z trzech składowych.

Definicja 7.21 Niech dany będzie graf Γ : E → P

2

(V ).

Zbiór E

1

⊂ E, taki ze graf Γ po usunięciu krawędzi należących do

E przestaje być grafem spójnym, nazywać będziemy zbiorem rozspaja-
jącym.

Zbiór V

1

⊂ V o tej własności, że usunięcie z grafu Γ wierzchołków

należących do V

1

wraz z incydentnymi z nimi krawędziami powoduje,

że Γ przestaje być grafem spójnym, nazywać będziemy zbiorem rozdzie-
lającym.

Rozcięciami nazywać będziemy zarówno zbiory rozspajające, jak

i rozcinające, takie że ich podzbiory właściwe nie są odpowiednio zbio-
rami rozspajającymi lub rozcinającymi.

Liczby λ(Γ) = card (E

1

) oraz k(Γ) = card (V

1

), gdzie E

1

oraz V

1

rozcięciami o najmniejszych liczbach elementów, nazywamy odpowied-
nio spójnością krawędziową i spójnością wierzchołkową.

Twierdzenie 7.3 ([16, s. 43]) Załóżmy, że Γ : E → P

2

(V ) jest gra-

fem prostym mającym n składników. Wtedy

card (V ) − n ¬ card (E) ¬

1

2

(card (V ) − n)(card (V ) − n + 1).

Dowód twierdzenia jest nieskomplikowany. Wykorzystuje on induk-

cję w stosunku do liczby krawędzi grafu.

background image

Spójność grafów

165

Z powyższego twierdzenia wynika natomiast następujące

Twierdzenie 7.4 Jeżeli dla grafu prostego Γ : E → P

2

(V ) zachodzi

nierówność

card (E) >

1

2

(card (V ) 1)(card (V ) 2),

to graf ten jest spójny.

Zauważmy, że zachodzi następujący wynik

Twierdzenie 7.5 ([8, s.12]) Jeżeli graf Γ : E → P

2

(V ) ma więcej

niż jeden wierzchołek, to

k(Γ) ¬ λ(Γ) ¬ δ(Γ).

Dowód. Dowiedziemy najpierw nierówności k(Γ) ¬ λ(Γ).

Niech E

1

będzie dowolnym minimalnym zbiorem krawędzi, takim

że graf Γ

1

: E \ E

1

→ P

2

(V ) jest niespójny. Należy wykazać, że

k(Γ) ¬ card (E

1

). Jeżeli graf Γ ma wierzchołek, który nie jest incy-

dentny z żadną z krawędzi ze zbioru E

1

, to jeżeli Γ

2

jest składową Γ

1

zawierającą v, to wierzchołki Γ

2

incydentne z krawędziami z E

1

od-

dzielają v od grafu, który powstaje z Γ poprzez usunięcie składowej
Γ

2

. Jednak takich wierzchołków jest co najwyżej card (E

1

), ponieważ

żadna krawędź z E

1

nie ma obu wierzchołków należących do zbioru Γ

2

.

A zatem k(Γ) ¬ card (E

1

).

Z kolei załóżmy, że dowolny wierzchołek G jest incydentny z jakąś

krawędzią należącą do E

1

. Niech v będzie dowolnym takim wierzchoł-

kiem, a Γ

2

będzie składową Γ

1

zawierającą v. Wtedy wierzchołki u

sąsiadujące z v, takie że {u, v} /

∈ E

1

należą do Γ

2

i są incydentne

z różnymi krawędziami z E

1

. Stąd wynika, że deg(v) ¬ card (E

1

). Po-

nieważ zbiór U wszystkich wierzchołków sąsiadujących z v oddziela v
od pozostałych wierzchołków grafu Γ, więc k(Γ) ¬ card (E

1

), chyba że

nie ma innych wierzchołków, czyli {v} ∪ U = V . Jednak v jest wierz-
chołkiem dowolnym, więc możemy przyjąć, że Γ jest grafem pełnym,
skąd wynika, że k(Γ) = λ(Γ) = card (V ) 1.

background image

166

Główne pojęcia teorii grafów

Nierówność druga zawarta w tezie twierdzenia wynika stąd, że

wszystkie krawędzie incydentne z ustalonym wierzchołkiem rozspajają
graf Γ.

2

Przykład. Dla grafu C

n

mamy oczywiście k(C

n

) = λ(C

n

) = 2.

v

n

v

1

v

3

v

2

background image

8

Poruszanie się po grafach

8.1

Grafy Eulera

Teoria grafów Eulera bierze swój początek od tak zwanego proble-

mu mostów królewieckich, który został postawiony i rozwiązany w ro-
ku 1736 przez szwajcarskiego matematyka Leonarda Eulera. Problem
ten sprowadza się do odpowiedzi na następujące pytanie: czy można
przejść przez wszystkie mosty Królewca dokładnie jeden raz i powrócić
do punktu wyjścia?

Schematyczny plan Królewca (K¨

onigsbergu)

background image

168

Poruszanie się po grafach

Rozwiązując powyższe zadanie, Euler odwołał się do grafu, w któ-

rym wierzchołki reprezentują obszary lądu stałego (l

1

i l

2

) oraz wy-

spy (w

1

i w

2

), natomiast mosty są przedstawione za pomocą krawędzi.

Tak więc, problem został sprowadzony do takiego przebycia poniższe-
go grafu, aby każda krawędź została odwiedzona jednokrotnie i aby
wierzchołek końcowy był równy wierzchołkowi początkowemu.

w

1

w

2

l

1

l

2

Euler zauważył, że droga o tych własnościach nie istnieje. Podał

też wynik bardziej ogólny, który przedstawiony zostanie poniżej.

Sformułowanie tego wyniku poprzedzimy definicjami.

Definicja 8.1 Drogą Eulera w grafie nazywać będziemy drogę prostą
w tym grafie, która zawiera wszystkie krawędzie danego grafu.

Definicja 8.2 Cyklem Eulera nazywać będziemy zamkniętą drogę Eu-
lera.

Definicja 8.3 Graf nazywać będziemy grafem Eulera albo grafem eu-
lerowskim, jeśli istnieje w nim cykl Eulera. Graf, który ma drogę Eu-
lera, ale nie ma cyklu Eulera nazywamy semi-eulerowskim lub pół-
eulerowskim.

Twierdzenie 8.1 (Eulera) Niech dany będzie graf spójny. Jest on
grafem eulerowskim wtedy i tylko wtedy, gdy wszystkie jego wierzchołki
są stopnia parzystego.

Dowód. W dalszym ciągu załóżmy, że card (V ) ­ 2, gdyż w przeciw-
nym przypadku twierdzenie staje się trywialne. Załóżmy dalej, że naj-
krótsza droga prosta w danym grafie jest postaci e

1

e

2

...e

k

= v

1

v

2

...v

k+1

,

gdzie k ¬ card (E). Wykażemy, że v

1

= v

k+1

oraz że card (E) = k.

background image

Grafy Eulera

169

Po pierwsze, zauważmy, że mogą zachodzić równości v

i

= v

k+1

dla

i = 2, ..., k. Jeśli tak jest istotnie, to wierzchołek v

k+1

ma stopień nie-

parzysty w grafie Γ

1

utworzonym z wierzchołków v

1

, v

2

, ..., v

k+1

oraz

krawędzi e

1

, e

2

, ..., e

k

. Rzeczywiście, każde „przejście” przez ten wierz-

chołek oznacza „wykreślenie” z drogi e

1

e

2

...e

k

dwóch krawędzi. Ponad-

to droga kończy się krawędzią e

k

, która dochodzi do wierzchołka v

k+1

.

v

k+1

= v

l+1

v

k

v

l+1

v

l

Zatem w grafie Γ

1

wierzchołek ten ma stopień nieparzysty. Ponie-

waż jednak wszystkie wierzchołki danego grafu, na mocy założenia,
są stopnia parzystego, więc z wierzchołka v

k+1

wychodzi jeszcze jedna

krawędź. Jeśli v

k+1

6= v

1

, to dołączenie tej krawędzi do danej drogi

prostej powoduje wydłużenie jej do k + 1 krawędzi. Jest to sprzeczne
z tym, co przyjęliśmy, a mianowicie, że droga e

1

e

2

...e

k

jest najdłuższą

drogą prostą w grafie. Dlatego v

1

= v

k+1

.

Oczywiście, do każdej drogi prostej należeć muszą wszystkie wierz-

chołki grafu. Gdyby tak nie było, to łącząc (a jest to możliwe na mocy
założenia spójności grafu) wierzchołek v

0

nienależący do Γ

1

, ale sąsia-

dujący z jednym z wierzchołków tego grafu, z tymże wierzchołkiem,
otrzymaliśmy drogę prostą dłuższą od danej.

W podobny sposób można uzasadnić to, że wszystkie krawędzie

grafu muszą należeć do drogi e

1

e

2

...e

k

.

Załóżmy, że graf jest eulerowski. Wtedy „przejście” przez każdy

wierzchołek cyklu Eulera powoduje zmniejszenie stopnia tego wierz-
chołka o 2. W przypadku wierzchołka pierwszego - i zarazem ostatnie-
go - w cyklu, krawędzi wychodzącej odpowiada krawędź dochodząca.
Zatem stopień każdego wierzchołka grafu jest liczbą parzystą.

2

background image

170

Poruszanie się po grafach

Uwaga. W dowodzie drugiej implikacji nie korzystaliśmy z założenia
spójności grafu.

Uwaga. Rozwiązując zagadnienie mostów królewieckich, można odwo-
łać się także do grafu prostego, a mianowicie grafu, w którym zarówno
mosty jak i obszary lądowe są reprezentowane przez wierzchołki.

Przykład ten pokazuje, że w wielu przypadkach zamiast multigra-

fów wystarczy posłużyć się grafami prostymi.

Wniosek. Niech dany będzie graf spójny. Graf ten jest semi-eulerowski
wtedy i tylko wtedy, gdy wszystkie wierzchołki grafu, poza dwoma,
które mają stopień nieparzysty, są stopnia parzystego.

Dowód. Teza twierdzenia jest konsekwencją tego, że jeśli dwa wierz-
chołki stopnia nieparzystego w danym grafie połączymy krawędzią, to
uzyskamy graf mający cykl Eulera, którego wszystkie wierzchołki są
stopnia parzystego.

2

Powyższe twierdzenie oraz wniosek nie podają niestety metody

konstruowania cyklu lub drogi Eulera, jeżeli takie istnieją. W tym sen-
sie wyniki te są niekonstruktywne. Metoda konstrukcji odpowiedniej
drogi lub cyklu Eulera zawarta jest w tzw. algorytmie Fleury’ego, któ-
ry zostanie podany bez dowodu (por. [15, s. 346-350]).

background image

Grafy Eulera

171

Algorytm Fleury’ego

1

Jeśli graf ma wierzchołek stopnia nieparzystego, należy wybrać w
dowolny sposób taki wierzchołek. Jeżeli graf nie ma wierzchołków
stopnia nieparzystego, to wybieramy dowolny wierzchołek tego
grafu. Wybrany wierzchołek oznaczamy symbolem u.

2

Jeżeli z wierzchołka u nie wychodzi żadna krawędź, to należy
zatrzymać algorytm.

3

Jeżeli z u wychodzi jedna krawędź e = uv, to należy usunąć
e ze zbioru krawędzi E grafu i zarazem usunąć u ze zbioru V
wierzchołków tego grafu. Następnie należy przejść do punktu 5

.

4

Jeżeli z u wychodzą co najmniej dwie krawędzie, to należy wybrać
taką krawędź e = uv, aby graf po jej usunięciu pozostał spójny.
Krawędź tę usuwamy ze zbioru E krawędzi.

5

Należy dopisać e do ciągu krawędzi tworzących drogę lub cykl
Eulera. Podobnie należy dopisać v do ciągu wierzchołków opisu-
jących tę drogę.

6

Należy zastąpić wierzchołek u przez wierzchołek v i przejść do
punktu 2

.

Przykład. Zastosujmy algorytm Fleury’ego do grafu

v

3

v

1

v

7

v

4

v

2

v

5

v

8

v

6

e

1

e

4

e

3

e

5

e

2

e

7

e

8

e

9

e

6

e

10

e

12

e

11

e

13

e

14

Zauważmy najpierw, że jedynie dwa wierzchołki w grafie, v

1

i v

7

,

są stopnia nieparzystego. Tak więc graf jest semi-eulerowski. Zgodnie

background image

172

Poruszanie się po grafach

z algorytmem Fleury’ego wybieramy jako początek drogi Eulera jeden
z wierzchołków stopnia nieparzystego, powiedzmy v

1

. Następnie wybie-

ramy jedną z trzech krawędzi wychodzących z tego wierzchołka, np. e

1

.

Usuwamy tę krawędź ze zbioru E i przechodzimy do wierzchołka v

3

.

Z wierzchołka v

3

wychodzi już tylko jedna krawędź - e

4

. Dopisujemy

ją do ciągu krawędzi tworzącego drogę Eulera, podobnie wierzchołek
v

3

dopisujemy do ciągu wierzchołków. Przechodzimy do v

7

. Kontynu-

ując powyższe rozumowanie, możemy otrzymać np. następującą drogę
Eulera

v

1

v

3

v

7

v

8

v

6

v

2

v

6

v

8

v

5

v

2

v

1

v

4

v

5

v

4

v

7

=

= e

1

e

4

e

6

e

14

e

12

e

11

e

13

e

10

e

9

e

2

e

3

e

7

e

8

e

5

.

Nie jest to oczywiście jedyna droga Eulera w tym grafie.

8.2

Grafy Hamiltona

Obok dróg i cykli Eulera rozpatruje się też tzw. drogi i cykle

Hamiltona przechodzące przez każdy wierzchołek grafu dokładnie jeden
raz.

Definicja 8.4 Drogą Hamiltona w grafie nazywamy taką drogę, która
przez każdy wierzchołek przechodzi dokładnie raz.

Definicja 8.5 Cyklem Hamiltona w grafie nazywamy drogę Hamilto-
na, która jest zamknięta, tzn. ostatni wierzchołek cyklu Hamiltona jest
równy wierzchołkowi początkowemu.

Definicja 8.6 Graf, który ma cykl Hamiltona nazywać będziemy gra-
fem Hamiltona albo grafem hamiltonowskim.

Graf, który ma drogę Hamiltona, ale nie ma cyklu Hamiltona, na-

zywać będziemy grafem semi-hamiltonowskim albo pół-hamiltonowskim.

Teoria grafów hamiltonowskich i semi-hamiltonowskich jest znacz-

nie bardziej skomplikowana niż teoria grafów eulerowskich i semi-eule-
rowskich. W szczególności, jak dotąd, nieznane jest twierdzenie, które
zawierałoby warunki konieczne i wystarczające na to, by graf skoń-
czony i spójny miał cykl lub drogę Hamiltona. Dlatego ograniczy-
my się do przedstawienia kilku twierdzeń podających jedynie warunki

background image

Grafy Hamiltona

173

dostateczne, aby graf był hamiltonowski, a następnie przedstawimy
warunek konieczny, który muszą spełnić grafy hamiltonowskie i semi-
hamiltonowskie dwudzielne.

Twierdzenie 8.2 (Orego) Jeżeli dla grafu prostego Γ : E → P

2

(V ),

takiego że card (V ) ­ 3, zachodzą nierówności

deg(u) + deg(v) ­ card (V )

dla dowolnych dwóch wierzchołków u i v niesąsiadujących ze sobą, to
Γ jest grafem hamiltonowskim.

Dowód. Załóżmy, że dla grafu Γ spełnione są powyższe nierówności
lecz graf nie ma cyklu Hamiltona. Wtedy, dodając do Γ odpowiednią
ilość krawędzi, możemy otrzymać graf Γ

1

, który jest już grafem hamil-

tonowskim. Usuwając z Γ

1

jedną krawędź, uzyskujemy z kolei graf Γ

2

,

który ma drogę Hamiltona, ale nie ma cyklu Hamiltona. Przyjmijmy,
że wspomnianą drogą Hamiltona jest ciąg

u

1

u

2

...u

k−1

u

k

,

k = card (V ).

Wierzchołki u

1

i u

k

nie są połączone krawędzią, gdyż gdyby tak

było, otrzymalibyśmy cykl Hamiltona. A zatem w Γ

2

deg(u

1

) + deg(u

k

) ­ card (V ),

ponieważ dodanie krawędzi do grafu Γ zachowuje nierówności zawarte
w założeniu twierdzenia. Z powyższej nierówności wynika, że istnie-
ją takie wierzchołki u

i

oraz u

i−1

, że u

i

sąsiaduje z wierzchołkiem u

1

,

natomiast u

i−1

sąsiaduje z wierzchołkiem u

k

.

u

1

u

2

u

i−1

u

i

u

k

Jednak w takim przypadku otrzymujemy cykl Hamiltona

u

i

u

i+1

...u

k

u

i−1

u

i−2

...u

1

u

i

,

co jest sprzeczne z założeniem, że graf nie jest hamiltonowski.

2

background image

174

Poruszanie się po grafach

Z powyższego twierdzenia wynika natomiast

Twierdzenie 8.3 (Diraca) Niech dany będzie graf prosty Γ : E →
P

2

(V ), taki że card (V ) ­ 3. Jeżeli dla dowolnego wierzchołka u tego

grafu zachodzi nierówność

deg(u) ­

1

2

card (V ),

to graf jest hamiltonowski.

Zachodzi również twierdzenie, które w przypadku grafów dwudziel-

nych podaje warunki konieczne na to, by graf był hamiltonowski lub
semi-hamiltonowski; zob. [15, s. 379].

Twierdzenie 8.4 Niech dany będzie graf dwudzielny Γ : E → P

2

(V ),

gdzie U i W tworzą podział jego wierzchołków. Wtedy, jeśli graf jest
hamiltonowski, to
card (U ) = card (W ). Jeśli natomiast graf jest semi-
hamiltonowski, to |
card (U ) card (W )| = 1.

Przykład

(i) Każdy graf pełny K

n

, n ­ 1, jest grafem hamiltonowskim.

(ii) Graf ośmiościanu jest także grafem Hamiltona.

u

5

u

4

u

6

u

3

u

1

u

2

Cykl Hamiltona tworzy np. ciąg wierzchołków u

1

u

2

u

3

u

4

u

5

u

6

u

1

.

background image

Grafy Hamiltona

175

(iii) Z kolei graf

u

1

w

1

u

2

w

2

u

3

w

3

u

4

w

4

u

5

w

5

u

6

w

6

u

7

w

7

u

8

w

8

u

9

w

9

u

10

w

10

u

11

w

11

u

12

w

12

u

13

jest dwudzielny. Zbiory

U = {u

1

, u

2

, u

3

, u

4

, u

5

, u

6

, u

7

, u

8

, u

9

, u

10

, u

11

, u

12

, u

13

}

i

W = {w

1

, w

2

, w

3

, w

4

, w

5

, w

6

, w

7

, w

8

, w

9

, w

10

, w

11

, w

12

}

stanowią podział zbioru wierzchołków, taki że

card (U ) card (W ) = 1.

Jest to więc graf semi-hamiltonowski. Znalezienie odpowiedniej
drogi Hamiltona jest bardzo proste.

(iv) Rozważmy graf nieoznakowany.

Jest to, jak nietrudno zauważyć, graf dwudzielny.

background image

176

Poruszanie się po grafach

Rzeczywiście, jeśli wierzchołki należące do obu zbiorów tworzą-
cych podział V = U ∪ W oznaczymy odpowiednio kropkami pu-
stymi i pełnymi, to otrzymamy graf

W tym przypadku card (U ) = 13, card (W ) = 11, a zatem graf
nie jest ani hamiltonowski ani semi-hamiltonowski.

8.3

Grafy z wagami

Definicja 8.7 Graf Γ : E → P

2

(V ) nazywać będziemy grafem z waga-

mi, jeśli istnieje funkcja w : E →

R przypisująca każdej krawędzi e jej

wagę w(e).

Uwaga. Wagi krawędzi reprezentują zazwyczaj takie wielkości jak:
odległość, czas lub koszt, a zatem zazwyczaj przyjmujemy, że zachodzi
w(e) > 0.

W dalszym ciągu będziemy rozpatrywać grafy o wagach dodatnich.

W przypadku, gdy wierzchołki nie są połączone krawędzią, będziemy
przyjmować, że owej „wirtualnej” krawędzi odpowiada waga równa ze-
ro.

Definicja 8.8 Niech dany będzie graf postaci Γ : E → P

2

(V ), gdzie

card (V ) = k ­ 2. Macierz

H = [h

ij

]

k×k

= [h(u

i

, u

j

)]

k×k

,

gdzie h

ij

jest wagą odpowiedniej krawędzi łączącej wierzchołki u

i

oraz u

j

lub h

ij

= 0, jeżeli taka krawędź nie istnieje, nazywać będziemy macierzą

wag grafu Γ.

background image

Grafy z wagami

177

Definicja 8.9 Długością albo wagą drogi d = e

1

e

2

...e

n

nazywać będzie-

my liczbę

w(d) =

n

X

i=1

w(e

i

).

Szczególnie ważnym zagadnieniem teorii grafów z wagami jest pro-

blem polegający na znalezieniu drogi łączącej dwa dowolne wierzchołki
grafu, której waga jest najmniejsza. Problem ten rozwiązuje tzw. algo-
rytm Dijkstry, który przedstawiony jest poniżej. Dla ustalenia uwagi
załóżmy, że chcemy znaleźć drogę o najmniejszej wadze z wierzchołka
u do wierzchołka w (por. [7, s. 178]).

Algorytm Dijkstry

1

Przyjmijmy

l(v) =

(

0

jeśli v = u,

jeśli v 6= u.

Równość l(u) = 0 będziemy traktować jako ustaloną. Wielkości
l(v), v 6= u, są zmienne. Podstawiamy p = u.

2

Dla wszystkich wierzchołków v połączonych z p krawędzią, dla
których wielkości l(v) są zmienne, należy dokonać podstawienia

l(v) := min{l(v), l(p) + h(p, v)}.

3

Wśród tych wierzchołków, którym odpowiadają wielkości zmien-
ne, należy znaleźć najmniejszą, tzn.

l(v) = min{l(v)}.

4

Należy przyjąć, że l(v) jest wielkością ustaloną i podstawić p = v.

5

Jeżeli p = w, to l(p) jest wagą najkrótszej drogi z u do w. Należy
zatrzymać algorytm. Jeżeli p 6= w, należy przejść do punktu 2

.

Dowód poprawności algorytmu. Dowód ma charakter indukcyjny.
Oczywiście, gdy u = w to l(w) = 0 daje rzeczywiście wagę najkrótszej
drogi z u do w.

Załóżmy, że po wykonaniu pewnej liczby kroków algorytmu wielko-

ści l(v) są ustalone dla wierzchołków v należących do pewnego zbioru

background image

178

Poruszanie się po grafach

V

1

oraz są nieustalone dla wierzchołków ze zbioru V

2

. Po wykonaniu

kroku 2

, w trakcie każdej iteracji wielkości l(v), v ∈ V

2

, są równe naj-

krótszym drogom z wierzchołka u do wierzchołków v, które przechodzą
jedynie przez wierzchołki należące do V

1

.

Załóżmy, że najkrótsza droga z u do v przechodzi przez co naj-

mniej jeden wierzchołek ze zbioru V

2

. Niech v

0

będzie pierwszym takim

wierzchołkiem. Ponadto, h

ij

­ 0, więc droga z v

0

do v (będąca częścią

wspomnianej najkrótszej drogi) ma nieujemną wagę a. Dodatkowo

l(v

0

) < l(v) − a < l(v).

Jest to sprzeczne z założeniem, że l(v) jest najmniejszą zmienną wiel-
kością. A zatem najkrótsza droga z u do v przechodzi tylko przez wierz-
chołki za zbioru V

1

. Wielkość l(v) jest jej wagą.

Zauważmy, że przy każdej iteracji do zbioru V

1

(na początku wy-

korzystywania algorytmu V

1

= {u}) dodajemy kolejne wierzchołki. Po

skończonej liczbie kroków w ∈ V

1

, czyli l(w) jest wagą najkrótszej drogi

z u do w.

Przykład. Niech dany będzie graf z wagami.

u

1

u

3

u

7

u

4

u

6

u

5

u

2

u

8

u

9

u

10

3

1

2

1

2

5

4

7

1

1

3

1

1

1

2

5

2

1

background image

Grafy z wagami

179

Należy znaleźć, korzystając z algorytmu Dijkstry, najkrótszą drogę

(drogę o najmniejszej wadze) z wierzchołka u

1

do wierzchołka u

10

.

Wypiszemy najpierw macierz wag H = [h(u

i

, u

j

)]

10×10

odpowiada-

jącą temu grafowi.

u

1

u

2

u

3

u

4

u

5

u

6

u

7

u

8

u

9

u

10

u

1

u

2

u

3

u

4

u

5

u

6

u

7

u

8

u

9

u

10



















0

1

3

0

2

0

0

0

0

0

1

0

0

0

0

3

0

5

0

0

3

0

0

1

0

1

0

0

5

0

0

0

1

0

2

0

1

0

0

0

2

0

0

2

0

0

0

0

7

0

0

3

1

0

0

0

1

1

0

0

0

0

0

1

0

1

0

2

1

0

0

5

0

0

0

1

2

0

2

4

0

0

5

0

7

0

1

2

0

1

0

0

0

0

0

0

0

4

1

0



















Przejdźmy do wykonania algorytmu.

1

l(u

1

) = 0 (wielkość ustalona), l(u

i

) = dla i = 2, 3, ..., 10,

p = u

1

.

Iteracja pierwsza.

2

Z wierzchołkiem p sąsiadują wierzchołki u

2

, u

3

, u

5

.

l(u

2

) = min{∞, 0 + 1} = 1,

l(u

3

) = min{∞, 0 + 3} = 3,

l(u

5

) = min{∞, 0 + 2} = 2.

3

Obliczamy

min{1, 3, 2, ∞, ..., ∞} = 1.

Wartość ta odpowiada wierzchołkowi u

2

.

4

l(u

2

) = 1 (wielkość ustalona).

p = u

2

5

Nie wszystkie wierzchołki u

i

mają ustalone wielkości l(u

i

). Należy

przejść do kroku 2

.

background image

180

Poruszanie się po grafach

Iteracja druga

2

Z wierzchołkiem p sąsiadują wierzchołki u

6

i u

8

, dla których l(u

6

)

i l(u

8

) są zmienne. Obliczamy

l(u

6

) = min{∞, 1 + 3} = 4,

l(u

8

) = min{∞, 1 + 5} = 6.

3

Obliczamy

min{3, 2, 4, 6, ∞} = 2.

Wartość ta odpowiada wierzchołkowi u

5

.

4

l(u

5

) = 2 (wielkość ustalona).

p = u

5

5

Nie wszystkie wierzchołki u

i

mają ustalone wielkości l(u

i

). Należy

przejść do kroku 2

.

Iteracja trzecia

2

Z wierzchołkiem p sąsiadują wierzchołki u

4

i u

9

o nieustalonych

wartościach l(u

4

) i l(u

9

). Obliczamy

l(u

4

) = min{∞, 2 + 2} = 4,

l(u

9

) = min{∞, 2 + 7} = 9.

3

Obliczamy

min{3, 4, 6, 9, ∞} = 3.

Wartość ta odpowiada wierzchołkowi u

3

.

4

l(u

3

) = 3 (wielkość ustalona).

p = u

3

5

Ponieważ nie wszystkie wielkości l(u

i

) są ustalone, należy przejść

do kroku 2

.

Iteracja czwarta

2

Z wierzchołkiem p sąsiadują wierzchołki u

4

, u

6

i u

9

o nieustalo-

nych l(u

4

), l(u

6

) i l(u

9

). Obliczamy

l(u

4

) = min{4, 3 + 1} = 4,

l(u

6

) = min{4, 3 + 1} = 4,

l(u

9

) = min{9, 3 + 5} = 8.

background image

Grafy z wagami

181

3

Obliczamy

min{4, 8, 6, ∞} = 4.

Wartość ta odpowiada wierzchołkom u

4

i u

6

.

4

l(u

4

) = l(u

6

) = 4 (wielkość ustalona).

p = u

4

5

Ponieważ nie wszystkie wielkości l(u

i

) są ustalone, należy przejść

do kroku 2

.

Kontynuując algorytm, przypisujemy określoną wartość l(u

i

) każde-

mu wierzchołkowi grafu, w szczególności wierzchołkowi u

10

. Nietrudno

zauważyć, że

l(u

10

) = 7.

Jest to właśnie poszukiwana długość najkrótszej drogi łączącej u

1

z u

10

.

background image
background image

9

Drzewa i digrafy

9.1

Podstawowe pojęcia teorii drzew

Definicja 9.1 Graf niezawierający cykli nazywać będziemy acyklicz-
nym.

Definicja 9.2 Skończony graf acykliczny i spójny nazywać będziemy
drzewem.

Przykład. Oto kilka grafów będących drzewami:

(i)

(ii)

background image

184

Drzewa i digrafy

(iii)

(iv)

(v)

Uwaga. Drzewa nie mają oczywiście ani pętli ani krawędzi wielokrot-
nych, ponieważ w przeciwnym przypadku zawierałyby cykle. Odnotuj-
my też jeszcze jedną prostą własność drzew: dowolne dwa wierzchołki
drzewa można połączyć jedną i tylko jedną drogą prostą - gdyby było
inaczej nie byłyby grafami acyklicznymi.

Umowa notacyjna. W dalszym ciągu drzewa oznaczać będziemy za
pomocą symbolu T (ang. tree).

Twierdzenie 9.1 Drzewo T : E → P

2

(V ) ma card (V ) 1 krawędzi,

gdzie zakładamy, że card (V ) ­ 1.

Dowód. Skorzystamy z zasady indukcji matematycznej. Dla card (V ) =
1 teza jest oczywista. Zakładamy, że twierdzenie jest prawdziwe dla
card (V ) = n.

Niech T będzie drzewem o n + 1 wierzchołkach. Usuwając jeden

wierzchołek pierwszego stopnia (w każdym drzewie takie wierzchołki
istnieją) i incydentną z nim krawędź, otrzymujemy drzewo T

1

o n wierz-

chołkach, które, na mocy założenia, ma n − 1 krawędzi. Stąd wynika,
że drzewo T ma n krawędzi.

2

background image

Podstawowe pojęcia teorii drzew

185

Definicja 9.3 Skończony graf acykliczny nazywamy lasem.

Uwaga. Z powyższej definicji wynika, że każde drzewo jest lasem. Po-
nadto lasem jest graf niespójny, którego składowe są drzewami.

Przykład. Lasem jest np. graf

Definicja 9.4 Wyróżniony wierzchołek u drzewa T nazywać będzie-
my korzeniem, a samo drzewo będziemy w takim przypadku oznaczać
symbolem T

u

.

Uwaga. Wybór korzenia drzewa jest w zasadzie umowny. Każdy wierz-
chołek drzewa może zostać uznany za korzeń.

Przykład. Drzewo T

u

u

v

w

p

q

r

s

t

z

może być przedstawione także następująco

background image

186

Drzewa i digrafy

v

p

q

u

w

r

s

t

z

T

v

z

t

r

w

s

u

v

p

q

T

z

Definicja 9.5 Każdy wierzchołek drzewa mający stopień 1 i niebędący
korzeniem nazywać będziemy liściem albo węzłem końcowym.

Definicja 9.6 Każdy wierzchołek drzewa niebędący ani liściem, ani
korzeniem nazywać będziemy węzłem wewnętrznym albo węzłem gałęzi.

Definicja 9.7 Jeśli wierzchołek u, sąsiadujący z wierzchołkiem v, znaj-
duje się na jedynej drodze od korzenia do v, to nazywać go będziemy
rodzicem v; v nazywać będziemy dzieckiem u.

Definicja 9.8 Jeśli wierzchołek u znajduje się na jedynej drodze z ko-
rzenia do v, to v nazywać będziemy potomkiem wierzchołka u.

Definicja 9.9 Liczbę dzieci wierzchołka nazywać będziemy jego stop-
niem wyjściowym.

Definicja 9.10 Drzewem o k ­ 2 rozgałęzieniach nazywać będziemy
takie drzewo, w którym każdy wierzchołek ma stopień wyjściowy mniej-
szy bądź równy k.

Gdy k = 2, drzewo to nazywać będziemy drzewem binarnym.
Drzewo o k rozgałęzieniach (binarne dla k
= 2) nazywać będziemy

regularnym, jeśli stopień wyjściowy każdego wierzchołka niebędącego
liściem jest równy k.

background image

Podstawowe pojęcia teorii drzew

187

Definicja 9.11 Wysokością drzewa T

u

nazywać będziemy długość naj-

dłuższej drogi z u do jednego z liści.

Definicja 9.12 Niech dane będzie drzewo T

u

i wierzchołek v tego drze-

wa (v może być równy u). Poddrzewem drzewa T

u

o wierzchołku v

nazywać będziemy drzewo utworzone z wierzchołka v i jego wszystkich
potomków.

Przykład. Dla drzewa T

u

u

v

w

p

q

s

r

t

poddrzewami są na przykład drzewa

w

p

q

r

t

s

T

w

q

r

t

s

T

q

Definicja 9.13 Nazwy wierzchołków drzewa określać będziemy jako
etykiety.

Uwaga. Do etykietowania wierzchołków drzewa wygodnie jest posłu-
żyć się pewnym alfabetem Σ tak, aby nazwy wierzchołków tworzyły
zbiór liniowo uporządkowany.

Przykład. Rozważmy drzewo regularne o trzech rozgałęzieniach i za-
etykietujmy jego wierzchołki, korzystając ze słów z alfabetu Σ = {0, 1, 2}.

background image

188

Drzewa i digrafy

ε

1

0

2

01

00

02

11

10

12

21

20

22

001

000

002

011

010

012

021

020

022 .......................................

9.2

Drzewa rozpinające grafy

Definicja 9.14 Niech dany będzie skończony graf spójny Γ : E →
P

2

(V ). Drzewem rozpinającym (albo inaczej: spinającym) tego gra-

fu nazywać będziemy każde drzewo, którego zbiorem wierzchołków jest
zbiór V , a zbiorem krawędzi - podzbiór zbioru E.

Przykład. Niech dany będzie graf

Jego drzewami rozpinającymi są między innymi drzewa

background image

Drzewa rozpinające grafy

189

Uwaga. Dla dowolnego grafu spójnego drzewo rozpinające może być
skonstruowane na dwa sposoby.

Pierwszy polega na usuwaniu tych krawędzi grafu, które wchodzą

w skład cykli.

background image

190

Drzewa i digrafy

Drugi opiera się na następującej procedurze. Wybieramy dowolny

wierzchołek grafu. Łączymy ten wierzchołek z wierzchołkami z nim są-
siadującymi. Wszystkie wierzchołki otrzymanego zbioru wierzchołków
łączymy z sąsiadującymi z nimi wierzchołkami nienależącymi do tego
zbioru. Procedurę tę kontynuujemy aż do uzyskania drzewa, którego
zbiór wierzchołków jest równy zbiorowi wierzchołków danego grafu.

Zauważmy jednakże, że dla grafów niespójnych możemy w analo-

giczny sposób budować lasy rozpinające (albo inaczej: spinające), któ-
rych składowe są drzewami rozpinającymi składowych danych grafów.

W dalszym ciągu zajmiemy się zagadnieniem znalezienia drzew

rozpinających, dla których sumy wag ich krawędzi są możliwie naj-
mniejsze.

Definicja 9.15 Niech T : E → P

2

(V ) będzie drzewem z wagami. Licz-

w(T ) =

X

e∈E

w(e)

nazywać będziemy wagą tego drzewa.

Definicja 9.16 Minimalnym drzewem rozpinającym grafu nazywać bę-
dziemy każde drzewo rozpinające tego grafu, którego waga jest nie więk-
sza od wag innych grafów rozpinających tego grafu.

Istnieje kilka algorytmów pozwalających na budowę minimalnego

drzewa rozpinającego. Najbardziej znane z nich to algorytmy Kruskala
i Prima (zob. [7, s. 160].

Oto pierwszy z nich.

Algorytm Kruskala

1

Należy zacząć od grafu T , którego wierzchołkami są wszystkie
wierzchołki danego grafu Γ, lecz który nie ma ani jednej krawędzi.

2

Należy uporządkować krawędzie grafu Γ w ciąg nierosnący

w(e

1

) ¬ w(e

2

) ¬ ... ¬ w(e

k

),

k = card (E).

3

Podstawiamy i := 0.

background image

Drzewa rozpinające grafy

191

4

Podstawiamy i := i + 1 i dołączamy krawędź e

i

do grafu T , jeśli

T ∪ {e

i

} jest acykliczny; w przeciwnym przypadku nie dołączamy

e

i

do T .

5

Jeśli i = k, to należy zatrzymać algorytm. W przeciwnym przy-
padku należy przejść do kroku 4

.

Dowód poprawności algorytmu. Zauważmy, po pierwsze, że pod-
czas każdej iteracji algorytmu graf T zawiera się w pewnym rozpina-
jącym drzewie minimalnym grafu Γ. Rzeczywiście, na początku wyko-
nywania algorytmu T jest grafem zbudowanym z wierzchołków grafu
Γ, ale nie mającym żadnych krawędzi. Zatem T jest podgrafem mini-
malnego drzewa rozpinającego T

min

.

Załóżmy, że po wykonaniu n, 1 ¬ n < k, iteracji T jest podgrafem

T

min

. Należy pokazać, że po kolejnej iteracji T jest także podgrafem

pewnego rozpinającego drzewa minimalnego.

W dalszym ciągu symbolem T ∪ {e} oznaczać będziemy rozsze-

rzenie funkcji T na zbiór zawierający krawędź e. Jeśli T ∪ {e

n+1

} jest

grafem cyklicznym, to krawędź e

n

nie jest dołączona do T , a więc T

jest nadal podgrafem T

min

. Jeśli natomiast T ∪ {e

n+1

} jest grafem acy-

klicznym, to należy znaleźć minimalne drzewo rozpinające T

1

, którego

podgrafem jest T ∪ {e

n+1

}. Jeżeli e

n+1

należy do T

min

, to oczywiście

T

1

= T

min

. Załóżmy więc, że e

n+1

nie jest krawędzią T

min

. Stąd wynika,

że T

min

∪ {e

n+1

} jest grafem cyklicznym, a e

n+1

wchodzi w skład pew-

nego cyklu. Jednak T ∪ {e

n+1

} jest grafem acyklicznym, a stąd wynika,

że do wspomnianego cyklu należy pewna krawędź a drzewa T

min

, która

nie należy do T . Jeśli zdefiniujemy T

1

jako (T

min

∪ {e

n+1

}) \ {a}, to

graf ten jest spójny, ma card (V ) wierzchołków i card (V ) 1 krawę-
dzi. A zatem jest drzewem spinającym grafu Γ i ponadto T ∪ {e

n+1

}

jest jego podgrafem. Oczywiście graf T ∪ {a} jest acykliczny. Zarazem
w(e

n+1

) ¬ w(a), ponieważ a 6= e

i

, i = 1, 2, ..., n + 1. Tak więc

w(T

1

) = w(T

min

) + w(e

n+1

) − w(a) ¬ w(T

min

),

co oznacza, że T

1

jest minimalnym drzewem rozpinającym grafu Γ.

Wystarczy wykazać jeszcze, że graf T , po zakończeniu algorytmu,

jest spójny. Wybierzmy w dowolny sposób dwa wierzchołki v

i

oraz v

j

tego grafu. Łączy je pewna droga w grafie Γ, ponieważ ten graf jest

background image

192

Drzewa i digrafy

spójny. Gdyby pewna krawędź, powiedzmy a, należąca do tej drogi, nie
należała do grafu T , to graf T ∪ {a} zawierałby cykl, w którego skład
wchodziłaby właśnie ta krawędź. Wystarczyłoby zastąpić w rozważanej
drodze krawędź a przez pozostałe krawędzie cyklu, by otrzymać drogę
z v

i

do v

j

, całkowicie zawierającą się w T .

W jaki sposób działa algorytm Kruskala pokażemy na następują-

cym przykładzie.

Przykład. Znajdziemy minimalne drzewo rozpinające dla grafu Γ.

2

4

1

2

3

1

2

8

5

1

2

3

4

7

8

6

1

Zaczynamy od grafu T zawierającego wszystkie wierzchołki Γ
i nie mającego żadnych krawędzi.

2

Tworzymy uporządkowany ciąg w(e

1

) ¬ w(e

2

) ¬ ... ¬ w(e

16

)

(możemy to zrobić na kilka sposobów, ponieważ wśród krawędzi
są takie, którym odpowiadają te same wagi). Sposób oznaczenia
krawędzi grafu Γ przedstawia rysunek.

background image

Drzewa rozpinające grafy

193

e

5

e

11

e

1

e

4

e

9

e

2

e

7

e

16

e

12

e

3

e

6

e

8

e

10

e

14

e

15

e

13

3

Podstawiamy i := 0.

4

Podstawiamy i := 1; dołączamy e

1

do T , tzn. przyjmujemy T :=

T ∪ {e

1

}, bo T ∪ {e

1

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 2; T := T ∪ {e

2

}, bo T ∪ {e

2

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 3; T := T ∪ {e

3

}, bo T ∪ {e

3

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 4; T := T ∪ {e

4

}, bo T ∪ {e

4

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 5; T := T ∪ {e

5

}, bo T ∪ {e

5

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 6; T := T ∪ {e

6

}, bo T ∪ {e

6

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 7; T := T ∪ {e

7

}, bo T ∪ {e

7

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

background image

194

Drzewa i digrafy

4

Podstawiamy i := 8; T := T (nie dołączmy e

8

do T ), bo T ∪ {e

8

}

jest cykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 9; T := T , bo T ∪ {e

9

} jest cykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 10; T := T , bo T ∪ {e

10

} jest cykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 11; T := T ∪{e

11

}, bo T ∪{e

11

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 12; T := T ∪{e

12

}, bo T ∪{e

12

} jest acykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 13; T := T , bo T ∪ {e

13

} jest cykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 14; T := T , bo T ∪ {e

14

} jest cykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 15; T := T , bo T ∪ {e

15

} jest cykliczny.

5

Ponieważ i 6= 16, więc przechodzimy do kroku 4

.

4

Podstawiamy i := 16; T := T , bo T ∪ {e

16

} jest cykliczny.

5

Ponieważ i = 16, więc zatrzymujemy algorytm.

Zauważmy, że otrzymaliśmy następujące minimalne drzewo rozpi-

nające T .

background image

Drzewa rozpinające grafy

195

e

5

e

11

e

1

e

4

e

2

e

7

e

12

e

3

e

6

Łatwo sprawdzić, że w(T ) = 1 + 1 + 1 + 2 + 2 + 2 + 2 + 4 + 5 = 20.

Obok algorytmu Kruskala często stosowany jest algorytm Prima,

który to algorytm znajduje minimalne drzewo rozpinające grafu bez
sortowania krawędzi pod względem wielkości ich wag. Oto ten algo-
rytm.

Algorytm Prima

1

Niech V

T

:= {v

i

}, E

T

:= (T jest minimalnym drzewem roz-

pinającym grafu Γ, v

i

jest dowolnym wierzchołkiem grafu Γ, V

T

jest zbiorem wierzchołków T , E

T

jest zbiorem krawędzi T ).

2

Dla dowolnego wierzchołka v

k

/

∈ V

T

należy znaleźć wierzchołek

w

k

∈ V

T

, taki że

h(v

k

, w

k

) = min{h(v

k

, w

i

) : w

i

∈ V

T

} = a

k

,

jeżeli w

k

istnieje; w przeciwnym przypadku wierzchołkowi v

k

przy-

pisujemy parę (0, ∞).

3

Należy wybrać wierzchołek v

k

, taki że

a

k

= min{a

k

: v

k

/

∈ V

T

}.

Podstawiamy V

T

:= V

T

∪ {v

k

}, E

T

:= E

T

∪ {(v

k

, w

k

)}.

Jeżeli card (V

T

) = card (V ), to należy zatrzymać algorytm.

Jeżeli card (V

T

) 6= card (V ) to należy przejść do kroku 4

.

background image

196

Drzewa i digrafy

4

Dla dowolnego v

k

/

∈ V

T

, sąsiadującego z

v

k

, należy dokonać zmian

współczynników w przypisanej temu wierzchołkowi parze upo-
rządkowanej.
Jeżeli a

k

> h(v

k

, v

k

), to a

k

:= h(v

k

, v

k

), w

k

:= v

k

i przechodzimy

do kroku 3

.

Jeżeli a

k

¬ h(v

k

, v

k

), to przechodzimy do kroku 3

.

Zachęcamy Czytelnika do zastosowania algorytmu Prima do grafu

Γ rozważanego w ramach ostatniego przykładu. Dowód poprawności
algorytmu pomijamy. Zauważmy tylko, że z przebiegu algorytmu wy-
nika nie tylko to, że otrzymany graf jest acykliczny, lecz także że jest
spójny.

Wspomniane tutaj zagadnienie znajdowania minimalnego drzewa

rozpinającego dla grafu ma związek z tzw. problemem komiwojaże-
ra. Problem ten polega na znalezieniu dla grafu prostego i spójnego
z wagami cyklu Hamiltona o możliwie najmniejszej wadze.

Przykład. Rozważmy następujące zagadnienie. Komiwojażer ma od-
wiedzić łącznie 7 miejscowości w taki sposób, by na końcu powrócić do
miejscowości, od której rozpoczyna spoją pracę. Diagram odległości
pomiędzy tymi miejscowościami przedstawia graf.

p

q

r

z

s

t

v

w

2

1

4

1

2

1

2

1

2

4

2

1

1

1

background image

Drzewa rozpinające grafy

197

Jest to graf hamiltonowski. Spróbujmy oszacować wagi cykli Hamil-

tona w tym grafie od dołu, znajdując odpowiednie minimalne drzewo
rozpinające.

Takim drzewem jest na przykład drzewo T o wadze w(T ) = 7.

1

1

1

1

1

1

1

Powiedzmy, że ciąg f

1

f

2

...f

n

jest cyklem Hamiltona o najmniejszej

wadze. Wtedy f

2

...f

n

jest drzewem rozpinającym rozważanego grafu

i zachodzi nierówność

w(f

2

) + w(f

3

) + ... + w(f

n

) ­ 7.

Zatem dla cyklu Hamiltona

w(f

1

f

2

...f

n

) ­ 7 + w(f

1

).

Krawędź f

1

może być wybrana jako krawędź o możliwie najmniej-

szej wadze. Zachodzi zatem oszacowanie

w(f

1

f

2

...f

n

) ­ 7 + 1 = 8.

Wynika stąd, że w danym grafie cykle Hamiltona będą miały wagę

nie mniejszą niż 8.

Pozostawiamy Czytelnikowi znalezienie cyklu o mniejszej wadze.

background image

198

Drzewa i digrafy

9.3

Digrafy

Definicja digrafu, albo inaczej grafu skierowanego, różni się tym

od definicji grafu (nieskierowanego), że funkcja Γ przyporządkowuje
każdej krawędzi e nie zbiór {v, w} wierzchołków incydentnych z tą
krawędzią, lecz parę uporządkowaną (v, w). To, że wierzchołek v jest
pierwszym elementem pary, a w drugim elementem oznacza właśnie,
że krawędź e jest skierowana od v do w.

Dokładniej definicja ta przedstawia się następująco:

Definicja 9.17 Digrafem lub grafem skierowanym nazywać będziemy
funkcję
Γ : E → V × V , gdzie V i E są dwoma rozłącznymi zbiorami
niepustymi.

Jeżeli Γ(e) = (v, w), to wierzchołek v nazywamy początkiem, zaś

wierzchołek w - końcem krawędzi e.

Definicja 9.18 Drogą w digrafie Γ nazywamy każdy ciąg e

1

e

2

...e

k

kra-

wędzi tego grafu taki, że koniec i-tej krawędzi jest początkiem i + 1-
krawędzi, gdzie i
= 1, 2, ..., k − 1.

Długością drogi nazywamy liczbę krawędzi tej drogi.
Drogę e

1

e

2

...e

k

nazywamy zamkniętą, jeżeli koniec k-tej krawędzi

jest początkiem krawędzi pierwszej.

Drogę zamkniętą nazywamy cyklem, jeżeli wszystkie wierzchołki tej

drogi, oprócz pierwszego i ostatniego, które są sobie równe, różnią się
między sobą.

Również relację sąsiedztwa w przypadku digrafu rozumie się nieco

inaczej niż w przypadku grafów nieskierowanych.

Definicja 9.19 Mówimy, że wierzchołek u jest sąsiedni w stosunku do
v jeżeli istnieje krawędź od u do v.

W przypadku digrafów mogą także istnieć krawędzie skierowane

wielokrotne i pętle. Takie grafy nazywamy multigrafami skierowanymi.
W przeciwnym przypadku mówimy o digrafach lub grafach skierowa-
nych prostych.

background image

Digrafy

199

Definicja 9.20 Dla dowolnego wierzchołka v grafu Γ : E → V × V
liczbę krawędzi, których końcem jest ten wierzchołek, nazywamy stop-
niem wejściowym v. Liczbę tę oznaczamy symbolem
indeg (v).

Liczbę krawędzi, których początkiem jest v nazywamy stopniem wyj-

ściowym tego wierzchołka i oznaczamy symbolem outdeg (v).

Uwaga. Rzecz jasna, zachodzi równość

indeg (v) + outdeg (v) = deg(v).

Uwaga. Warto zwrócić uwagę na to, że drzewa są w istocie digrafami,

w szczególności, gdy określony jest korzeń tych grafów. W takim przy-
padku, wierzchołek będący rodzicem można traktować jako początek
krawędzi, a wierzchołek będący dzieckiem - jako koniec.

Dla grafów skierowanych zachodzą w wielu przypadkach twierdze-

nia analogiczne do tych, które dotyczą grafów nieskierowanych. Na
przykład zachodzi (por. [15, s. 484])

Twierdzenie 9.2 (Eulera) Niech dany będzie digraf skierowany Γ :
E → V × V . Jeśli graf ten jest spójny, jako graf nieskierowany, to
istnieje w nim droga zamknięta, do której należą wszystkie krawędzie
Γ
wtedy i tylko wtedy, gdy dla dowolnego wierzchołka v tego grafu zachodzi
równość

indeg (v) = outdeg (v).

Przykład. Digrafem o powyższej własności jest na przykład poniższy
digraf

background image

200

Drzewa i digrafy

Nietrudno w nim wskazać drogę zamkniętą.

Definicja 9.21 Digraf skończony i spójny (jako graf ) mający zamknię-
tą drogę przechodzącą przez wszystkie krawędzie, nazywać będziemy di-
grafem eulerowskim.

Istnieją też twierdzenia dla digrafów, w których rozpatruje się cykle

Hamiltona.

Definicja 9.22 Digraf nazywamy hamiltonowskim, jeśli istnieje w nim
droga zamknięta, przechodząca przez każdy wierzchołek oprócz pierw-
szego, który jest równy ostatniemu, dokładnie jeden raz.

Zachodzi twierdzenie, którego dowód jest raczej skomplikowany

(por. [16, s. 142] i [4]), będące uogólnieniem twierdzenia Diraca.

Twierdzenie 9.3 Załóżmy, że Γ : E → V × V jest digrafem mającym
tę własność, że dowolne dwa jego wierzchołki mogą być połączone drogą.
Wtedy, jeśli dla dowolnego wierzchołka v tego grafu

indeg (v) ­

1

2

card (V )

i

outdeg (v) ­

1

2

card (V ),

to digraf jest hamiltonowski.

Definicja 9.23 Wierzchołek v digrafu Γ, dla którego indeg (v) = 0,
nazywać będziemy źródłem tego digrafu.

Jeżeli natomiast outdeg (v) = 0 to v nazywać będziemy ujściem

digrafu Γ.

Dla digrafów z wagami można podać algorytmy, tak jak ma to miej-

sce w przypadku grafów nieskierowanych, pozwalające znaleźć długości
najkrótszych dróg z dowolnego wierzchołka do dowolnego innego wierz-
chołka - przy założeniu, że taka droga istnieje. W szczególności, można
zastosować w tym przypadku algorytm Dijkstry, pamiętając jednocze-
śnie, że w przypadku digrafów zmienia się rozumienie sąsiedztwa.

background image

10

Zliczanie grafów.

Kilka wybranych problemów

Zliczanie grafów mających określone własności jest na ogół za-

daniem bardzo skomplikowanym. Jedynie w niektórych przypadkach
uzyskujemy proste wzory. W niniejszym rozdziale przedstawimy kilka
stosunkowo elementarnych, choć dość istotnych, problemów, których
rozwiązanie nie wymaga odwołania się do zaawansowanych technik
i złożonych rozważań.

1

Rozważmy najpierw następujący problem: ile jest grafów ozna-
kowanych prostych o n wierzchołkach?

Aby odpowiedzieć na to pytanie, załóżmy, że v

1

, v

2

, ..., v

n

są wierz-

chołkami grafu. Rozważmy następnie wszystkie ciągi postaci

d

12

, d

13

, ..., d

1n

, d

23

, d

24

, ..., d

2n

, d

34

, d

35

, ..., d

3n

, d

41

, ..., d

n−1,n

,

gdzie liczby d

ij

, i, j ∈ {1, 2, ..., n}, i < j, są równe albo zero, jeśli wierz-

chołki v

i

oraz v

j

są połączone krawędziami, albo jeden - w przeciwnym

przypadku.

Zauważmy, że powyższy ciąg określa w sposób jednoznaczny graf

prosty o wierzchołkach v

1

, v

2

, ..., v

n

. Liczba elementów tego ciągu jest,

background image

202

Zliczanie grafów. Kilka wybranych problemów

jak nietrudno zauważyć, równa



n

2



. A zatem, wszystkich takich cią-

gów i wszystkich grafów o danej własności jest tyle, ile wynosi liczba
wszystkich wariacji z powtórzeniami ze zbioru 2-elementowego po



n

2



elementów, czyli

V

(

n

2

)

2

= 2(

n

2

).

2

Powyższe zadanie można nieco zmodyfikować, a mianowicie moż-
na zapytać np., ile jest grafów oznakowanych o n wierzchołkach,
bez krawędzi wielokrotnych, mogących jednak mieć pętle jedno-
krotne?

Zadanie to rozwiązuje się analogicznie do zadania poprzedniego.

Wystarczy dołączyć do ciągu liczb d

ij

, i < j, także liczby d

ii

, i =

1, 2, ..., n, które są równe jeden, gdy odpowiednie pętle istnieją, i zero
w przeciwnym przypadku. Tak więc wszystkich grafów o rozważanych
własnościach jest

2(

n

2

)

+n

= 2

n(n+1)

2

.

3

Zastanówmy się nad następującym zagadnieniem: ile jest grafów
oznakowanych prostych o n wierzchołkach i k ¬



n

2



krawędziach?

Nietrudno zauważyć, że w tym przypadku liczba odpowiednich gra-

fów jest równa



n

2



k

!

.

4

W tym punkcie zajmiemy się zagadnieniem bardziej skompliko-
wanym. Odpowiemy na pytanie o liczbę wszystkich oznakowa-
nych drzew o n wierzchołkach.

Zachodzi mianowicie następujące ([16, s. 69-72])

Twierdzenie 10.1 (Cayleya) Liczba różnych drzew oznakowanych
o n wierzchołkach jest równa

n

n−2

.

background image

Zliczanie grafów. Kilka wybranych problemów

203

Dowód. Liczbę wszystkich drzew oznakowanych o n wierzchołkach
oznaczmy symbolem L

n

. Zachodzi równość

L

n

= L

n

(1) + L

n

(2) + ... + L

n

(n − 1),

gdzie L

n

(i), 1 ¬ i ¬ n − 1, oznacza liczbę drzew o n wierzchołkach,

takich że dany wierzchołek u ma stopień i.

Naszym celem jest obliczenie L

n

(i), a następnie L

n

.

Załóżmy, że T jest drzewem oznakowanym o n wierzchołkach, ta-

kich że deg(u) = m − 1 (na poniższym rysunku deg(u) = 4).

u

b

a

c

g

d

k

h

l

o

f

p

q

r

s

x

y

w

t

z

Poprzez usunięcie jednej z krawędzi drzewa T , która nie jest in-

cydentna z u, otrzymujemy dwa poddrzewa drzewa T . Powiedzmy, że
usuwamy krawędź lf . Wtedy l należy do poddrzewa zawierającego u,
w przeciwieństwie do wierzchołka f , który należy do drugiego poddrze-
wa. Jeżeli połączymy wierzchołek f z wierzchołkiem u, to otrzymamy
drzewo T

0

, dla którego deg(u) = m.

background image

204

Zliczanie grafów. Kilka wybranych problemów

u

b

a

c

g

d

k

h

l

o

f

p

q

r

s

x

y

w

t

z

W dalszym ciągu obliczymy liczbę wszystkich par (T, T

0

).

Drzewo T może być utworzone L

n

sposobami. Z kolei drzewo T

0

powstaje z T na n − 1 (m − 1) sposobów, gdyż wyznaczone jest ono
jednoznacznie poprzez usuniętą krawędź (w naszym przypadku lf ).
Z tego też względu liczba wszystkich par (T, T

0

) jest równa

L

n

(m − 1) · (n − m).

Załóżmy z kolei, że T

0

jest drzewem oznakowanym o n wierzchoł-

kach i takim, że dla dowolnego ustalonego wierzchołka u zachodzi
deg(u) = m. Jeżeli usunie się wierzchołek u wraz z incydentnymi z nim
krawędziami, otrzyma się m drzew T

0

1

, T

0

2

, ..., T

0

m

. Wybierzmy w dowol-

ny sposób jedną z m krawędzi łączących u z którymś z sąsiadujących
z nim wierzchołków należącym do jednego z wymienionych poddrzew,
powiedzmy poddrzewa T

0

j

. Jeśli następnie ów wierzchołek połączymy

z dowolnie wybranym wierzchołkiem należącym do któregoś z pozo-
stałych drzew, to otrzymamy drzewo T (w przypadku rozpatrywanego
już grafu T

0

możemy usunąć krawędź uf , łącząc f z l, i tym samym

„powrócić” do grafu T ; możemy także usunąć inną krawędź, np. ug,
i połączyć, jak to jest przedstawione niżej, g z o).

background image

Zliczanie grafów. Kilka wybranych problemów

205

u

b

a

c

g

d

k

h

l

o

f

p

q

r

s

x

y

w

t

z

Stosując wyżej opisaną procedurę, znowu otrzymujemy pary (T, T

0

).

Drzewo T

0

może być wybrane na L

(m)
n

sposobów. Z kolei wierzchołek

drzewa T

0

j

sąsiadujący z u może być połączony z pozostałymi wierz-

chołkami innych poddrzew na n − 1 − n

j

sposobów. Ponieważ

n

1

+ n

2

+ ... + n

α

+ 1 = n,

więc wszystkich par (T, T

0

) jest

L

n

(m)[n − 1 − n

1

+ n − 1 − n

2

+ ... + n − 1 − n

m

] = L

n

(m)(n − 1)(m − 1).

A zatem zachodzi równość

L

n

(m)(n − 1)(m − 1) = L

n

(m − 1)(n − m).

Zauważmy, że L

n

(n − 1) = 1.

u

v

n−1

v

1

v

2

v

3

background image

206

Zliczanie grafów. Kilka wybranych problemów

Stąd i z zależności rekurencyjnej wynika, że

L

n

(n − 2) = L

n

(n − 1) · (n − 1) · (n − 2),

L

n

(n − 3) =

1
2

L

n

(n − 2) · (n − 1) · (n − 3) =

=

1
2

L

n

(n − 1) · (n − 1)

2

· (n − 2) · (n − 3).

itd.

Nietrudno stwierdzić, że

L

n

(m) =

n − 2

m − 1

!

(n − 1)

n−m−1

.

Stąd wynika, że

L

n

=



n−2

0



(n − 1)

n−2

+



n−2

1



(n − 1)

n−3

+ ...+

+



n−2
n−2



(n − 1)

0

= [(n − 1) + 1]

n−2

= n

n−2

,

co kończy dowód twierdzenia.

2

Wyniki zawarte w tym rozdziale zilustrujemy następującym przy-

kładem.

Przykład

(i) Wiadomo, że wszystkich grafów prostych o trzech wierzchołkach,

powiedzmy v

1

, v

2

, v

3

, jest

2(

3
2

) = 8.

Oto one

v

2

v

1

v

3

(1)

v

2

v

1

v

3

(2)

v

2

v

1

v

3

(3)

background image

Zliczanie grafów. Kilka wybranych problemów

207

v

2

v

1

v

3

(4)

v

2

v

1

v

3

(5)

v

2

v

1

v

3

(6)

v

2

v

1

v

3

(7)

v

2

v

1

v

3

(8)

(ii) Grafów prostych oznakowanych o czterech wierzchołkach i pięciu

krawędziach jest



4
2



5

!

=

6

5

!

= 6.

v

1

v

2

v

4

v

3

(1)

v

1

v

2

v

4

v

3

(2)

v

1

v

2

v

4

v

3

(3)

v

1

v

2

v

4

v

3

(4)

v

1

v

2

v

4

v

3

(5)

v

1

v

2

v

4

v

3

(6)

background image

208

Zliczanie grafów. Kilka wybranych problemów

(iii) Różnych drzew oznakowanych o czterech wierzchołkach, zgodnie

z twierdzeniem Cayleya, jest

4

42

= 16.

Są to drzewa

v

1

v

2

v

3

v

4

(1)

v

1

v

2

v

4

v

3

(2)

v

1

v

3

v

2

v

4

(3)

v

1

v

3

v

4

v

2

(4)

v

1

v

4

v

2

v

3

(5)

v

1

v

4

v

3

v

2

(6)

v

2

v

1

v

3

v

4

(7)

v

2

v

1

v

4

v

3

(8)

v

2

v

3

v

1

v

4

(9)

v

2

v

4

v

1

v

3

(10)

v

3

v

1

v

2

v

4

(11)

v

3

v

2

v

1

v

4

(12)

background image

Zliczanie grafów. Kilka wybranych problemów

209

v

4

v

1

v

2

v

3

(13)

v

4

v

2

v

1

v

3

(14)

v

4

v

3

v

1

v

2

(15)

v

3

v

4

v

1

v

2

(16)

background image
background image

Spis literatury

[1] T. Batóg, Podstawy logiki, Wydawnictwo Naukowe UA, Poznań

2003.

[2] N. Biggs, Discrete Mathematics, Oxford 1993.

[3] A. Błaszczyk, S. Turek, Teoria mnogości, Wydawnictwo Nauko-

we PWN, Warszawa 2007.

[4] J. A. Bondy, U. S. R. Murty, Graph theory with applications,

Elsevier, 1976.

[5] R. C. Bose, B. Manvel, Introduction to Combinatorial Theory,

John Wiley & Sons, New York etc. 1984.

[6] V. Bryant, Aspekty kombinatoryki, Wydawnictwo Naukowo-

Techniczne, Warszawa 2007.

[7] N. Christofides, Graph Theory. An Algorithmic Approach, Aca-

demic Press, New York etc. 1975.

[8] R. Diestel, Graph Theory, Springer-Verlag, Heidelberg, New York

2005.

[9] J. Flachsmeyer, Kombinatoryka. Podstawowy wykład w ujęciu

mnogościowym, Wydawnictwo Naukowe PWN, Warszawa 1977.

[10] A. Grzegorczyk, Zarys logiki matematycznej, Wydawnictwo Na-

ukowe PWN, Warszawa 1981.

background image

212

Spis literatury

[11] J. E. Hopcroft, J. D. Ullman, Wprowadzenie do teorii automa-

tów, języków i obliczeń, Wydawnictwo Naukowe PWN, Warszawa
2003.

[12] S. W. Jabłoński, Wstęp do matematyki dyskretnej, Wydawnictwo

Naukowe PWN, Warszawa 1991.

[13] M. Omyła, Zarys logiki, Wydawnictwa Szkolne i Pedagogiczne,

Warszawa 1995.

[14] N. Rescher, Many-valued Logic, McGraw-Hill, Inc, New York etc.

1969.

[15] K. A. Ross, Ch. R. B. Wright, Matematyka dyskretna, Wydaw-

nictwo Naukowe PWN, Warszawa 2000.

[16] R. J. Wilson, Wprowadzenie do teorii grafów, Wydawnictwo Na-

ukowe PWN, Warszawa 2000.


Wyszukiwarka

Podobne podstrony:
Matematyka dyskretna pytania, matematyka dyskretna wyklady
Bobiński G Matematyka dyskretna Wykład
Matematyka Dyskretna wykład
MATEMATYKA DYSKRETNA2014(WYKŁADY)
Wykład z dnia 10.05.2008, Zajęcia, II semestr 2008, Matematyka dyskretna i logika
Matematyka dyskretna md wyklad 3
Matematyka dyskretna, md wyklad 2
Matematyka dyskretna, md wyklad 2b
Z Wykład 29.03.2008, Zajęcia, II semestr 2008, Matematyka dyskretna i logika
Matematyka dyskretna md wyklad 1
Matematyka dyskretna md wyklad 2b
Wykład 1, 1 STUDIA - Informatyka Politechnika Koszalińska, Labki, Matematyka Dyskretna i logika, MD,
Matematyka dyskretna md wyklad Nieznany
Z Wykład 27.04.2008, Zajęcia, II semestr 2008, Matematyka dyskretna i logika
matdyskr3, 2 Semestr, Matematyka dyskretna, matematyka dyskretna 2009, wyklady
matematyka dyskretna w 2 id 283 Nieznany

więcej podobnych podstron