Ile rozcięć krawędzi musi mieć DAG?


10

Następujące pytanie jest związane z optymalności Bellmana-Forda - najkrótsza droga algorytm programowania dynamicznego (patrz ten post dla połączenia). Pozytywna odpowiedź sugerowałaby również, że minimalny rozmiar monotonicznego niedeterministycznego programu do rozgałęziania dla problemu STCONN to . tstΘ(n3)

Niech być DAG (skierowane acykliczny wykres) z jednym węzłem źródłowym jeden docelowego węzła . - cięcie to zestaw krawędzi, których usunięcie usunięcie wszystkich - ścieżek długości ; zakładamy, że w są takie ścieżki . Zauważ, że krótsze ścieżki - nie muszą być niszczone.s t kGstkt k G s tstkGst

Pytanie: Czy musi mieć co najmniej (o) rozłącznych -cuts? kGk k

Jeśli nie ma ścieżek - krótszych niż , odpowiedź brzmi TAK, ponieważ mamy następujący znany fakt min-max (podwójny z twierdzenia Mengera ) przypisany Robacker . - cięcia jest -cut dla (niszczą wszystkie - ki).t kstkt k k = 1stkk=1 tst

Fakt: Na dowolnym skierowanym wykresie maksymalna liczba cięć s - rozłącznych od krawędzi tjest równa minimalnej długości ścieżki s - t .

Pamiętaj, że dotyczy to nawet sytuacji, gdy wykres nie jest acykliczny.

Dowód: Trywialnie, minimum to co najmniej maksimum, ponieważ każda ścieżka - t przecina każdą s - t wyciętą na krawędzi. Aby zobaczyć równość, niech d ( u ) będzie długością najkrótszej ścieżki od s do u . Niech U r = { u : d ( u ) = r } , dla r = 1 , , d ( t ) , i niech E rststd(u)suUr={u:d(u)=r}r=1,,d(t)Erbyć zbiorem krawędzi pozostawiających . Jest oczywiste, że zestawy e r są rozłączne, ponieważ zestawy U R są takie. Tak więc, pozostaje on, że każda z e r oznacza s - t cięcia. Aby to wykazać, brać dowolna s - t ścieżka p = ( U 1 , U 2 , ... , U m ) z u 1 = a a u m = T . Ponieważ dUrErUrErststp=(u1,u2,,um)u1=sum=t , sekwencja odległości d ( u 1 ) , , d ( u m ) musi osiągnąć wartość d ( u m ) = d ( t ) , zaczynając od d ( u 1 ) = d ( s ) = 0 i zwiększenie wartości o maksymalnie 1d(ui+1)d(ui)+1d(u1),,d(um)d(um)=d(t)d(u1)=d(s)=01na każdym kroku. Jeśli jakaś wartość zostanie zmniejszona, wówczas musimy osiągnąć wartość d ( u i ) później. Musi więc istnieć j, gdzie następuje skok z d ( u j ) = r do d ( u j + 1 ) = r + 1 , co oznacza, że ​​krawędź ( u j , u j + 1 ) należy do E r , ponieważ pożądany. CO BYŁO DO OKAZANIA d(ui)d(ui)jd(uj)=rd(uj+1)=r+1(uj,uj+1)Er

Ale co, jeśli istnieją również krótsze (niż ) ścieżki? Wszelkie wskazówki / referencje? k


JT Robacker, twierdzenia Min-Max o najkrótszych łańcuchach i rozłącznych odcinkach sieci, Memorandum badawcze RM-1660, The RAND Corporation, Santa Monica, Kalifornia, [12 stycznia] 1956 r.
EDIT (dzień później): Przez krótki i bardzo miły argumentem, David Eppstein odpowiedział na pytanie powyżej w oryginalny negatyw : im kompletny DAG (a przechodni turnieju ) nie może mieć więcej niż cztery rozłączne k -cuts! W rzeczywistości dowodzi on następującego interesującego faktu strukturalnego , dla k około Tnkk . Cięcie jestczyste,jeśli nie zawiera krawędzi padających naslubt.nst

Każdy czysty cut w T n zawiera ścieżkę o długości k . kTnk

Oznacza to w szczególności, że co dwa czyste cięcia muszą się przecinać! Ale być może wciąż istnieje wiele czystych cięć typu K , które nie nakładają się na „za dużo”. Stąd łagodne pytanie (konsekwencje dla STCONN byłyby takie same ):kk

