Nous savons que la fonction exponentielle sur les nombres naturels n'est pas calculable en temps polynomial, car la taille de la sortie n'est pas polynomiale dans la taille des entrées.
Est-ce la raison principale de la difficulté de calculer la fonction exponentielle ou est-ce que l'exponentiation est en soi difficile à calculer indépendamment de cette considération?
Quelle est la complexité du graphe en bits de la fonction exponentielle?
Réponses:
Voici quelques limites supérieures.
En répétant la quadrature, le problème est dans PSPACE.
La limite supérieure est légèrement meilleure. Le problème est un cas particulier du problème BitSLP: Soit un programme en ligne droite commençant par 0 et 1 avec addition, soustraction et multiplication représentant un entier N , et étant donné i ∈ℕ, décide si le i- ème bit (à compter de la le bit le moins significatif) de la représentation binaire de N est égal à 1. Le problème de BitSLP se trouve dans la hiérarchie de comptage ( CH ) [ABKM09]. (Il est indiqué dans [ABKM09] qu'il peut être démontré que le problème de BitSLP est dans PH PP PP PP PP .)
L'adhésion à CH est souvent considérée comme une preuve qu'il est peu probable que le problème pose problème à PSPACE, car l'égalité CH = PSPACE implique que la hiérarchie de comptage s'effondre. Cependant, je ne sais pas à quel point cette preuve est réputée être solide.
En ce qui concerne la dureté, BitSLP est # P-dur dans le même papier [ABKM09]. Cependant, la preuve ne semble impliquer aucune dureté du langage X dans la question.
Les références
[ABKM09] Eric Allender, Peter Bürgisser, Johan Kjeldgaard-Pedersen et Peter Bro Miltersen. Sur la complexité de l'analyse numérique. SIAM Journal on Computing , 38 (5): 1987-2006, janvier 2009. http://dx.doi.org/10.1137/070697926
la source
Pas une réponse complète, mais au moins partielle.
Je remarque que les deux réponses apparues jusqu’à présent n’ont pas mentionné le fait qu’il existe un algorithme pour calculer l’exponentielle modulaire où est le nombre de bits dans et où est l'exposant correspondant à l'algorithme de multiplication le plus rapide. Ainsi, les bits les moins significatifs de l'exponentielle peuvent être calculés efficacement (en ou moins).x y mod z n z ω O ( n 3 )O ( n1 + ω) Xy mod z n z ω O ( n3)
La façon de procéder est assez simple: vous pouvez calculer , , . Clairement , et donc , mais comme il n'y a que termes cela prend seulement multiplications.c 2 = x 2 mod z c j = c 2 j - 1 mod z c j = x 2 j mod z x y ≡ tc j c y j j mod z n c j nc1= x c2= x2 mod z cj= c2j - 1 mod z cj= x2j mod z Xy≡ tcjcyjj mod z n cj n
De plus, nous pouvons écrire comme , de sorte que les bits les plus significatifs qui correspondent à environ peuvent également être calculés efficacement dépend du bit le plus significatif de . ( Σ n i = 0 2 i x i ) y 2 n y xxy (∑ni=02ixi)y 2ny x
Ainsi, les seuls problèmes réels sont causés par des bits vers le centre de .xy
la source
[Cette réponse explique certains aspects intéressants de la réponse de Per Vognsen . Ce n'est pas une réponse directe à la question du PO, mais cela peut aider à résoudre de telles questions.]
Tout d’abord, jetez un coup d’œil au lien suivant: formule Bailey-Borwein-Plouffe (ou simplement formule BBP). Il est un moyen de calcul de la ème bit du nombre irrationnel , sans d' abord calculer les premiers des bits. L'article souligne qu'il existe également des formules de type BPP pour d'autres nombres irrationnels.π i - 1i π i−1
Ensuite, regardez le point de vue de Dick Lipton sur le sujet: Cook's Class contient Pi . L'article décrit essentiellement que la décision du ème bit est dans la classe de Steve Cook ( , la classe des langues acceptées dans le temps et en espace polynomial poly-logarithmique), et que ce fait est extraordinairement étrange, comme il l' appelle cela contre "la sagesse conventionnelle".π S Ci π SC
PS: À la fin de son article, Dick admet que l’algorithme est peut-être en dehors de , mais une telle possibilité dépasse le cadre de son "utilisation pratique".SC
la source