Twierdzenia Mengera są prawdziwe dla dowolnego grafu!
Def Pełne skojarzenie
Pełnym skojarzeniem (z C do D) w grafie dwudzielnym G=G(D,C) nazywamy dowolną różnowartościową funkcję f:D→C taką, że (∀x∈D)({x,f(x)}∈E(G)).
Def Sąsiedztwo w grafie dwudzielnym
Niech G=G(D,C) będzie grafem dwudzielnym. Dla X⊆D określamy N(X)={y∈C:(∃x∈X)({x,y}∈E(G))}
Prosta obserwacja #1
Jeśli istnieje pełne skojarzenie w grafie dwudzielnym G=G(D,C), to dla dowolnego X⊆D mamy ∣X∣≤∣N(X)∣.
Twierdzenie Halla (o małżeństwach)
Niech G=G(A,B) będzie grafem dwudzielnym.
↻:
- Istnieje pełne skojarzenie w grafie G z A do B
- (∀X⊆A)(∣X∣≤∣N(X)∣)
D-d Twierdzenia Halla (o małżeństwach)
Wiemy już, że (1)⟹(2). Zajmijmy się odwrotną implikacją.
Załóżmy więc, że (2) jest prawdziwa. Rozważamy następujący graf G′: jego wierzchołkami są zbiory A∪B∪{a,b} (a i b są jakimiś elementami nie należącymi do A∪B); jego krawędziami jest zbiór E(G)∪{{a,x}:x∈A}∪{{y,b}:y∈B}.
Claim: każdy (a,b)–separator w grafie G′ ma moc ≥∣A∣
Niech X będzie (a,b)–separatorem.
Wówczas: ∣A∣=∣A∩X∣+∣A∖X∣≤∣A∩X∣+∣N(A∖X)∣≤∣A∩X∣+∣B∩X∣=∣X∣. Zbiór A jest (a,b)–separatorem. Zatem najmniejsza moc separatora to ∣A∣. Na mocy twierdzenia Mengera istnieje zbiór wewnętrznie rozłącznych (a,b)–ścieżek mocy ∣A∣. Z tego zbioru otrzymujemy pełne skojarzenie.
Def Skojarzenie
Skojarzeniem w grafie G nazywamy dowolny zbiór krawędzi E⊆E(G) taki, że (∀e,f∈E)(e=f⟹e∩f=∅).
Def #4
ν(G)=max{∣E∣:E jest skojarzeniem w G}
Def Pokrycie wierzchołkowe
Pokryciem wierzchołkowym grafu G nazywamy dowolny zbiór wierzchołków A⊆V(G) taki, że (∀e∈E(G))(e∩A=∅).
Def #6
τ(G)=min{∣A∣:A jest pokryciem wierzchołkowym G
Fakt #1
ν(G)≤τ(G)≤2ν(G)
D-d Faktu #1
Niech E będzie dowolnym skojarzeniem zaś A dowolnym pokryciem. Wówczas dla każdej krawędzi e∈E istnieje ae∈A∩e. Z rozłączności krawędzi ze skojarzenia wynika, że odwzorowanie e→ae jest różnowartościowe.
Zatem ∣E≤∣A∣. To dowodzi pierwszej nierówności.
Rozważmy teraz skojarzenie E o największej mocy. Niech A=⋃E. Wówczas ∣A∣=2ν(G). Ponadto A jest pokryciem, bo dla dowolnej krawędzi e mamy e∩A=∅ (to wynika z maksymalności E).
A to pokazuje drugą nierówność.
Twierdzenie Königa (o grafie dwudzielnym).
Jeśli G jest grafem dwudzielnym, to ν(G)=τ(G).
D-d Twierdzenia Königa (o grafie dwudzielnym)
Niech G=G(X,Y). Zastosujemy twierdzenie Mengera do zbiorów A=X i B=Y.
Każde skojarzenie w G definiuje rodzinę parami rozłącznych (A,B)–ścieżek. I odwrotnie: każda rodzina parami rozłącznych (A,B)–ścieżek generuje skojarzenie.
Bierzemy zbiór P wierzchołkowo rozłącznych (A,B)–ścieżek największej mocy, którą oznaczamy przez k. Z twierdzenia Mengera wynika istnienie (A,B)–separatora mocy k. Każdy separator przecina każdą krawędź.
Istnieje więc pokrycie wierzchołkowe mocy k.
Def #7
Niech X=(X,⪯) będzie częściowym porządkiem.
- Podzbiór L⊆X nazywamy łańcuchem w X jeśli (∀x,y∈L)(x⪯y∨x=y∨y⪯x)
- Podzbiór A⊆X nazywamy antyłańcuchem w X jeśli (∀x,y∈A)(x=y⟹(¬(x⪯y)∧¬(y⪯x)))
Fakt #2
Jeśli L jest łańcuchem oraz A jest antyłańcuchem, to ∣A∩L∣≤1.
Wniosek #1
Jeśli L jest rozbiciem X na łańcuchy i A jest antyłańcuchem, to ∣A∣≤∣L∣
Twierdzenie Dilwortha (o dekompozycji)
Dla dowolnego skończonego częściowego porządku X=(X,⪯) następujące dwie liczby są równe:
- min{∣L∣:L jest rozbiciem X na łanˊcuchy}
- max{∣A∣:A jest antyłanˊcuchem w X}
D-d Twierdzenia Dilwortha (o dekompozycji)
Niech X=(X,⪯) będzie częściowym porządkiem. Definiujemy graf G(V,E):
V={x−:x∈X}∪{x+:x∈X}
E={{x+,y+}:x≺y}
To jest graf dwudzielny. Znajdujemy skojarzenie M największej mocy k (krawędzie czerwone, druga część rysunku, tutaj k=3). Powracamy do wyjściowego częściowego porządku (trzecia część rysunku). Otrzymujemy rozbicie L na zbiorze X na łańcuchy. Niech C będzie zbiorem najmniejszych elementów w tych łańcuchach.
Wówczas ∣X∖C∣=∣M∣ oraz, oczywiście, ∣C∣=∣L∣.
Zatem ∣L∣=∣X∣−∣M∣=∣X∣−k.
Na mocy twierdzenia Königa mamy pokrycie wierzchołkowe A grafu G mocy k.
Niech B={x∈X:x+∈A∨x−∈A}. Wówczas ∣B∣≤∣A∣=k.
Claim: X∖B jest antyłańcuchem.
Załóżmy, że x,y∈X∖B oraz x=y. Gdyby x≺y, to {x+,y−}∈E, więc {x+,y−}∩A=∅, więc x∈B∨y∈B. Podobnie, nie jest możliwe aby y≺x
Zbiór C=X∖B jest więc antyłańcuchem w X, oraz ∣C∣=∣X∖B∣=∣X∣−∣B∣≥∣X∣−k. Zatem istnieją rozbicie L na łańcuchy oraz antyłańcuch C takie, że ∣C∣≥∣L∣, co kończy dowód.
Przykład zastosowania Dilwortha
Typowe użycie twierdzenie Dilwortha: rozważamy częściowy porządek na zbiorze X={1,…,n}×{1,…,n} określony wzorem: (x,y)⪯(x′,y′)↔(x≤x′)∧(y≤y′)
Jaka jest moc największego antyłańcucha?
Na pierwszym rysunku mamy antyłańcuch mocy n (czerwone kropki)
Na drugim rysunku mamy rozbicie na n łańcuchów (różne kolory). Wiemy, że max{antyłanˊcuch}=min{rozbicie}, więc w naszym przykładzie mamy n≤max{antyłanˊcuch}=min{rozbicie}≤n więc największa moc antyłańcucha jest równa n.
Czyli: metoda ta polega na znalezieniu antyłańcucha i rozbicia na łańcuchy tej samej mocy.
Zadanie: Rozwiąż to zadanie bez korzystania z twierdzenie Dilwortha.
Spójrzmy na ostatni przykład bardziej abstrakcyjnie. Załóżmy, że mamy dwa zbiory A i B oraz na funkcje f:A→R i g:B→R. Załóżmy, że wiemy, że: ( max{f(a):a∈A}≤min{g(b):b∈B} )≡(∗) (czyli (∀a∈A)(∀b∈B)( f(a)≤g(b) )).
Załóżmy ponadto, że udało nam się wskazać na dwa obiekty a0∈A oraz b0∈B takie, że f(a0)=g(b0).
Wówczas: f(a0)=max{f(a):a∈A}=min{g(b):b∈B} A z warunkami typu (∗) mieliśmy już kilka razy do czynienia. Na przykład, twierdzenie Mengera można zapisać skrótowo jako max{∣P∣:P jest (A,B)-sˊciez˙ką}=min{∣C∣:C jest (A,B)-separatorem} (przy czym nierówność ≤ jest oczywista), zaś twierdzenie Königa jako max{∣L∣:L jest skojarzeniem}=min{∣A∣:A jest pokryciem} (gdzie nierówność ≤ jest ponownie oczywista).