Können wir in der Tiefe

19

Können wir ein Bit-Schwellwertgatter durch polynomgroße (unbegrenzte Fan-In-) Schaltungen der Tiefe lg n berechnen ?n ? Können wir alternativ die Anzahl der Einsen in den Eingangsbits unter Verwendung dieser Schaltungen zählen?lgnlglgn

Ist &dgr;TC0AltTime(O(lgnlglgn),O(lgn))


Man beachte , dass . Es stellt sich also im Wesentlichen die Frage, ob wir bei der Berechnung von Schwellwertgattern einen Ig Ig n -Faktor in der Tiefe von Schaltkreisen einsparen können .TC0NC1=ALogTime=AltTime(O(lgn),O(lgn))lglgn


Bearbeiten:

Wie Kristoffer in seiner Antwort schrieb, können wir einen Faktor einsparen . Aber können wir ein bisschen mehr sparen? Können wir O ersetzen ( lg nlglgnmito(lgnO(lgnlglgn)?o(lgnlglgn)

Es scheint mir, dass der geschichtete Brute-Force-Trick nicht funktioniert, um auch nur zu speichern (im Allgemeinen jede Funktion in lg lg n + ω ( 1 ) ).2lglgnlglgn+ω(1)

Kaveh
quelle
3
Ich habe meine Antwort so geändert, dass sie auch die neueste Bearbeitung enthält.
Kristoffer Arnsfelt Hansen

Antworten:

22

CO(logn)CO(logn/loglogn)loglogn2loglogn=lognTore der letzten Ebene im Block darunter. Wir können also jedes Gate in der letzten Schicht durch eine polynomgroße DNF ersetzen, wobei die Eingänge die Gates in der letzten Schicht des darunter liegenden Blocks sind. Wenn Sie dies für alle Gates in den letzten Schichten für alle Blöcke tun und diese verbinden, sollte sich der gewünschte Schaltkreis ergeben.

logn/loglogn

Kristoffer Arnsfelt Hansen
quelle
1
Danke Kristoffer. Ich habe eine etwas stärkere Frage hinzugefügt.
Kaveh
2
lgn/lglgnNC1
2
Das ist richtig (bis zu konstanten Faktoren in der Tiefe).
Kristoffer Arnsfelt Hansen