Czy minimalne drzewa opinające wykresu ważonego mają taką samą liczbę krawędzi o danej masie?

21

Jeśli wykres ważony ma dwa różne minimalne drzewa i , to prawda, że ​​dla dowolnej krawędzi w liczba krawędzi w ma taką samą wagę jak (w tym sam ) jest taki sam jak liczba krawędzi w o tej samej wadze co ? Jeśli stwierdzenie jest prawdziwe, to jak możemy to udowodnić?T 1 = ( V 1 , E 1 ) E 1 e e E 2 eGT1=(V1,E1)e E 1T2=(V2,E2)eE1E1eeE2e

Aden Dong
źródło
Jednym trudnym, ale wykonalnym podejściem jest pokazanie 1) Algorytm Kruskala może wygenerować każde minimalne drzewo rozpinające i 2) wszystkie minimalne drzewa rozpinające znalezione przez Kruskal mają ten sam multiset o krawędzi.
Raphael

Odpowiedzi:

16

Twierdzenie: Tak, to stwierdzenie jest prawdziwe.

Szkic : Niech będą dwoma minimalnymi drzewami łączącymi z krawędziami . Załóżmy i ich różnicę symetryczną za pomocą .T1,T2W1,W2W1W2W=W1ΔW2

Wybierz krawędź pomocą , to znaczy jest krawędzią występującą tylko w jednym z drzew i ma minimalną niezgodną wagę. Taka krawędź, która jest w szczególności zawsze istnieje: Oczywiście, nie wszystkie krawędzie masy może być zarówno drzew inaczej . Wlog wpuszcza i zakłada, że ma więcej krawędzi masy niż .eT1ΔT2w(e)=minWemin W T 2eT1ΔT2minWminWWeT1T1minWT2

Teraz rozważ wszystkie krawędzie w , które również znajdują się w przekroju który jest indukowany przez w . Jeśli jest tam krawędź która ma taką samą wagę jak , zaktualizuj , używając zamiast ; zwróć uwagę, że nowe drzewo jest nadal minimalnym drzewem opinającym z takim samym multisetem krawędziowym jak . Powtarzamy ten argument, zmniejszając o dwa elementy, a tym samym usuwając jedną krawędź ze zbioru kandydatów na na każdym etapie. Dlatego po skończonych krokach dochodzimy do ustawienia, w którym wszystkie krawędzie wT2CT1(e)eT1eeT1eeT1WeT2CT1(e)T 1 w ( e )(gdzie jest zaktualizowaną wersją) mają inne wagi niż .T1w(e)

Teraz zawsze możemy wybrać , abyśmy mogli zamienić i ¹, tzn. Możemy stworzyć nowe drzewo opinająceeCT1(e)T2ee

T3={(T1{e}){e},w(e)<w(e)(T2{e}){e},w(e)>w(e)

który ma mniejszą wagę niż i ; jest to sprzeczne z wyborem jako minimalnego drzewa rozpinającego. Dlatego .T1T2T1,T2W1=W2


  1. Węzeł incydentu jest w połączony ścieżką ; jest unikalną krawędzią w .eT2PePCT1(e)
Raphael
źródło
3
Odnosząc się do komentarza Dave'a , wymyśliłem ten dowód po 0), wierząc, że mam kontrprzykład, który, jak zauważyłem, był zły po TikZingu, 1) próbowałem udowodnić stwierdzenie, ale nie, 2) próbowałem zbudować kontrprzykład na podstawie tego, gdzie dowód się nie powiódł, a potem ponownie, a na koniec 3) wykorzystując sposób, w jaki te nowe przykłady nie zadziałały w celu przedstawienia dowodu. Prawdopodobnie dlatego też nie jest tak wyrafinowany, jak mógłby być.
Raphael
tak, dokładnie nie rozumiem, co rozumie się przez cyt wywołany przez w Widziałem tylko cięcie takie jak cięcieT 1 ( S , V - S )eT1(S,VS)
dragoboy
@dragoboy Usuwanie rozłącza ; jeden składnik tworzy , drugi uzupełnienie. T 1 S.eT1S
Raphael
5

Oto nieco prostszy argument, który działa również w przypadku innych matroidów. (Widziałem to pytanie z innego ).

Załóżmy, że ma krawędzi. Bez utraty ogólności, załóżmy, że funkcja wagi przyjmuje wartości w , więc mamy podział na zbiory dla . Można zrobić indukcję ponumerować o niepusty oraz liczba wierzchołków w ; dla i dowolnego wyrażenie jest oczywiste.m w [ m ] E E i : = w - 1 ( i ) i [ m ] j E i n G j = 1 nGmw[m]EEi:=w1(i)i[m]jEinGj=1n

Standardowa fakt o matroids jest to, że za każdym MST istnieje liniowa przedłużenie wywołanego przez zamawiającego taki sposób, że algorytm zachłanny produkuje .w TTwT

Aby zamknąć indukcję, weź jako największą liczbę, aby nie był pusty. Ustaw . Zauważ, że każde liniowe przedłużenie stawia każdą krawędź w przed jakąkolwiek krawędzią w . Zgodnie z tym, każdy MST składa się z rozciągającego się lasu podsgrafu indukowanego przez i niektórych krawędzi z . Zgodnie z hipotezą indukcyjną każdy połączony składnik ma taką samą liczbę krawędzi od każdego dla . Ponieważ wszystkie wyboryE t E = E 1E t - 1 w E E t F E E t F E i i < t F E t F FtEtE=E1Et1wEEtFEEtFEii<tFmają ten sam rozmiar, liczba krawędzi od wymaganych do uzupełnienia do drzewa opinającego jest niezależna od wyboru i gotowe.EtFF

Louis
źródło
Czy możesz podać matroidowi problem MST? Wydaje mi się, że pamiętam, że trudno jest wymyślić coś takiego i jeszcze nie muszę tego robić (rygorystycznie). Tak, używamy chciwych algorytmów, lecz nie (kanoniczne) chciwych od teorii matroid.
Raphael
To powiedziawszy, myślę, że twój główny argument działa (i wcale nie potrzebuje matroidów): przez poprawność algorytmu Kruskala i fakt, że każdy MST można uzyskać z serii Kruskala z określoną (posortowaną) permutacją multisetu wagi ( rygorystyczny dowód w toku), roszczenie jest następujące. Piszę „dowód w toku”, ponieważ nie jest to ani trywialne, ani natychmiastowe: bez użycia samego roszczenia wcale nie jest jasne, dlaczego Kruskal powinien znaleźć wszystkie MST. Oczywiście, gdyby ktoś miał inny zestaw wagowy, Kruskal nigdy by go nie znalazł!
Raphael
1. Matroid to matroid graficzny. Gotowy!
Louis,
2. Jesteś zdezorientowany. W sposób abstrakcyjny wykonujemy optymalizację liniową w stosunku do bazowego polytopa. Jedną ze standardowych cech matroidów jest to, że chciwy algorytm działa dla każdego wyboru wag. Wszystkie -minimal Spanning drzewa są wierzchołkami obliczu tego Polytope. Teraz standardowe pomysły z LP prowadzą do standardowego faktu, o którym wspomniałem. w
Louis,
1. Czy możesz podać referencje? Nie wiem, z graficzną matroid. 2. Teraz przeciągasz do niego także LP! Mówię tylko, że w twojej odpowiedzi nie ma matroidu i że bez matroida linia rozumowania wydaje się polegać na samym twierdzeniu. Jeśli masz na to sposób, edytuj / wyjaśnij odpowiedź.
Raphael