Pytanie 2: Jeśli każdy czysty cut ma M krawędzi, to czy wykres musi mieć około Ω ( k M ) krawędzi? kMΩ(kM)

Połączenie ze złożonością STCONN pochodzi od związku z Erdös i Gallai które trzeba usunąć wszystkie ale krawędzie od (niekierowanego) K m , aby zniszczyć wszystkie ścieżki o długości k . (k1)m/2Kmk


EDYCJA 2: Zadałem teraz pytanie 2 w Mathoverflow .

Odpowiedzi:


9

Krótka odpowiedź: nie.

Niech być kompletny DAG (przechodni turnieju) w n wierzchołków z s i t źródło i umywalki, niech k = Gnst . Zauważ, że mogą występować co najwyżej cztery rozłączne nacięcia, które zawierają więcej niżn/3krawędziprzypadających naslub więcej niżn/3krawędzi przypadających nat. Jeśli więc ma być wiele rozłącznych cięć, możemy założyć, że istnieje cięcieC,które nie zawiera dużej liczby krawędzi przypadających nasit.k=n/3n/3sn/3tCst

Teraz jest pełna subgraph indukowane w G przez zbiór wierzchołków x tak, że krawędzie s x i x t , nie należą do C . Liczba wierzchołków w X wynosi co najmniej n / 3 , ponieważ w przeciwnym razie C dotknie zbyt wielu krawędzi padających na s lub t . Jednak X C nie może zawierać ścieżki- k , ponieważ jeśli taka ścieżka istniała, można ją połączyć za pomocą s i t, tworząc długą ścieżkę w GXGxsxxtCXn/3CstXCkst . Dlatego najdłuższe warstwowanie X C ma mniej niż k warstw i ma warstwę zawierającą więcej niż ( n / 3 ) / k = k wierzchołków. Ponieważ jest to warstwa najdłuższego warstwowania ścieżki, jest ona niezależna w X C , a zatem kompletna w C , więc C zawiera ścieżkę P przez wierzchołki tej warstwy o długości k . Ta ścieżka musi być niezależna od wszystkich innych cięć.GCXCk(n/3)/k=kXCCCPk

Każde cięcie, które nie jest musi zawierać albo krawędź od s do początku ścieżki P, albo krawędź od końca ścieżki P do t , w przeciwnym razie nie blokuje ścieżki s - P - t . Więc jeśli C istnieje, mogą istnieć maksymalnie trzy rozłączne cięcia. A jeśli C nie istnieje (to znaczy, jeśli wszystkie cięcia obejmują więcej niż n / 3 krawędzi przypadających na s lub t ), mogą występować co najwyżej cztery rozłączne cięcia. Tak czy inaczej, jest to o wiele mniej niż k cięć.CsPPtsPtCCn/3stk


@ David: Interesujący argument (choć jeszcze go nie rozumiem: dlaczego C musi mieć ścieżkę k). Ale gdzie argument zawodzi (powinien), jeśli wszystkie ścieżki st są długie, o długości co najmniej k?
Stasys,

1
@Stasys: G jest turniejem, dowód wykorzystuje ten fakt, więc imo właśnie dlatego się nie powiedzie.
domotorp

@domotorp: dzięki, rzeczywiście brakowało mi słowa „kompletne”. Nie mogę jeszcze znaleźć wady, ale byłby to raczej sprzeczny z intuicją fakt: nawet jeśli w acyklicznym turnieju jest dużo ścieżki K, nie możemy wybrać wielu rozłącznych systemów ich przedstawicieli (krawędzi).
Stasys,

@David: W rzeczywistości, aby mieć wspomniane konsekwencje, możemy pozwolić, aby cięcia były tylko „prawie rozłączne”, tj. Mogą mieć wspólne krawędzie przypadające na s lub t (mamy tylko 2 na tych specjalnych krawędziach). Prawdziwym celem jest pokazanie, że G musi mieć około kN krawędzi, jeśli wiemy, że każde „czyste” cięcie K (bez tych specjalnych krawędzi) musi mieć N krawędzi. Czy twój (bardzo ładny, jak teraz widzę) argument można zmodyfikować do tej („prawie rozłącznej”) sytuacji?
Stasys

2
Jeśli zezwalasz na to, aby cięcia współdzieliły incydenty z krawędziami s lub t, to dlaczego nie możesz sprawić, aby wszystkie cięcia składały się dokładnie z zestawu incydentów z krawędziami s? Z drugiej strony mój argument pokazuje, że (przy wyborze i k ) może istnieć tylko jedno czyste cięcie. Gk
David Eppstein,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.