Betrachten wir eine Funktion durch eine Boolesche Schaltung berechnet C mit n Eingängen der Größe s ( n ) = p o l y ( n ) über der Basis { X O R , A N D , N O T } (mit indegree 2 für die X O R , A N D Tore).
Eine Boolesche Schaltung wird geschichtet, wenn sie in Schichten ( d ist die Tiefe der Schaltung) von Gattern angeordnet werden kann, so dass jede Kante zwischen zwei Gattern benachbarte Schichten verbindet.
Was kann man angesichts der Tatsache, dass eine Boolesche Schaltung der Größe s hat , über die Größe einer Schichtschaltung sagen, die f berechnet ? Es gibt eine triviale obere Schranke: Durch Hinzufügen von Dummy-Knoten zu C an jeder von einer Kante gekreuzten Ebene erhalten wir einen geschichteten Kreis mit einer Größe von höchstens O ( s 2 ) . Aber können wir im Allgemeinen besser werden (z. B. O ( s ⋅ log s ) oder O ( s ) ) oder für interessante Schaltungsklassen?
Hintergrund. Diese Frage ergibt sich aus den letzten Ergebnissen in der Kryptographie , die zeigen , wie die sichere Rechen Boolesche Schaltungen der Größe geschichtet mit Kommunikations o ( s ) (zB s / log s oder s / log log s ) ; Ich versuche zu verstehen, wie restriktiv diese Beschränkung auf geschichtete Boolesche Schaltkreise in der Praxis sein kann, entweder für allgemeine Schaltkreise oder für "natürliche" Schaltkreise. Allerdings habe ich in der Literatur nicht viel über Schichtschaltungen gefunden. entsprechende hinweise wären auch zu begrüßen.
quelle
Antworten:
Soweit ich weiß, wurden drei Klassen von Schichtschaltungen untersucht. In all diesen Definitionen sind Bögen nur zwischen zwei benachbarten Ebenen zulässig.
Eine Schaltung heißt synchron ( Harper 1977 ), wenn alle Gatter in Schichten angeordnet sind und die Eingänge auf der Schicht 0 liegen müssen. (Eine äquivalente Definition: Für jedes Gatterg haben alle Pfade von den Eingängen zu g die gleiche Länge.)
Eine Schaltung ist lokal synchron ( Belaga 1984 ), wenn jede Eingabe genau einmal erfolgt, jedoch auf einer beliebigen Ebene.
Eine Schaltung ist geschichtet ( Gál, Jang 2010 ). Wenn Gatter und Eingänge in Schichten angeordnet sind, können Eingänge in verschiedenen Schichten mehrfach auftreten. (Eine äquivalente Definition: Für jedes Gateg und jedes Ausgangsgate o haben alle gerichteten Pfade von g nach o die gleiche Länge.)
Es ist leicht zu erkennen, dass die drei Klassen von den schwächsten bis zu den stärksten aufgeführt sind (und die Klasse der uneingeschränkten Stromkreise noch stärker ist).
In Bezug auf die Größe einer Schichtschaltung, die eine uneingeschränkte Schaltung der Größes berechnet , ist Folgendes bekannt:
Jede Schaltung der Größes kann durch eine synchrone / lokal synchrone / geschichtete Schaltung der Größe s2 berechnet werden ( Wegener 1987, Abschnitt 12.1 ).
Es sollte schwierig sein, eine explizite Funktion zu finden, die eine synchrone / lokal synchrone / geschichtete Schaltung der Größeω(slogs) erfordert . Tatsächlich kann jeder Kreis der Größe s und der Tiefe d durch einen Synchronkreis der Größe O(sd) berechnet werden ( Wegener 1987, Abschnitt 12.1 ). Selbst wenn wir also eine explizite Funktion f die synchrone Schaltungen der Größe ω(nlogn) erfordert (unabhängig von ihrer Komplexität in der Klasse der uneingeschränkten Schaltungen), dann f kann nicht durch einen Schaltkreis der Tiefe O(logn) und Größe berechnet werden )O(n) , which answers a long-standing open question in circuit complexity (Valiant 1977).
There exist explicit functions
3.1. withΩ(nlogn) lower bound for synchronous circuits but O(n) upper bound for locally synchronous circuits (Turán 1989).
As an example, consider the functionf:{0,1}n→{0,1}n where the i th output bit is an XOR of all inputs except for the i th one. This function can easily be computed by a layered circuit of size O(n) : First compute an XOR of all inputs in logn layers of total size n , then compute all outputs in one layer of size n . On the other hand, f requires synchronous circuits of size Ω(nlogn) . Indeed, in order to compute a parity of length n−1 , the circuit depth must be at least Ω(logn) . On the other hand, each layer must transmit n bits of information, thus its size must be at least n .
quelle