In der rechnerischen Komplexitätstheorie sind Rechenschaltungen das Standardmodell zur Berechnung von Polynomen. Arithmetische Schaltkreise können Eingaben von Variablen oder Zahlen entgegennehmen und das Ergebnis eines zuvor berechneten Ausdrucks durch Addition oder Multiplikation berechnen. Dieses Modell ermöglicht es uns, die Komplexität der Berechnung von Polynomen metaphysisch zu verstehen.
Die grundlegende Frage einer Schaltung lautet: „Wie berechnet man ein gegebenes Polynom am effizientesten?“
Eine Rechenschaltung besteht aus einem geführten azyklischen Graphen. Jeder Knoten im Graphen mit dem Grad Null wird als Eingabegatter bezeichnet und als Variable oder Element in der Domäne bezeichnet. Andere Tore sind Additionstore oder Multiplikationstore. Die arithmetische Formel ist eine Schaltung, in der der Ausgangsgrad jedes Gatters eins ist und so einen gerichteten Baum bildet. Es gibt zwei wichtige Maßstäbe für die Komplexität von Schaltkreisen: Größe und Tiefe. Die Größe des Schaltkreises bezieht sich auf die Anzahl der Tore, während sich die Tiefe auf die Länge des längsten gerichteten Pfades im Schaltkreis bezieht.
Rechenschaltungen verfügen über eine natürliche Methode zur Berechnung von Polynomen. Ein Eingabegatter berechnet sein beschriftetes Polynom; ein Additionsgatter berechnet die Summe der von seinen Kindern berechneten Polynome, und ein Multiplikationsgatter berechnet das Produkt der von seinen Kindern berechneten Polynome. Am Beispiel der Abbildung berechnet das Eingabegatter nacheinander x1, x2 und 1, das Additionsgatter berechnet x1 + x2 und x2 + 1 und das Multiplikationsgatter berechnet den Wert von (x1 + x2) x2 (x2 + 1). .
Wenn wir mit einem Polynom f konfrontiert werden, stellt sich die Frage, wie man es am besten berechnet – zum Beispiel, um die Mindestgröße einer Einheitsschaltung zu berechnen. Diese Frage besteht normalerweise aus zwei Teilen. Der erste Teil besteht darin, eine Schaltung zu finden, die das Polynom berechnet, was als obere Komplexitätsgrenze bezeichnet wird. Der zweite Teil besteht darin, zu beweisen, dass andere Schaltungen keine bessere Leistung erzielen können, was als untere Komplexitätsgrenze bezeichnet wird.
Obwohl die beiden Aufgaben eng miteinander verbunden sind, ist der Nachweis einer Untergrenze im Allgemeinen schwieriger, da alle Schaltkreise gleichzeitig besprochen werden müssen.
Hier ist es wichtig zu beachten, dass es sich um die formale Berechnung von Polynomen handelt, nicht um die durch Polynome definierten Funktionen. Betrachten Sie beispielsweise das Polynom x2 + x in einem binären Bereich. Dieses Polynom stellt eine Nullfunktion über diesem Bereich dar, ist jedoch kein Nullpolynom. Dies ist einer der Unterschiede zwischen dem Studium arithmetischer Schaltkreise und dem Studium von Bollinger-Schaltkreisen und ein Grund, warum Bollinger-Komplexität schwieriger ist als arithmetische Komplexität.
Bei der Untersuchung der Berechnung der Polynomkomplexität wurden einige clevere Schaltkreise oder Algorithmen entdeckt. Beispielsweise verwendet der berühmte Strassen-Matrix-Multiplikationsalgorithmus eine Schaltungsgröße von etwa n2,807, was die Komplexität im Vergleich zum einfachen n3 erheblich reduziert. Eine weitere faszinierende Geschichte handelt von der Berechnung der Determinante einer n × n-Matrix. Obwohl die ursprüngliche Berechnungsmethode einen Kreis der Größe n! erforderte, wissen wir, dass die Determinante mit einem Kreis der Polynomgröße berechnet werden kann, obwohl die Tiefe des Kreis ist linear mit n.
Mittlerweile bestehen ähnliche Herausforderungen bei der Berechnung der Größe permanenter Schaltkreise für n × n-Matrizen, wobei der optimale Schaltkreis eine Größe von etwa 2n hat.
Unser derzeitiges Wissen über den Nachweis von Untergrenzen ist sehr begrenzt. Beispielsweise erfordert die Berechnung von Polynomen sehr großen Grades oft große Schaltkreise; ein Polynom vom Grad 2^2n erfordert beispielsweise eine Schaltkreisgröße von etwa 2n. Das Hauptproblem besteht darin, untere Schranken für Polynome kleinen Grades, insbesondere Polynomgrößen n, zu beweisen.
Das größte offene Problem besteht derzeit darin, ein explizites Polynom zu finden, bei dem die für seine Berechnung erforderliche Schaltungsgröße das Polynomniveau übersteigt.
Das interessanteste offene Problem in der rechnerischen Komplexitätstheorie ist das P-gegen-NP-Problem. Grob gesagt stellt sich die Frage, ob die Lösung eines Problems so einfach zu finden sein kann wie der Nachweis seiner Existenz. Valiant schlug eine algebraische Analogie der VP- und VNP-Probleme vor, die die Beziehung zwischen der Größe des Polynoms und der Größe der Schaltung beinhaltet.
Ein wichtiger Maßstab für unser Verständnis von Polynomberechnungen ist die Arbeit von Valiant, Skyum, Berkowitz und Rackoff. Sie zeigten, dass, wenn ein Polynom vom Grad r einen Kreis der Größe s hat, das Polynom auch Kreise der Größen Polynome r und s hat.
Dieses Ergebnis wird aufgrund ähnlicher Ergebnisse unter den Bollinger-Einstellungen als falsch angesehen. Eine Folge dieses Ergebnisses ist, dass Simulationen von Schaltkreisen mit Polynomen relativ kleine Formeln sind; in diesem Fall würde ein Polynom vom Grad r für einen Schaltkreis der Größe s eine Formel der Größe s^ (O(log(r))) erfordern.
Aufbau, Größe und Tiefe von Rechenschaltungen sind Schlüsselelemente für die Berechnung von Polynomen. Das Studium dieser Elemente ist nicht nur eine theoretische Herausforderung in der Mathematik, sondern ist auch eng mit praktischen Anwendungen verbunden. Ob wir bei diesen komplexen Berechnungen effizientere Methoden zur Lösung größerer Probleme finden können, wird eine der Richtungen zukünftiger Forschung sein.