Ein Partitionsproblem mit Auftragsbeschränkungen

8

In dem OrderedPartitionProblem besteht die Eingabe aus zwei Folgen von positiven ganzen Zahlen, und . Die Ausgabe ist eine Aufteilung der Indizes in zwei disjunkte Teilmengen und , so dass:n(ai)i[n](bi)i[n][n]IJ

  1. iIai=jJai
  2. Für alle und für alle : .iIjJbibj

Mit anderen Worten, wir müssen zuerst die Indizes auf einer Linie so ordnen, dass die schwach ansteigen, und dann die Linie so schneiden, dass die Summe der auf beiden Seiten gleich ist.biai

Wenn alle sind, ist Bedingung 2 irrelevant und wir haben eine Instanz des NP-harten Problems. Wenn andererseits alle unterschiedlich sind, legt Bedingung 2 den Indizes eine einzige Reihenfolge auf, so dass nur Optionen zu überprüfen sind und das Problem polynomisch wird. Was passiert zwischen diesen Fällen?biPartitionbin1

Um die Frage zu formalisieren, definieren Sie OrderedPartition[n,d]für das Problem, das auf Instanzen der Größe , in denen die größte Teilmenge identischer Größe . Der einfache Fall, wenn alle -s unterschiedlich sind, ist und der schwierige Fall, wenn alle -s identisch sind, ist .1dnnbidbiOrderedPartition[n,1]biOrderedPartition[n,n]

Allgemeiner ist für jedes und in jedem Fall die Anzahl möglicher Partitionen, die die Bedingung 2 respektieren, . Wenn also , dann ist in immer noch ein Polynom .ndOrderedPartition[n,d]O(n2d)dO(logn)OrderedPartition[n,d]n

Andererseits können wir für jedes und von einem Problem mit ganzen Zahlen auf reduzieren . Sei eine Instanz von . Definieren Sie eine Instanz von:ndd p 1 , , p dPartitiondOrderedPartition[n,d]p1,,pdPartitionOrderedPartition[n,d]

  • Für jedes sei und .i{1,,d}ai:=2npibi:=1
  • Für jedes sei und [wenn ungerade ist, mache so dass die Summe gerade ist] .i{d+1,,n}ai:=1bi:=in - d a n : = 2
    ndan:=2

Wenn also für eine ganze Zahl , dann ist NP-hart.dΩ(n1/k)k1OrderedPartition[n,d]

FRAGE: Was passiert in den Zwischenfällen, in denen superlogarithmisch, aber in ?dn

Erel Segal-Halevi
quelle

Antworten:

5

Intuitiv sollten die Zwischenfälle weder in P noch NP-hart sein. Vielleicht kommt es genau darauf an, was wir unter "Zwischenfall" verstehen. Hier ist eine Interpretation, für die wir etwas beweisen können.

Hinweis: Die Exponential-Time-Hypothese (ETH) besagt, dass SAT nicht für jede Konstante einen Algorithmus hat, der in der Zeit . Siehe auch diese cs.stackexchange-Diskussion. Soweit wir wissen, ist die ETH wahr.ϵ>02nϵ

Definieren Sie OP als Einschränkung des OrderedPartition-Problems auf Instanzen, in denen . Entsprechend zu Fällen, in denen . Hier wollen wir OP erfassen, was der Beitrag unter "Zwischeninstanzen" versteht. Wir zeigen, dass diese Instanzen wahrscheinlich nicht in P oder NP-hart sind.cdlogcnn2d1/c cc

Lemma 1. Wenn OP für alle in P ist , schlägt die ETH fehl.cc

Beweis. Angenommen OP ist für alle in P . Das heißt, für einige Funktionen hat OP einen Algorithmus, der in der Zeit läuft . SAT-Eingaben der Größe reduzieren sich (über Partition wie im Beitrag beschrieben) auf OrderedPartition für eine Konstante und eine beliebige Konstante . SAT-Eingaben der Größe reduzieren sich also auf OP Instanzen der Größe , die in der Zeit über den Algorithmus gelöst werden können für OP . Für jedesccfc n f ( c ) n [ 2 n b / c , n b ] b c > 0 n c 2 n b / c 2 f ( c ) n bcnf(c)n[2nb/c,nb]bc>0nc2nb/c2f(c)nb/c cϵ>0c=2b/ϵ2c'n ϵ / 22n ϵcϵ>0Nehmen wir beispielsweise , so kann SAT in der Zeit (für großes ) gelöst werden. gegen die ETH verstoßen. c=2b/ϵ2cnϵ/22nϵn    

Hinweis: Es scheint mir wahrscheinlich, dass sogar OP nicht in P ist, aber so etwas zu zeigen wäre ähnlich wie beispielsweise zu zeigen, dass in SAT kein Algorithmus in der Zeit .22n

Lemma 2. Wenn OP für einige NP-hart ist , schlägt die ETH fehl.cc

Beweis. Angenommen, OP ist für einige NP-hart . Dann reduzieren sich SAT-Eingänge der Größe für einige in der Zeit auf OP . Das heißt, zu Instanzen von OrdereredPartition denen . Wie im Beitrag beobachtet, können solche Fälle in der Zeit (stark!) Gelöst werden. gegen die ETH verstoßen. ccnc O ( n b ) b [ n b , d ] d log c ( n bcO(nb)b[nb,d]dlogc(nb)nO(1)2d=nO(1)2logc(nb)    

Wahrscheinlich kann etwas saubereres oder stärkeres gezeigt werden. Wenn ich raten müsste, würde ich NP als die Komplexitätsklasse definieren, die aus jenen Sprachen besteht, die einen nicht deterministischen Polyzeitalgorithmus haben, der bei jeder Eingabe der Größe höchstens nicht deterministische Vermutungen. (Hier könnte eine beliebige Funktion sein.) Dann befindet sich OrderedPartition in NP . Vielleicht ist es für diese Klasse unter Mehrzeitverkürzungen vollständig? Eine natürliche Vermutung für ein Problem, das für die Klasse vollständig sein sollte, wäre: gegeben eine Schaltung der Größe mitd(n)nd(n)d[n,d(n)] d ( n ) nd p ( n ) p(n)p(n)d(n)ndEingangsgatter, gibt es einen Eingang, der den Schaltungsausgang wahr macht? Oder etwas ähnliches. (Ich frage mich, wie dies mit der Definition von SAT verglichen wird, das aus SAT-Instanzen besteht, die mit nutzlosen Bits aufgefüllt sind , um die Eingabe größer zu machen. Wenn superpolynomisch, aber sub ist -exponentiell sollte das Problem weder NP-hart sein noch in P.)p(n)p(n)p(n)

ps Siehe auch Konsequenzen subexponentieller Beweise / Algorithmen für SAT .

Neal Young
quelle
Sehr interessant, danke!
Erel Segal-Halevi