Berapa banyak pemotongan tepi yang harus dimiliki DAG?

10

Pertanyaan berikut ini terkait dengan optimalitas dari Bellman-Ford - t terpendek algoritma pemrograman jalan dinamis (lihat posting ini untuk sambungan). Juga, jawaban positif akan menyiratkan bahwa ukuran minimal dari program percabangan monoton nondeterministik untuk masalah STCONN adalah Θ ( n 3 ) . stΘ(n3)

Misalkan menjadi DAG (grafik asiklik langsung) dengan satu simpul sumber s dan satu simpul target t . Sebuah k - cut adalah satu set tepi, yang removal menghancurkan semua s - t jalur panjang k ; kita asumsikan bahwa ada jalan seperti di G . Perhatikan bahwa jalur s - t pendek tidak perlu dihancurkan.GstkstkGst

Pertanyaan: Apakah harus memiliki setidaknya (tentang) k disjoint k -cuts? Gk k

Jika tidak ada jalur - t yang lebih pendek dari k , jawabannya adalah YA, karena kami memiliki fakta min-max berikut yang diketahui (dual untuk teorema Menger's ) yang dikaitkan dengan Robacker . Potongan s - t adalah potongan k untuk k = 1 (menghancurkan semua jalur s - t ).stkstkk=1 st

Fakta: Dalam setiap diarahkan grafik, yang maksimum jumlah tepi-menguraikan - t luka adalah sama dengan minimum panjang dari s - t jalan. stst

Perhatikan bahwa ini berlaku bahkan jika grafik tidak asiklik.

Bukti: Secara sepele, minimum adalah paling tidak maksimum, karena setiap jalur - t memotong setiap s - t yang terpotong. Untuk melihat persamaan, misalkan d ( u ) menjadi panjang jalur terpendek dari s ke u . Biarkan U r = { u : d ( u ) = r } , untuk r = 1 , , d ( t ) , dan biarkan E rststd(u)suUr={u:d(u)=r}r=1,,d(t)Ermenjadi himpunan tepi meninggalkan . Jelaslah bahwa himpunan E r disjoint, karena himpunan U r adalah seperti itu. Jadi, tetap untuk menunjukkan bahwa masing-masing E r adalah s - t cut. Untuk menunjukkan hal ini, mengambil sewenang-wenang s - t path p = ( u 1 , u 2 , ... , u m ) dengan u 1 = s dan u m = t . Sejak dUrErUrErststp=(u1,u2,,um)u1=sum=t , urutan jarak d ( u 1 ) , , d ( u m ) harus mencapai nilai d ( u m ) = d ( t ) dengan mulai dari d ( u 1 ) = d ( s ) = 0 dan meningkatkan nilainya paling banyak 1d(ui+1)d(ui)+1d(u1),,d(um)d(um)=d(t)d(u1)=d(s)=01di setiap langkah. Jika beberapa nilai menurun, maka kita harus mencapai nilai d ( u i ) yang terakhir. Jadi, harus ada j di mana lompatan dari d ( u j ) = r ke d ( u j + 1 ) = r + 1 terjadi, artinya tepi ( u j , u j + 1 ) milik E r , seperti diinginkan. QED d(ui)d(ui)jd(uj)=rd(uj+1)=r+1(uj,uj+1)Er

Tetapi bagaimana jika ada juga jalur yang lebih pendek (dari )? Ada petunjuk / referensi? k


JT Robacker, Teorema Min-Max pada Rantai Terpendek dan Potongan Terpisah dari Jaringan, Memorandum Penelitian RM-1660, The RAND Corporation, Santa Monica, California, [12 Januari] 1956.
EDIT (sehari kemudian): Via argumen singkat dan sangat bagus, David Eppstein menjawab pertanyaan awal di atas dalam negatif : yang lengkap DAG (a turnamen transitif ) tidak dapat memiliki lebih dari empat menguraikan k -cuts! Bahkan, ia membuktikan fakta struktural yang menarik berikut , untuk k tentang Tnkk . Potonganmurnijika tidak mengandung insiden tepisataut.nst

Setiap cut murni dalam T n berisi lintasan panjang k . kTnk

Ini, khususnya, menyiratkan bahwa setiap dua potong- murni harus berpotongan! Tapi mungkin masih ada banyak k- cut murni yang tidak tumpang tindih "terlalu banyak". Karenanya, pertanyaan santai (konsekuensi untuk STCONN akan sama ):kk

Pertanyaan 2: Jika setiap potongan murni memiliki M edge, apakah grafik harus memiliki tentang Ω ( k M ) edge? kMΩ(kM)

Koneksi dengan kompleksitas STCONN berasal dari hasil dari Erdös dan Gallai yang satu memiliki untuk menghapus semua tapi tepi dari (tidak diarahkan) K m untuk menghancurkan semua jalur panjang k . (k1)m/2Kmk


EDIT 2: Saya sekarang mengajukan Pertanyaan 2 di mathoverflow .

Stasys
sumber

Jawaban:

9

Jawaban singkat: tidak.

Gnstk=n/3n/3sn/3tCst

XGxsxxtCXn/3CstXCkstGCXCk(n/3)/k=kXCCCPk

CsPPtsPtCCn/3stk

David Eppstein
sumber
@ David: Argumen yang menarik (meskipun saya belum cukup memahaminya: mengapa C harus memiliki k-path). Tetapi di mana argumen gagal (seharusnya) jika semua jalur panjang, panjang setidaknya k?
Stasys
1
@Stasys: G adalah turnamen, buktinya menggunakan fakta ini, jadi imo itu sebabnya akan gagal.
domotorp
@domotorp: terima kasih, memang saya ketinggalan kata "lengkap". Saya belum menemukan cacat, tetapi ini akan menjadi fakta yang agak berlawanan dengan intuisi: bahkan jika ada banyak k-path dalam turnamen asiklik, kami tidak dapat memilih banyak sistem terpisah dari perwakilan mereka (edge).
Stasys
@ David: Sebenarnya, untuk memiliki konsekuensi yang disebutkan, kita dapat membiarkan pemotongan hanya "hampir terpisah", yaitu dapat berbagi insiden tepi ke s atau t (kita hanya memiliki 2n tepi khusus ini). Tujuan sebenarnya adalah untuk menunjukkan bahwa G harus memiliki tentang tepi kN, jika kita tahu bahwa setiap potongan k "murni" (tanpa tepi khusus ini) harus memiliki tepi N. Dapatkah argumen Anda (yang sangat bagus, seperti yang saya lihat sekarang) dimodifikasi untuk situasi ("hampir terpisah") ini?
Stasys
2
Gk