Complexité de la fonction exponentielle


36

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.exp(x,y)=xy

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?

{x,y,ix,y,iN and the i-th bit of xy is 1}

J'ai remplacé la notion "EXP" par "L", car EXP est le nom d'une classe de complexité connue et peut prêter à confusion.
MS Dousti

Si x est limité à une puissance de 2, alors L est AC0 . Le graphique de l'exponentiation Γexp={(x,y,z):xy=z} a également une faible complexité.
Kaveh

3
Sadeq: Si vous voulez éviter les classes de complexité, L n'est en aucun cas meilleur que EXP ... Changé en X.
Peter

@Peter: Dans le contexte, L est sûrement un "langage" plutôt que la classe de complexité Log-space. Quoi qu'il en soit, X est un bien meilleur choix.
MS Dousti

@Kaveh: La question dit qu'il s'agit de la fonction exponentielle sur les nombres naturels.
Tsuyoshi Ito

Réponses:


17

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


12

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 znzω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 ytc j c y j j mod  z n c j nc1=xc2=x2 mod zcj=cj12 mod zcj=x2j mod zxyjcjyj mod zncjn

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(i=0n2ixi)y2nyx

Ainsi, les seuls problèmes réels sont causés par des bits vers le centre de .xy


1
Il existe une relation intéressante entre cette réponse et la mienne. Si je ne me trompe pas, un aperçu général de l'algorithme de [ABKM09 ] cité dans ma réponse est de combiner cette idée avec le théorème du reste chinois pour obtenir des bits plus élevés.
Tsuyoshi Ito

Ah, je n'avais pas compris cela.
Joe Fitzsimons

6

[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πi1

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

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.