Bir güç kümesinin alt kümesi için en kısa temsili nasıl bulurum?


13

Aşağıdaki sorun veya NP sertliğinin bir kanıtı için verimli bir algoritma arıyorum.

Let bir dizi ve olmak A P ( Σ ) alt kümelerinin bir dizi Σ . Bir dizi Bul w Σ * en az bir uzunlukta, örneğin her biri için bu L A , bir orada k N , öyle ki { a k + i | 0 i < | L | } = L .ΣAP(Σ)ΣwΣLAkN{wk+i0i<|L|}=L

Örneğin, için , kelime w = b bir c için, çünkü soruna bir çözüm { a , b } var k = 0 için, { a , c } var k = 1 .A={{a,b},{a,c}}w=bac{a,b}k=0{a,c}k=1

Motivasyonuma gelince, her kenarın giriş alfabesinden bir dizi harfle etiketlenebildiği sonlu bir otomatın kenar kümesini temsil etmeye çalışıyorum. Ben tek bir dize saklamak ve daha sonra her kenarda bu dize işaretçiler bir çift tutmak istiyorum. Amacım bu dizenin uzunluğunu en aza indirmektir.


1
Başka bir deyişle, sorun bir dizi haline sipariş setleri etmektir maksimize Σ | L iL i + 1 | ? L1,,Ln|LiLi+1|
Karolis Juodelė

Li,Li+1,Li+2LiLi+2wLi+1{{a,b},{a,c},{a,d}}awbacad

ijLiLj

A={{c,o,w},{o,w,l},{w,o,l,f}}cowowlwolfcowlf
MindaugasK

@MindaugasK, bu doğru, çok güzel bir örnek :)
avakar

Yanıtlar:


4

Hamilton yolundan bir azalma bulduğuma inanıyorum , bu da NP-zor problemini kanıtlıyor.

wΣALAm1{wm+i0i<|L|}=L

Orijinal sorunun karar versiyonunu düşünün; Ak0Akk

G=(V,E)vVLv={v}{eEve}vΣ=EA={LvvV}GA2|E|+1

v1e1v2en1vnGH={e1,e2,,en1}vUv=LvHαvUvw=αv1e1αv2e2en1αvnALv1α1e1Lvnen1αnvii{1,n}Lviei1uvieiEw|V|1HV|w|=2|E|+1

wA2|E|+1eEvVweEwvVwHEw|w|=2|E||H|+|V|

wue1e2ekvu,vVeiEu,veiHei={u,v}eiGeiHHw

|V||H||V|1|w|2|E|+1|w|2|E|+1|H|=|V|1Hwh1h2hn1Tüm elemanlar amacıyla da görünür ağırlık . Ardından v 1 s 1 v 2 s 2Hwv1h1v2h2hn1vnG

Hamilton yolunun varlığına karar verme problemi NP-zor ve yukarıdaki azalma polinom olduğundan, orijinal problem de NP-zor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.