Monoton arithmetische Schaltungskomplexität von elementaren symmetrischen Polynomen?

14

Die k - te elementare symmetrische Polynom Skn(x1,,xn) ist die Summe aller Produkte von unterschiedlichen Variablen. Ich interessiere mich für die monotone arithmetische Schaltungskomplexität dieses Polynoms. Ein einfacher dynamischer Programmieralgorithmus (wie auch in Abb. 1 unten) ergibt eine Schaltung mit Gattern. k(+,×)(+,×)O(kn)(nk)k(+,×)(+,×)O(kn)

Frage: Ist eine Untergrenze von bekannt? Ω(kn)

Eine -Schaltung ist schief, wenn mindestens einer der beiden Eingänge jedes Produkttors eine Variable ist. Eine solche Schaltung ist eigentlich die gleiche wie ein Schalt- und Gleichrichtungsnetzwerk (ein gerichteter azyklischer Graph mit einigen durch Variablen gekennzeichneten Kanten; jeder st-Pfad gibt das Produkt seiner Bezeichnungen an, und die Ausgabe ist die Summe über alle st-Pfade). Markov erwies sich bereits vor 40 Jahren als überraschend knapp: Eine minimale monotone Arithmetik-Skew-Schaltung für hat genau Produkt-Gates. Die obere Schranke ergibt sich aus Abb. 1: (+,×)Skn k(nk+1)Bildbeschreibung hier eingeben

Aber ich habe keinen Versuch gesehen, eine solche Untergrenze für nicht schiefe Schaltungen zu beweisen. Ist das nur unsere "Arroganz", oder gibt es auf dem Weg einige inhärente Schwierigkeiten?

PS Ich weiß, dass Tore notwendig sind, um alle gleichzeitig zu berechnen . Dies folgt aus der unteren Grenze der Größe von monotonen Booleschen Schaltkreisen, die den 0-1-Eingang sortieren; siehe Seite 158 des Buches von Ingo Wegener . Das AKS-Sortiernetzwerk impliziert auch, dass in diesem (booleschen) Fall Gatter ausreichen. Tatsächlich haben Baur und Strassen eine enge Grenze für die Größe einer nicht monotonen Rechenschaltung für bewiesen . Aber was ist mit monotonen Rechenschaltungen?S n 1 , ... , S n nΩ(nlogn)S1n,,SnnO(nlogn)Θ(nlogn)Sn/2n

Stasys
quelle

Antworten:

6

Eine Herausforderung besteht darin, dass wir wissen , wie man solche Dinge effizient berechnet , wenn Sie die "monotone" Einschränkung entfernen . Sie können den Wert aller (alle n + 1 elementaren symmetrischen Polynome auswerten ) in O-Zeit ( n log 2 n ) mithilfe der FFT-basierten Polynommultiplikation berechnen. Der Nachweis einer unteren Grenze von Ω ( n k ) im monotonen Schaltungsmodell würde den Nachweis von Ω ( n 2 ) erfordern.S0n,,Snnn+1O(nlog2n)Ω(nk)Ω(n2) untere Grenze der Polynommultiplikation.

Hier ist wie. Führen Sie ein formal unbekanntes und betrachten Sie das Polynomy

P(y)=i=1n(1+xiy).

Man beachte, dass dies ein univariates Polynom mit unbekanntem y und mit Grad n ist , da die bekannte Konstanten sind . Nun können Sie feststellen, dass der Koeffizient von y k in P ( y ) genau S n k ist. Um also alle S n 0 , ... , S n n auszuwerten , reicht es aus, P ( y ) zu berechnen .xiynykP(y)SknS0n,,SnnP(y)

