Schaltungskomplexität der Mehrheitsfunktion

13

Sei die Majoritätsfunktion, dh genau dann, wenn . Ich habe mich gefragt, ob es einen einfachen Beweis für die folgende Tatsache gibt (mit "einfach" meine ich, dass ich mich nicht auf die probabilistische Methode wie Valiant 84 oder auf das Sortieren von Netzwerken verlasse; am besten eine explizite, einfache Konstruktion der Schaltung):f:{0,1}n{0,1}f(x)=1i=1nxi>n/2

f kann durch eine Familie von Schaltkreisen mit einer Tiefe von und einer Größe von Poly (n) berechnet werden , wobei die Gatter aus NICHT-Gattern, ODER-Gattern mit zwei Eingängen und UND-Gattern mit zwei Eingängen bestehen.O(log(n))

matthon
quelle
6
Dies könnte von Interesse sein: Igor Sergeev, Obere Schranken für die Formelgröße der Mehrheitsfunktion ; auch hier kündigt er etwas bessere Obergrenzen an. Wenn Sie jedoch nur nach Kreisen (nicht nach Formeln ) fragen, hat, wie Igor mich erinnerte, jede symmetrische Boolesche Funktion (nicht nur die Mehrheit) einen Kreis mit der Tiefe und der Größe : Berechnen Sie einfach die Summe von s, und realisieren Sie eine boolesche Funktion von Variablen. Für die Mehrheit ist diese letztere Funktion ein Vergleich mit . O ( n ) 1 log 2 n n / 2O(logn)O(n)1log2nn/2
Stasys
@Stasys und das Berechnen der Anzahl von Einsen sortiert im Wesentlichen die Bits.
Kaveh

Antworten:

9

Kavehs Antwort liefert eine Antwort auf die Frage, wie Sie sie gestellt haben (und dies ist der übliche Beweis dafür, dass in N C 1 enthalten ist ). Aber ich dachte, dass Sie tatsächlich beabsichtigt hätten, eine etwas andere Frage zu stellen. Nämlich für eine explizite Polynomgrößen- Monotonformel für die Mehrheit.TC0NC1

Da die Mehrheit monoton ist, wissen wir, dass sie durch eine monotone Formel berechnet werden kann. Es sind zwei monotone Konstruktionsformeln mit polynomischer Größe bekannt, nämlich die beiden von Ihnen erwähnten, die probabilistische Konstruktion von Valiant und die Konstruktion über Sortiernetzwerke. Soweit mir bekannt ist, gibt es keinen einfacheren deterministischen Aufbau als den von Sortiernetzwerken.

Damit verbunden ist auch folgendes. Es stellt sich heraus, dass die Mehrheit durch Formeln berechnet werden kann, die nur aus Gattern bestehen (und keine Konstanten!). Die probabilistische Konstruktion von Valiant kann angepasst werden, um solche Formeln für die Tiefe von O ( log ( n ) ) zu erhalten . Hier ist jedoch keine deterministische Konstruktion bekannt. Insbesondere sind die Sortiernetzwerke dafür nicht geeignet (technischer Grund: Sie würden alle Schwellenfunktionen bereitstellen und nur die Majoritätsfunktion kann überhaupt von M A J 3 Gattern berechnet werden ). In dieser Frage wurden jedoch in jüngster Zeit Fortschritte erzieltMAJ3O(log(n))MAJ3Effiziente Multiparty-Protokolle über logarithmische Schwellenformeln von Cohen et al. Hier basieren solche Formeln auf standardmäßigen komplexitätstheoretischen oder kryptographischen Annahmen.

Kristoffer Arnsfelt Hansen
quelle
9

Berechnen eingeschränkt Schwellwertschalter ( ) ist das Sortieren Wesentlichen Eingangsbits.ixik

Wenn Sie die Bits sortieren können, ist es einfach, das Ergebnis mit zu vergleichen und den eingeschränkten Schwellenwert zu berechnen.k

Angenommen, wir haben Schaltkreise zur Berechnung des eingeschränkten Schwellenwerts. Wir können eine parallele Suche durchführen, um die Anzahl von Einsen in der Eingabe zu finden und die sortierte Liste auszugeben.

Diese erhalten die Schaltkreistiefe. Wenn Sie sich also eine neue -Schaltung einfallen lassen , um den eingeschränkten Schwellenwert zu berechnen, erhält man eine Sortierschaltung für die Tiefe O ( lg n ) . Wenn wir also mit einem einfachen Argument kommen für Mehrheit zeigt , ist in N C 1 Sie haben ein einfaches Tiefen- gefunden O ( lg n ) Sortierschaltung (außer dem auf AKS Sortier Netzwerk basiert eins).NC1O(lgn)NC1O(lgn)

Es ist zu beachten, dass es einfach ist, den eingeschränkten Schwellenwert mit Mehrheit zu implementieren, indem dem Mehrheitsgatter neue 1- und 0-Eingänge hinzugefügt werden.


Zuvor behauptete diese Antwort, dass dies unter Verwendung von Dividieren und Erobern und der Tatsache, dass die binäre Addition in . Dies zeigt nur, dass die Mehrheit in A C 1 und N C 2 liegt, da wir unbegrenzte Fan-In-Gates in der binären Addition haben, wenn wir dies direkt tun. Es kann jedoch mit etwas mehr Arbeit getan werden.AC0AC1NC2

Wir müssen den Trick Drei für Zwei verwenden , um in der Tiefe zu bleiben .O(lgn)

Drei-für-Zwei-Binäraddition:
Bei drei Binärzahlen können wir zwei Binärzahlen x , y so berechnen , dass a + b + c = x + y .a,b,cx,ya+b+c=x+y

Eine andere Methode ist die Verwendung der vorzeichenbehafteten Stellendarstellung von ganzen Zahlen, wobei die Addition in Tiefe und Fan-In 2 erfolgen kann Überträge verbreiten sich nicht).O(1)

Siehe Abschnitt 4 und Übung 4 in

Kaveh
quelle
O(lgn)O(lgn)