Nombre d'or ou Pi dans le temps d'exécution


21

Il existe de nombreux endroits où les nombres π et (1+5)/2apparaissent. Je suis curieux de connaître les algorithmes dont le temps d'exécution contient le nombre d'or ouπdans l'exposant.


4
Y a-t-il une raison informatique particulière de soupçonner que cela pourrait l'être? Et sans savoir où cela se produit, pensez-vous qu'il y ait un aperçu particulier à y gagner?
Niel de Beaudrap

13
Le nombre d'or apparaît dans l'analyse de la complexité de programmes dont la structure récursive est similaire à la récursivité impliquée dans les nombres de Fibonacci : Fn+2=Fn+1+Fn .
Martin Berger

11
Le Fortnow et Melkebeek temps / espace limite inférieure de SAT solvability contenait le nombre d' or ( temps et n o ( 1 ) l' espace); mais l'exposant a été amélioré plus tard par Ryan Williams. nϕϵno(1)
Marzio De Biasi

2
@MarzioDeBiasi Je pense que votre commentaire apporte une bonne réponse, même si le résultat a été amélioré. La chose intéressante est qu'il existe une analyse qui donne le nombre d'or dans l'exposant
Sasho Nikolov

1
@NieldeBeaudrap J'espère voir un modèle parmi les exemples. Par exemple, l'exposant e apparaît à de nombreux endroits dans des algorithmes randomisés. Je ne suis pas surpris par cela, car je sais que ce type d'activité à billes et à bacs conduit à des réponses qui impliquent e. Je me demandais si quelque chose comme ça pouvait être dit à propos d'algorithmes qui ont un nombre d'or dans les temps d'exécution.
Plummer

Réponses:


22

C'est la base plutôt que l'exposant, mais il y a un temps FPT lié dansO(φkn2)

" Un algorithme tractable efficace à paramètres fixes pour la minimisation des croisements unilatéraux ", Vida Dujmovic, Sue Whitesides, Algorithmica 40: 15–31, 2004.

C'est aussi une borne inférieure plutôt qu'une borne supérieure, mais:

" Une borne inférieure sur le temps pour simuler une file d'attente ou deux magasins déroulants par une banden1.618 ", Paul MB Vitányi, Inf. Proc. Lett. 21: 147-152, 1985.

Enfin, celui que j'essayais de trouver lorsque je suis tombé sur ces deux autres: l'arbre sandwich au jambon, une structure de données désormais obsolète en géométrie de calcul pour les requêtes de plage triangulaire, a le temps de requête . Ainsi, le nombre d'or est correctement dans l'exposant, mais avec un journal plutôt que comme lui-même. La structure des données est une partition hiérarchique du plan en cellules convexes, avec la structure globale d'un arbre binaire, où chaque cellule et son frère dans l'arbre sont partitionnés avec une coupe de sandwich au jambon. Le temps de requête est déterminé par la récurrence Q ( n ) = Q (O(nlog2φ)O(n0.695), qui a la solution ci-dessus. Il est décrit (avec un nom plus ennuyeux) parQ(n)=Q(n2)+Q(n4)+O(logn)

" Recherche de gamme demi-planaire dans l'espace linéaire et le temps de requête O(n0.695) ", Herbert Edelsbrunner, Emo Welzl, Inf. Proc. Lett. 23: 289-293, 1986.


1
Je ne suis pas sûr que je serais à l'aise de dire que a φ dans l'exposant. nlog2φ=φlog2nφ
Emil Jeřábek soutient Monica le

18

(d'après mon commentaire ci-dessus)

La limite inférieure temps / espace de Fortnow et Melkebeek pour la solvabilité SAT (temps et espace n o ( 1 ) ) contenait le nombre d'or dans l'exposant; mais il a été amélioré plus tard par Ryan Williams .nϕϵno(1)


5
Alors que Ryan Williams a gâché votre exemple de Fortnow et Melkebeek, il en a également fourni un autre dans le même domaine: dans cs.cmu.edu/~ryanw/automated-lbs.pdf , il montre qu'il n'y a pas de preuve de commerce alternatif de . coNTIME[n]NTIMESPACE[nϕ+o(1),no(1)]
Emil Jeřábek soutient Monica


10

Un autre exemple de dans la base est un algorithme d'Andreas Björklund et Thore Husfeldt pour calculer la parité du nombre de cycles hamiltoniens dirigés, qui s'exécute dans le temps O ( φ n ) .φO(φn)

http://arxiv.org/abs/1301.7250


9

Également dans la base: l'algorithme de suppression-contraction (Zykov, 1949) pour calculer le nombre de colorations de graphe s'exécute dans le temps . Ceci est un exemple très canonique de la façon dont le nombre d'or apparaît à partir d'une récurrence de Fibonacci pour le temps d'exécution de l'évaluation d'une formule récursive naturelle; Je suis sûr que c'est le plus ancien.O(ϕ|E|+|V|)

Mikko Koivisto a trouvé un algorithme pour calculer le nombre de correspondances parfaites (IWPEC 2009).O(ϕ|V|)


8

kO((2+ϕ)k)O(3.592k)


-2

pour développer le commentaire de Martin Bergers: l'ancien algorithme GCD euclidien s'exécute dans le pire des cas sur deux éléments successifs de la séquence de Fibonacci. plus de détails sur wikipedia qui dit aussi:

Cette preuve, publiée par Gabriel Lamé en 1844, représente le début de la théorie de la complexité computationnelle [93] et aussi la première application pratique des nombres de Fibonacci [91].

O(log(n))

[1] quelle est la complexité temporelle de l'algorithme d' Euclides, math.se


En quoi le temps et le nombre d'étapes sont-ils différents?
Nicholas Mancuso

désolé qui devrait lire # d'opérations arithmétiques
vzn

1
logφNO((logN)2)O(n2)

T(a,b)T(a,b)=O(logϕb)

1
O(logϕb)O
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.