Arithmetische Schaltungen mit


12

Stellen Sie sich eine Schaltung vor, die in Zahlen als Eingaben verwendet und Gatter hat, die aus den Funktionen max ( x , y ) , min ( x , y ) , 1 - x und x + y bestehen[0,1]max(x,y)min(x,y)1x . Der Ausgang der Schaltung ist dann auch eine Zahl in[0,1].x+y2[0,1]

Weiß jemand, ob dieses Modell oder ein eng verwandtes Modell untersucht wurde?

Insbesondere versuche ich, das Erfüllbarkeitsproblem für diese Schaltung zu lösen, nämlich den Maximalwert zu berechnen, der von dieser Schaltung erreicht werden kann (sie erreicht tatsächlich ein Maximum, da sie eine kontinuierliche Funktion in einem kompakten Bereich darstellt).

Bemerkung: Mein Studium dieses Modells erfolgt über gewichtete zeitliche Logiken, daher können auch Modelle nützlich sein, die sich auf letztere beziehen.


5
Sicher ist dieses Problem NP-schwer. (Über die Erfüllbarkeit: Sie haben und ¬ x 1 - x , mit denen Sie AND, OR und NOT ausführen können.) Ihre Frage ist also, ob dieses Problem in NP liegt oder nicht ? Die Entscheidungsfrage, ob eine solche Schaltung einen Eingang hat, der den Wert 1 ergibt, scheint in NP zu sein, da es, wenn es einen solchen Eingang gibt, einen gibt, der 0/1 ist. xymax{x,y}¬x1x
Neal Young

3
Wenn wir nicht deterministisch einen der möglichen Wahrheitswerte für x y wählen , wobei x , y alle Knotenpaare sind, so dass ein min ( x , y ) oder max ( x , y ) Knoten in der Schaltung erscheint, dies wird zu einem linearen Programmierproblem, das in P lösbar ist. Somit ist die Entscheidungsversion des ursprünglichen Maximierungsproblems in NP. (Dies ist eine Variante des Erfüllbarkeitsproblems in der Łukasiewicz-Logik. Weitere Informationen finden Sie in Hanikovás Kapitel im Handbuch der mathematischen Fuzzy-Logik.)2nxyx,ymin(x,y)max(x,y)
Emil Jeřábek 3.0

5
@Shaull: Lass es mich genauer beschreiben. Sei die Knoten der Schaltung, die Min- oder Max-Gates sind (hier ist m durch die Größe der Schaltung begrenzt), und seien b i und c i die Eingangsknoten des Gates a i . Wählen Sie für jedes i < m eine zusätzliche Bedingung b ic i oder c ib i . Es sind 2 m{ai:i<m}mbiciaii<mbicicibi2msolche Entscheidungen. Wenn eine solche Auswahl festgelegt ist, können Sie die Schaltung vereinfachen, indem Sie durch b i oder c i ersetzen. Daher wird daraus ein System linearer Gleichungen, deren Variablen die ursprünglichen Variablen des Problems sind, und zusätzliche Variablen, die diesen entsprechen. ..aibici
Emil Jeřábek 3.0

4
... Knoten in der Schaltung. Schließen Sie Ungleichungen ein, die angeben, dass die zusätzlichen Bedingungen erfüllt sind, Ungleichungen, die die ursprünglichen Variablen auf [ 0 , 1 ] beschränken , und eine Ungleichung, die angibt, dass der Ausgabeknoten den Wert u hat . Dann ist dies ein lineares Programm, das von der Wahl der zusätzlichen Einschränkungen abhängt, und die Schaltung erreicht den Wert u, wenn eine Auswahl der Bedingungen existiert, so dass das zugehörige lineare Programm eine Lösung hat. m[0,1]uu
Emil Jeřábek 3.0

5
Beachten Sie auch, dass der optimale Wert eines linearen Programms an einem Scheitelpunkt des Polytops erreicht wird. Dies bedeutet, dass der Nenner der optimalen Lösung als Determinante einer Matrix der Dimension ausgedrückt werden kann, deren Einträge Ganzzahlen konstanter Größe sind, und dass es in jeder Zeile nur O ( 1 ) Einträge ungleich Null gibt, und als solche ist durch 2 O ( n ) begrenzt . O(n)O(1)2O(n)
Emil Jeřábek 3.0

Antworten:


12

Cu[0,1]xC(x)u

{ai:i<m}Cmnnbiciaii<mbicicibi2maibicin

m[0,1]uO(n)u

O(n)O(1)2O(n)

min(1,x+y)(x+y)/2


4

Dieses Problem ist NP-schwer.

Sie können 3-SAT mit den Gates min ( x , y ), max ( x, y ) und 1− x erhalten .

Was wir wollen, ist, ein 3-SAT-Problem auf eine Schaltung zu reduzieren, für die Sie 1 erhalten können, wenn alle Variablen erfüllt sind, und Sie können sonst nur etwas erreichen, das streng kleiner als 1 ist.

Wir können erzwingen, dass alle Variablen entweder 0 oder 1 sind, indem wir mindestens viele Ausdrücke verwenden und diese Ausdrücke auf max ( x , 1 - x ) setzen.

Nun setzen wir für jede Klausel im 3-SAT-Problem xyz den Ausdruck max ( x , y , z ) auf das Minimum.

Ich weiß nicht, was der optimale Wert für ein nicht erfüllbares 3-SAT-Problem ist, aber es wird streng weniger als 1 sein.


2
Ja, NP-Härte ist die "einfache Richtung", wie in einem Kommentar oben angegeben. Wenn Sie nicht das durchschnittliche Gate verwenden, sondern nur min und max, können Sie leicht zeigen, dass der Maximalwert 1 ist, wenn die entsprechende Boolesche Schaltung erfüllt werden kann, und 1/2, wenn Sie einfach 1/2 an alle anschließen die Variablen). Wie auch immer, das Problem wurde in den obigen Kommentaren gelöst.
Shaull

1

Nicht genau das, wonach Sie gefragt haben, aber ein Kontext, in dem ähnliche Schaltkreise auftreten.

1x


3
1x
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.