Kann die Zugabe in einer Tiefe von weniger als 5 durchgeführt werden?

21

Unter Verwendung des Carry-Look-Ahead-Algorithmus können wir die Addition unter Verwendung einer Schaltkreisfamilie mit einer Polynomgrößentiefe von 5 (oder 4?) berechnen . Ist es möglich, die Tiefe zu verringern? Können wir die Addition von zwei Binärzahlen unter Verwendung einer Polynomgrößen-Schaltkreisfamilie mit einer Tiefe berechnen, die geringer ist als die, die durch den Carry-Look-Ahead-Algorithmus erhalten wird?AC0

Gibt es Superpolynom-Untergrenzen für die Größe von Schaltkreisfamilien, die Additionen berechnen, wobei 2 oder 3 ist? dACd0d

Mit Tiefe meine ich Wechseltiefe.

Anonym
quelle
Kannst du uns deinen Namen nennen? Wer du bist? Seit ungefähr einem Monat erstellen die Leute hier einen neuen Benutzernamen, stellen eine Frage und löschen dann diesen Benutzernamen!
Tayfun Pay
14
@Geekster, im Allgemeinen müssen Benutzer kein Konto erstellen oder ihre echten Namen verwenden (dies wird jedoch aus verschiedenen Gründen empfohlen). Wenn Sie allgemeine Bedenken zu etwas haben, wenden Sie sich an Theoretical Computer Science Meta , um es zur Sprache zu bringen.
Kaveh
4
Dies könnte brachial erzwungen werden, indem überprüft wird, dass keine Schaltung der Tiefe AC die -Bitsumme von zwei Bit-Eingaben für ein bestimmtes festes berechnen kann ; Es gibt nur endlich viele Boolesche Funktionen der Eingangsbits, die in jeder Tiefe auftreten können. 0 ( m + 1 ) m m40(m+1)mm
mjqxxxx
5
@mjqxxxx: Wie erzwingen Sie die Polynomgrößenbeschränkung für AC0-Schaltungen, wenn Sie ein festes m erzwingen? @OP: Ist die aktuell beste Schaltkreistiefe 4 oder Tiefe 5?
Robin Kothari
14
@mjqxxxx: Jede Boolesche Funktion kann durch Schaltkreise der Tiefe berechnet werden. Nun nehmen wir Sie für Ihre Fest finden eine Schaltung Größe . Wie beurteilen Sie, ob es für jedes Kreise gibt , wobei , oder ob es nur Kreise der Größe , wobei ? Es gibt einfach keine Möglichkeit, aus einem endlichen Beispiel auf asymptotische Informationen zu schließen. m s c n n c = s / m 2 n= ( log s ) / m2mscnnc=s/m2ϵnϵ=(logs)/m
Emil Jeřábek unterstützt Monica

Antworten:

13

Nach Satz 3.1 in Alexis Maciel und Denis Therien Schwellenschaltungen der kleinen Mehrheits Tiefe gibt es in der Tat eine Tiefe-3 Schaltung zur Berechnung der Addition von zwei Zahlen.

Die genaue Grenze ist wobei Probleme sind, die Schaltkreise mit Tiefe-2 mit beiden Gates an der Spitze aufweisen und Kreise sind Kreise der Tiefe eins (eine detaillierte Erläuterung der Notation finden Sie im Artikel). Δ 2 = 2Π 2 A C 0, N C 0 1 N C 0Δ2NC10Δ2=Σ2Π2AC0,NC10NC0

Die Hauptbeweisideen sind:

  • zuerst die Carry-Lookahead-Schaltung alsNC0Δ2NC0
  • als Nächstes die Schließungseigenschaften von auf, um diese als zu schreibenΔ 2N C 0Δ2Δ2NC0
  • Verwenden Sie zum Schluss die Tatsache, dassNC0Δ1NC10
SamiD
quelle
9

Schaltkreise der Tiefe 2 erfordern eine exponentielle Größe, um die Addition zu berechnen, da ein Schaltkreis der Tiefe 2 entweder DNF oder CNF sein muss und es leicht zu überprüfen ist, ob es exponentiell viele Zwischen- und Höchstwerte gibt.

Achtung : Das Teil unten ist fehlerhaft . Siehe die Kommentare unter der Antwort.

Wie ich es zähle, kann die Addition in der Tiefe 3 erfolgen. Angenommen, und b i sind die i- ten Bits der beiden Zahlen, wobei 0 der Index des LSB und n des MSB ist. einichbichich0n

