Dans la théorie de la complexité informatique, les circuits arithmétiques constituent le modèle standard pour le calcul des polynômes. Les circuits arithmétiques sont capables de prendre en compte des variables ou des nombres et de calculer le résultat d'une expression précédemment calculée par addition ou multiplication. Ce modèle nous permet de comprendre métaphysiquement la complexité du calcul des polynômes.
La question fondamentale d'un circuit est "Comment calculer un polynôme donné de la manière la plus efficace ?"
Un circuit arithmétique est composé d'un graphe acyclique guidé. Chaque nœud du graphe de degré zéro est appelé porte d'entrée et est étiqueté comme une variable ou un élément dans le domaine. D'autres portes sont des portes d'addition ou des portes de multiplication. La formule arithmétique est un circuit dans lequel le degré extérieur de chaque porte est un, formant un arbre orienté. Il existe deux mesures importantes de complexité pour les circuits : la taille et la profondeur. La taille du circuit fait référence au nombre de portes, tandis que la profondeur fait référence à la longueur du chemin dirigé le plus long du circuit.
Les circuits arithmétiques ont une manière naturelle de calculer les polynômes. Une porte d'entrée calcule son polynôme étiqueté ; une porte d'addition calcule la somme des polynômes calculés par ses enfants et une porte de multiplication calcule le produit des polynômes calculés par ses enfants. En prenant la figure comme exemple, la porte d'entrée calcule x1, x2 et 1 en séquence, la porte d'addition calcule x1 + x2 et x2 + 1, et la porte de multiplication calcule la valeur de (x1 + x2) x2 (x2 + 1) .
Lorsque nous sommes confrontés à un polynôme f, la question est de savoir comment le calculer au mieux - par exemple, pour calculer la taille minimale d'un circuit unitaire. Cette question se compose généralement de deux parties. La première partie consiste à trouver un circuit qui calcule le polynôme, appelé complexité limite supérieure ; la deuxième partie consiste à prouver que d'autres circuits ne peuvent pas obtenir de meilleures performances, appelée complexité limite inférieure.
Bien que les deux tâches soient étroitement liées, prouver une limite inférieure est généralement plus difficile car tous les circuits doivent être discutés simultanément.
Il est important de noter ici que nous nous intéressons au calcul formel des polynômes, et non aux fonctions définies par les polynômes. Par exemple, considérons le polynôme x2 + x dans un domaine binaire. Ce polynôme représente une fonction nulle sur ce domaine, mais ce n'est pas un polynôme nul. C'est l'une des différences entre l'étude des circuits arithmétiques et l'étude des circuits de Bollinger, et une raison pour laquelle la complexité de Bollinger est plus difficile que la complexité arithmétique.
Dans l'étude du calcul de la complexité polynomiale, des circuits ou algorithmes intelligents ont été découverts. Par exemple, le célèbre algorithme de multiplication matricielle de Strassen utilise une taille de circuit d'environ n2,807, ce qui réduit considérablement la complexité par rapport au simple n3. Une autre histoire fascinante concerne le calcul du déterminant d'une matrice n × n. Bien que la méthode de calcul originale nécessitait un circuit de taille n !, nous savons que le déterminant peut être calculé avec un circuit de taille polynomiale, même si la profondeur du circuit est de taille n ! le circuit est linéaire avec n.
Entre-temps, des défis similaires existent pour calculer la taille des circuits permanents pour des matrices n × n, le circuit optimal ayant une taille d'environ 2n.
Nos connaissances actuelles en matière de preuve de limites inférieures sont très limitées. Par exemple, le calcul de polynômes de très grands degrés nécessite souvent de grands circuits ; par exemple, un polynôme de degré 2^2n nécessite une taille de circuit d'environ 2n. Le principal problème réside dans la démonstration de limites inférieures pour les polynômes de petit degré, en particulier les tailles n.
Le principal problème ouvert actuellement est de trouver un polynôme explicite tel que la taille du circuit requise pour son calcul dépasse le niveau du polynôme.
Le problème ouvert le plus intéressant de la théorie de la complexité informatique est le problème P versus NP. En gros, la question est de savoir si trouver une solution à un problème peut être aussi simple que prouver son existence. Valiant a proposé une analogie algébrique des problèmes VP et VNP, qui implique la relation entre la taille du polynôme et la taille du circuit.
Les travaux de Valiant, Skyum, Berkowitz et Rackoff constituent une référence importante pour notre compréhension des calculs polynomiaux. Ils ont montré que si un polynôme de degré r possède un circuit de taille s, alors le polynôme possède également des circuits de polynômes de taille r et s.
Ce résultat est considéré comme faux étant donné des résultats similaires avec les paramètres Bollinger. Un corollaire de ce résultat est que les simulations de circuits impliquant des polynômes sont des formules relativement petites ; dans ce cas, un polynôme de degré r pour un circuit de taille s nécessiterait une formule de taille s^ (O(log(r))).
La conception, la taille et la profondeur des circuits arithmétiques sont des éléments clés pour le calcul des polynômes. L'étude de ces éléments n'est pas seulement un défi théorique en mathématiques, mais est également étroitement liée à des applications pratiques. Dans ces calculs complexes, la question de savoir si nous pouvons trouver des méthodes plus efficaces pour résoudre des problèmes plus vastes sera l’une des orientations des recherches futures.