Przypomnijmy, że:
Graf dwudzielny to graf G=(V,E), w którym zbiór wierzchołków V da się podzielić na dwa rozłączne podzbiory V1 oraz V2 tak, by żadne dwa wierzchołki w obrębie tego samego podzbioru Vi nie były sąsiadami. Czasem, dla podkreślenia takiego podziału, graf dwudzielny będziemy oznaczać przez (V1∪V2,E). Zauważmy jednak, że podział taki nie jest jednoznaczny - np. w antyklice An dowolny podział zbioru wierzchołków na dwa podzbiory jest podziałem dwudzielnym.
Twierdzenie 13.6
Graf jest dwudzielny wtedy i tylko wtedy, gdy każdy jego cykl ma parzystą długość.
Dowód
Załóżmy najpierw, że graf G=(V,E) jest dwudzielny czyli, że V można podzielić na dwa rozłączne zbiory wierzchołków V1 oraz V2, w ten sposób, że podgrafy indukowane G|Vi są antyklikami. Rozważmy cykl v1→v2→…→vk−1→vk→v1 o k elementach. Bez straty ogólności możemy załóżyć, że v1∈V1. Ponieważ pomiędzy wierzchołkami z V1 nie ma krawędzi, to v2∈V2. Z kolei v3∈V1, a v4∈V2 i tak dalej. Tak więc każdy vi o nieparzystym indeksie i należy do V1. W konsekwencji vk musi mieć parzysty indeks k, aby mógł być połączony z v1. W rezultacie otrzymujemy, że cykle muszą być parzystej długości.
Dowód odwrotnej implikacji przeprowadzimy najpierw przy założeniu, że graf G jest spójny. Naszym celem jest takie podzielenie V na dwa zbiory wierzchołków V1,V2, by, dla i=1,2, żadne dwa wierzchołki z Vi nie były ze sobą połączone. Wybierzmy z V dowolny wierzchołek v. Niech V1 będzie zbiorem, do którego należy v oraz wszystkie wierzchołki, do których można dojść z v ścieżką parzystej długości, zaś V2 niech składa się z pozostałych wierzchołków. Załóżmy, że u1,u2∈V1. Wtedy oczywiście istnieją ścieżki v→…→u1 oraz u2→…→v o parzystej długości. Gdyby u1,u2 były połączone krawędzią, to dostalibyśmy cykl v→…→u1→u2→…→v o nieparzystej długości. A zatem G|V1 jest antykliką. Aby zobaczyć, że również G|V2 jest antykliką, wystarczy zauważyć że V2 składa się z tych wierzchołków grafu G, do których z początkowo wybranego wierzchołka v można dojść jedynie ścieżkami nieparzystej długości. Teraz uzasadnienie, że także V2 indukuje antyklikę jest analogiczne jak dla V1.
Niech teraz graf G ma l>1 spójnych składowych C1,…,Cl. Wtedy każdą spójną składową Ci możemy podzielić na zbiory C1i,C2i świadczące o dwudzielności grafu indukowanego GCi. W konsekwencji daje to podział V na C11∪…∪C1l oraz C21∪…∪C2l świadczący o dwudzielności całego grafu G.
Z grafami dwudzielnymi związany jest problem biura matrymonialnego. Do biura matrymonialnego zgłaszają się mężczyźni i kobiety poszukujący swojej drugiej połowy. Niestety nie każdemu mężczyźnie odpowiada każda kobieta i na odwrót. A więc każdy zgłaszający podaje swój opis, jak i wymagania stawiane potencjalnemu partnerowi. Interpretując mężczyzn i kobiety jako wierzchołki grafu, w którym krawędzie łączą "mężczyznę" z "kobietą", jeśli nawzajem sobie odpowiadają, otrzymujemy dwudzielny graf Gz(M,K) odpowiadający potencjalnym związkom. Biuro matrymonialne ku uciesze klientów (i maksymalizacji swojego zysku) chciałoby stworzyć jak najwięcej par. Optymalnie by było, gdyby nikt nie został samotny. Wtedy jednak musimy oczywiście założyć, że mężczyzn jest tyle samo co kobiet.
Skojarzenie w grafie dwudzielnym G=(V1∪V2,E) to podzbiór krawędzi M⊆E(G), w którym żadne dwie v1v2,u1u2∈M nie wychodzą z tego samego wierzchołka.
Powiemy ponadto, że v∈Vi jest skojarzony, jeśli istnieje w∈V3−i taki, że krawędź vw należy do skojarzenia.
Pełne skojarzenie V1 z V2 w grafie dwudzielnym G=(V1∪V2,E) to skojarzenie, w którym każdy wierzchołek z V1 jest skojarzony.
Naturalnym jest pytanie, kiedy istnieje pełne skojarzenie V1 z V2 w grafie dwudzielnym G=(V1∪V2,E). Odpowiedział na nie P. Hall. Użył do tego funkcji Φ(A) zwracającej dla A⊆V1 zbiór tych wierzchołków V2, które są sąsiednie z przynajmniej jednym wierzchołkiem w A.
Twierdzenie 13.7 [O Skojarzeniach w Grafie Dwudzielnym, P. Hall 1935]
Niech G=(V1∪V2,E) będzie grafem dwudzielnym. Wówczas pełne skojarzenie V1 z V2 istnieje wtedy i tylko wtedy, gdy |A|≤|Φ(A)| dla każdego podzbioru A zbioru V1.
Dowód
Dla dowodu nierówności |A|≤|Φ(A)| załóżmy, że M jest pełnym skojarzeniem. Elementy skojarzone z elementami zbioru A muszą być oczywiście w Φ(A). Z drugiej strony skojarzenie M determinuje injekcję A⟶Φ(A), skąd natychmiast |A|≤|Φ(A)|.
Dowód implikacji odwrotnej jest nieco trudniejszy. Przeprowadzimy go indukcyjnie ze względu na liczbę wierzchołków n1=|V1|. Dla n1=1 nierówność |V1|≤|Φ(V1)| gwarantuje, że jest co kojarzyć z jedynym wierzchołkiem w V1. Załóżmy więc, że n1>1 i rozważmy dwa przypadki:
Ponieważ dla A⊆W mamy Φ(A)⊆Φ(W), to
|A|≤|Φ(A)|=|Φ(A)∩Φ(W)|.
Ta nierówność pozwala użyć założenia indukcyjnego do skojarzenia wszystkich elementów ze zbioru W z elementami należącymi do Φ(W).
Wystarczy więc znaleźć skojarzenie pozostałych elementów, czyli skojarzenie zbioru V1−W ze zbiorem V2−Φ(W). Skojarzenie takie dostaniemy również indukcyjnie, o ile pokażemy, że dla dowolnego A⊆V1−W, zbiór jego sąsiadów w V2−Φ(W) jest liczniejszy od A, tzn.
|A|≤|Φ(A)−Φ(W)|.
Załóżmy, że jakiś zbiór A⊆V1−W nie spełnia powyższej nierówności. Wtedy
|A∪W|=|A|∪|W|>|Φ(A)−Φ(W)|+|Φ(W)|≥|Φ(A∪W)|,
co przeczy założeniu twierdzenia, przy którym pracujemy.