Pyramides et sommes de puissances 3


pyramid-spheresEn essayant de comprendre quelque chose aux courbes elliptiques je suis tombé sur un problème d’apparence tout simple qui m’a fait découvrir les nombre pyramidaux et l’intéressant problème du calcul des sommes de puissances d’entiers.

Le problème tout simple concerne une pyramide de boulets comme celle ci-contre. Combien de boulets contient une pyramide de n étages ? Il est égal à \(1+4+9+16+…+n^2 = \sum_{k=1}^{n}k^2\) , la somme des carrés des n premiers nombres entiers que nous allons noter \(S_n^2\).

Sur internet on trouve facilement que \(S_n^2= n(n+1)(2n+1) / 6\) mais ce n’est pas évident de retrouver cette formule sur une île déserte déconnectée.

Somme de puissances

D’autre part, en regardant \(S_n^2\) de plus près, on voit un truc marrant:

  • La somme des n premiers nombres entiers (à la puissance 1)* \(S_n^1 = \sum_{k=1}^{n} k = n(n+1) / 2\) est un facteur de \(S_n^2\).
  • et la somme des n premiers nombres entiers à la puissance zéro \(S_n^0 = \sum_{k=1}^{n} k^0 = n\) est un facteur de \(S_n^1\).

Alors est-ce que la somme des carrés \(S_n^2\) se retrouverait dans la somme des cubes \(S_n^3 = \sum_{k=1}^{n} k^3\) ?

Surprise : non. En fait \(S_n^3 = (n(n+1)/2)^2 = (S_n^1)^2\) : la somme des cubes est égale à la somme des nombres élevée au carré. On appelle parfois ceci “théorème de Nicomaque

Par contre dans \(S_n^4\) on retrouve \(S_n^2\) : \(S_n^4 = (3n^2+3n-1).S_n^2\). Etrange non ?

Celui qui a mis un peu d’ordre dans cette étrangeté s’appelle Johann Faulhaber. Au début du XVIIème siècle, ce professeur de René Descartes a établi une méthode générale et calculé à la main les formules pour les sommes des puissances d’entiers jusqu’à la puissance 17, puis il est mort. Un siècle plus tard, Jacques Bernoulli a ramené la méthode générale de Faulhaber à une seule équation connue aujourd’hui sous le nom  de Formule de Faulhaber:

\(S_n^p = \sum_{k=1}{n}k^p = {1 \over p+1} \sum_{j=0}^p {p+1 \choose j} B_j n^{p+1-j}\) où:

Je n’en suis pas encore là. Pour l’instant je me suis limité à immortaliser la formule de Faulhaber et les Nombres de Bernoulli en quelques lignes de Python qui pourraient être utile un jour, pour un problème Euler** ou l’autre

Du haut de ces pyramides…

Revenons à notre problème initial de pyramide à base carrée. Carrée ? Pourquoi se limiter à un carré ? D’ailleurs les faces de notre pyramide sont triangulaires… et même qu’elles ont 1+2+3+ … n boulets, et revoici notre \(S_n^1\) ! Pas pour rien qu’on appelle les nombres 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, … (suite A000217 de l’OEIS) “Nombres triangulaires”, ce qui est d’autant plus logique que 1, 4, 9, 16, 25, 36, … (A000290) sont les “carrés”.

Image Wikimedia Commons : Rendered by Blotwell using POV-Ray

En empilant des boulets sur une base triangulaire, on obtient les nombres tétraédriques 1, 4, 10, 20, 35, 56, 84, 120, 165, 220, …  ( A000292 ) donnés par la formule

\(P_n^3=\frac{n(n+1)(n+2)}6={n+2 \choose 3}\)

En 1850, un dénommé Sir Frederick Pollock conjectura que tout nombre entier peut être écrit comme la somme de 5 nombres tétraédriques au maximum. De fait, on ne connait aujourd’hui que 241 petits nombres qui nécessitent 5 termes (A000797), mais personne n’a jusqu’ici démontré qu’il en n’en existe pas d’autre. Ou que si. C’est pourquoi la Conjecture de Pollock est toujours une conjecture

On peut évidemment considérer des bases définies par d’autres nombres polygonaux, sur lesquels construire des nombres pyramidaux donnés par cette formule toute simple, mise ici au cas où elle se révélerait utile  à quelque chose un jour :

\(P_n^r=\frac{n(n+1)}2\frac{(r-2)n-(r-5)}3\)

Notes

  • et \(S_n^1 = n(n+1) / 2\) est facile à retrouver si on l’écrit \(S_n^1=(1+n)+(2+n-1)+(3+n-2)+…\)
  • ** auquel je n’ai pas compris grand chose non plus…

Références

  1. Charles-É. Jean “nombres figurés” Dictionnaire de mathématiques récréatives “Récréomath

  • Henri Soy

    Pour retrouver les formules sur une ile déserte, il faut juste du sable 🙂
    Je me rappelle que notre prof de 1èreS (Zama pour les intimes) nous avait montré comment faire.
    Pour calculer la somme de 1 à n d’un terme k^p par exemple, il suffisait de considérer un polynôme P (de degré p+1), dont la différence entre deux termes consécutifs donne k^p.

    Par exemple ici : P(k) – P(k-1) = k^p
    pour un polynome de degré p+1, et bien il faut calculer les p+2 coefficients.

  • Viens de découvrir sur http://programmers.stackexchange.com/questions/149465/who-created-the-ideas-of-the-first-loop-constructs que la première boucle de l’histoire a été programmée par Ada Lovelace pour calculer … les nombres de Bernoulli !

    Mais à l’époque c’est le hard qui a flanché : la machine de Babbage n’était pas assez fiable pour effectuer le calcul …

  • Mea culpa, mea maxima culpa …
    Désolé, et merci de l’avoir signalé (j’ai corrigé)