Dies ermöglicht es, in O ( n lg 2 n ) Zeit zu berechnen : Bilden Sie einen ausgeglichenen binären Baum von Polynomen mit den ( 1 + x i y ) an den Blättern und multiplizieren Sie die Polynome. Die Multiplikation von zwei Polynomen des Grades d benötigt mit FFT-Techniken die Zeit O ( d lg d ) , sodass wir die Wiederholung T ( n ) = 2 T ( n / 2 ) + erhaltenP(y)O(nlg2n)(1+xiy)dO(dlgd)-Faktoren. , was sich zu T ( n ) = O ( n lg 2 n ) löst. Der Einfachheit halber ignoriere ich poly ( lg lg n )T(n)=2T(n/2)+O(nlgn)T(n)=O(nlg2n)poly(lglgn)

Wenn Sie sich für den Fall interessieren, dass sehr klein ist, können Sie S n 0 , , S n k in O ( n lg 2 k ) mit ähnlichen Tricks berechnen , wobei Sie berücksichtigen, dass Sie sich nur für P ( x ) mod interessieren y k + 1 (dh alle Terme von y k + 1 oder höheren Potenzen von y wegwerfen ).kS0n,,SknO(nlg2k)P(x)modyk+1yk+1y

Natürlich verwendet die FFT die Subtraktion, so dass sie naiv nicht in einer monotonen Schaltung ausgedrückt werden kann. Ich weiß nicht, ob es eine andere Möglichkeit gibt, Polynome effizient mit monotonen Arithmetikschaltungen zu multiplizieren, aber jede effiziente monotone Methode zur Polynommultiplikation führt sofort zu einem Algorithmus für Ihr Problem. Untere Schranken für Ihr Problem erfordern / implizieren also untere Schranken für die Polynommultiplikation.

DW
quelle
2
DW, danke, dass du dich an diese Konstruktion erinnert hast! Es wird normalerweise Ben-Or zugeschrieben, und ich hätte es erwähnen sollen. Die Konstruktion ergibt auch eine <i> Formel </ i> mit der Größe und der Tiefe nur 3 (!), Die den Operator S n 0 , ... , S n n berechnet (durch Auswertung von P ( y ) bei einigen n +) 1O(n2)3S0n,,SnnP(y)n+1Punkte). Dies wurde verwendet, um homogene und inhomogene Formeln mit geringer Tiefe zu trennen. Wie Sie bereits erwähnt haben, wird bei der Konstruktion im Wesentlichen Subtraktion verwendet. Meine Frage lautet also: Wie "substanziell" ist diese Verwendung tatsächlich? Dies könnte auch in Szenarien mit eingeschränkter Tiefe interessant sein.
Stasys
3
@Stasys: Ich denke, Subtraktion ist ziemlich wichtig. Nämlich. die Nisan-Wigderson-Untergrenze für homogene Kreisläufe der Tiefe 3 ; In homogenen Tiefen-3-Kreisen ist es sinnlos, Terme zu berechnen, deren Grad vom Grad der Ausgabe abweicht. Dies begrenzt also die Arten von Stornierungen, die auftreten können. Während in der Ben-Or-Konstruktion zum Berechnen von ein Polynom des Grades n berechnet werden muss (obwohl die Ausgabe den Grad k < n hat ), und dann wird die Löschung entscheidend verwendet, um die Terme der Grade > k zu entfernen . Dies ist kein Beweis, nur eine Intuition ...Sknnk<n>k
Joshua Grochow
@Joshua: Ja, wir wissen, dass die Koeffizienten der Variablen im Polynom P ( y , x ) genau die Polynome S n k ( x ) sind . Aber wir brauchen Gauß (und so - Subtraktionen), um diese Koeffizienten aus n + 1 Werten von P ( y ) an n + 1 verschiedenen Punkten zu extrahieren . Meine Frage lautet, ob das "monotone Wort" in diesem Fall tatsächlich kein Gauß hat . (Mit einer erratenen Antwort - NEIN.) Ich bin mir nicht sicher, ob es dazu ausreicht, die Gradangaben > loszuwerdenyP(y,x)Skn(x)n+1P(y)n+1>kk