Berechnen wir das te Bit der Summe, s i auf die übliche Weise mit Carry Look Ahead:ichsich

sich=einichbichcich

wobei XOR ist und c i der Übertrag ist, der wie folgt berechnet wird:cich

cich=jj<ich(Gjpj)

und bedeutet, dass der j- te Ort den Übertrag "erzeugt" hat:Gjj

Gj=(einjbj)

und bedeutet, dass der Übertrag von j nach i propagiert wird :pjjich

pj=kj<k<ich(einjbj)

Zählt man die Tiefe, so ist die Tiefe 2 und c i die Tiefe 3. Es scheint zwar, dass s i die Tiefe 4 oder 5 ist, es ist aber auch nur die Tiefe 3, da es sich bei der Berechnung der Schaltkreise der Tiefe 3 um eine beschränkte Berechnung handelt kann die oberen beiden Ebenen mit De-Morgan-Formeln nach unten drücken, während die Schaltkreisgröße um einen polynomiellen Betrag verringert wird.pjcichsich

Noam
quelle
4
Ich weiß nicht recht sehen , wie beschränkte Fanin Berechnung der Tiefe 3 Schaltungen automatisch Tiefe 3. Wenn, sagen wir, Sie schreiben als ( c i¬ ( a ib i ) ) ( ¬ c i( ein ib i ) ) können Sie mit oben die erste Verbindung zu einem Kreis mit Tiefe 3 und mit die zweite Verbindung zu einem Kreis mit Tiefe 3 herstellensich(cich¬(einichbich))(¬cich(einichbich))oben drauf. Ich weiß nicht, wie man die obere Disjunktion nach unten drückt, ohne die Tiefe um eins zu erhöhen, um die Nichtübereinstimmung zwischen den Verbindungstypen in den beiden Teilen zu erklären. Dies kann durch die Feststellung behoben werden, dass auch auf andere Weise durch eine Schaltung der Tiefe 3 berechnet werden kann ...cich
Emil Jeřábek unterstützt Monica
1
... mit oben. Auf der anderen Seite haben alle Tiefen-3-Schaltkreise das untere Fan-In begrenzt, daher würde ich sie Tiefe 2 1/2 nennen.
Emil Jeřábek unterstützt Monica
1
Das ist offensichtlich. Was ich unter Hinweis darauf ist , dass wie geschrieben, Sie nicht haben hier ein ODER von zwei Tiefen Schaltungen mit und an der Spitze. Sie haben ein ODER mit zwei Schaltkreisen der Tiefe d , von denen einer oben UND und der andere oben ODER hat. Ich bezweifle, dass solche Schaltungen im Allgemeinen in die Tiefe d konvertiert werden können . Stellen Sie sich die polynomischen Fan-In-ANDs und -ORs als Quantifizierer vor. Sie können ausdrücken ( x 1x 2Q x d ϕ ( x 1 , , x d ) ) ( xddd als Vorformel mit d Quantifiziererblöcken, aber Sie brauchen d + 1 Blöcke, um auszudrücken ...(x1x2Q.xdϕ(x1,,xd))(x1x2Q.xdψ(x1,,xd))dd+1
Emil Jeřábek unterstützt Monica
1
... die Formel . (x1x2Q.xdϕ(x1,,xd))(x1x2Q.¯xdϕ(x1,,xd))
Emil Jeřábek unterstützt Monica
5
Für ein explizites Gegenbeispiel zum allgemeinen Prinzip sei eine Familie von Funktionen, die durch A C 0 d -Schaltungen mit OR an der Spitze berechenbar sind, wobei superpolynomielle d -Schaltungen mit AND an der Spitze erforderlich sind (zB Sipser-Funktionen). Dann haben x 0f n keine A C 0 d -Schaltungen. Nehmen Sie für den Widerspruch an, dass C n ( x 0 , , x n )fn(x1,,xn)EINCd0dx0fnEINCd0Cn(x0,,xn)sind solche Schaltungen, und dass OR oben hat (der andere Fall ist symmetrisch). Durch Setzen von x 0 = 1 erhalten wir A C 0 d Schaltkreise für ¬ f n mit OR oben, daher A C 0 d Schaltkreise für f n mit AND oben, ein Widerspruch. Cnx0=1EINCd0¬fnEINCd0fn
Emil Jeřábek unterstützt Monica