Les correcteurs de l'école du Kerala
Deux siècles avant Snell, Madhava corrigeait déjà ses séries : trois termes correcteurs qui valent des milliers de milliards de termes.
Dans la partie IV du DM2, vous avez mesuré que ne se tient pas au milieu de l’intervalle , mais au tiers, et la moyenne pondérée de Snell (1621) a transformé cette observation en accélérateur : le même -gone, mieux exploité, livre une précision qu’Archimède aurait dû payer de plusieurs doublements supplémentaires. Ce que le DM vous a promis, le voici : deux siècles avant Snell, à l’autre bout du monde, une école de mathématiciens indiens pratiquait déjà ce geste, sur une autre route vers .
Une série trois siècles avant Leibniz
Sur la côte de Malabar, dans l’actuel État du Kerala, Madhava de Sangamagrama (né vers 1340, mort vers 1425) fonde une lignée de mathématiciens et d’astronomes qui se transmettront ses résultats pendant plus de deux siècles. Le plus célèbre de ces résultats est la série
que l’Europe redécouvrira vers 1670 avec James Gregory puis Leibniz, et qu’on appelle aujourd’hui série de Madhava-Leibniz. Une somme infinie de fractions dont les dénominateurs sont les entiers impairs, et qui vise : l’objet est spectaculaire, et il appartient de plein droit à votre chapitre, puisque c’est une limite de suite, celle des sommes partielles.
Ces sommes partielles ont d’ailleurs une propriété que vous reconnaîtrez immédiatement. Comme les signes alternent et que les termes décroissent, les sommes s’arrêtant sur un majorent la limite, celles s’arrêtant sur un la minorent : deux suites qui prennent en tenaille, l’une en descendant, l’autre en montant. Ce sont les polygones inscrits et circonscrits du DM2, version arithmétique.
Le désespoir de la convergence
La tenaille se referme, mais à une lenteur désespérante. En s’arrêtant après termes, l’erreur commise sur est de l’ordre de : pour gagner une décimale, il faut dix fois plus de termes. Dix décimales exigeraient une dizaine de milliards de termes. Là où le polygone d’Archimède divise son erreur par à chaque doublement, la série brute rampe.
C’est ici que l’école du Kerala produit son idée la plus profonde. Plutôt que d’ajouter toujours plus de termes, elle étudie la structure de l’erreur : ce qui manque à la somme partielle n’est pas un brouillard, c’est une quantité presque prévisible, qu’un terme correcteur bien choisi peut presque annuler. Les textes de l’école transmettent, attribués à Madhava, trois correcteurs successifs. En notant la somme des premiers termes (le dernier dénominateur est ), l’approximation corrigée s’écrit
avec, du correcteur le plus simple au plus fin :
Ces trois formules cachent un emboîtement remarquable, que vous pouvez vérifier en réduisant au même dénominateur :
Chaque correcteur raffine le précédent en ajoutant un étage à la fraction : tout se passe comme si l’école du Kerala avait entrepris, étage par étage, un développement en fraction continue de l’erreur.
La démonstration par la machine
Rien ne remplace une mesure. Le script suivant calcule, en cinquante chiffres de précision, l’écart à de la série brute puis des trois versions corrigées, pour , et termes. La valeur de référence de est extérieure au calcul : elle mesure l’erreur, elle ne démontre rien, exactement comme dans l’annexe du DM.
from decimal import Decimal, getcontext
getcontext().prec = 50
# Valeur de reference, exterieure au calcul : elle mesure l'erreur,
# elle ne demontre rien (regle de l'annexe du DM).
PI = Decimal("3.1415926535897932384626433832795028841971693993751")
def serie(n):
"""Somme partielle de la serie de Madhava-Leibniz : n termes."""
s = Decimal(0)
for k in range(1, n + 1):
t = Decimal(1) / (2*k - 1)
s += t if k % 2 == 1 else -t
return s
def correcteurs(n):
n = Decimal(n)
F1 = 1 / (4*n)
F2 = n / (4*n*n + 1)
F3 = (n*n + 1) / (4*n**3 + 5*n)
return F1, F2, F3
for n in (10, 50, 100):
S = serie(n)
signe = 1 if n % 2 == 0 else -1 # (-1)^n
erreurs = [abs(4*S - PI)]
for F in correcteurs(n):
erreurs.append(abs(4*(S + signe*F) - PI))
print(n, " ".join("{:.1e}".format(float(e)) for e in erreurs))
# le cas n = 50, avant et apres le troisieme correcteur, en clair
S = serie(50)
F3 = correcteurs(50)[2]
print("4 S_50 =", str(4*S)[:17])
print("4 (S_50 + F3) =", str(4*(S + F3))[:17])
print("pi =", str(PI)[:17])
Sortie :
10 1.0e-01 2.5e-04 2.4e-06 5.2e-08
50 2.0e-02 2.0e-06 8.0e-10 7.2e-13
100 1.0e-02 2.5e-07 2.5e-11 5.6e-15
4 S_50 = 3.121594652591010
4 (S_50 + F3) = 3.141592653590510
pi = 3.141592653589793
En tableau, écarts à :
| série seule | avec | avec | avec | |
|---|---|---|---|---|
Lisez la ligne : la série brute donne , une seule décimale correcte, un résultat indigne d’Archimède. Le troisième correcteur, une simple fraction ajoutée, fait tomber l’écart à . Et avec termes, l’erreur atteint la précision d’un flottant de votre machine : la série brute exigerait environ termes, cent quatre-vingts mille milliards, pour en faire autant. Le correcteur ne fait pas gagner du temps, il change de monde.
La valeur de Madhava
Les textes de l’école créditent Madhava d’une valeur explicite : pour un diamètre de , une circonférence de , soit
L’écart à vaut : c’est correctement arrondi à onze décimales, vers 1400, sans polygone. On ignore le détail de son calcul, mais l’ordre de grandeur parle : une cinquantaine de termes munis du troisième correcteur suffisent à cette précision, quand la série nue en réclamerait quatre cents milliards. Il faudra attendre la toute fin du XVIe siècle pour que l’Europe fasse mieux, au prix que raconte la pierre de Leyde.
Deviné, transmis, démontré
Comment ces résultats nous sont-ils parvenus ? Par une chaîne de traités : le Tantrasangraha de Nilakantha (1501) et ses commentaires, la Kriyakramakari de Shankara Variyar (vers 1556), et surtout le Yuktibhasa de Jyeshthadeva (vers 1530), un traité rédigé en malayalam, la langue du Kerala, qui ne se contente pas d’énoncer les séries de Madhava : il en présente les dérivations, étape par étape. Tous attribuent les correcteurs à Madhava, mort un siècle plus tôt.
Un mot, enfin, sur le statut de ces formules, car il rejoint la question Q28 de votre DM. Les justifications données par les textes du Kerala sont ingénieuses mais, au sens moderne, incomplètes : elles rendent les correcteurs plausibles, elles ne les démontrent pas. La démonstration rigoureuse, via le développement asymptotique du reste de la série, n’est venue que bien plus tard ; elle fait intervenir des objets que vous croiserez dans le supérieur. Autrement dit, Madhava est exactement dans la situation de Snell : une accélération devinée sur la structure de l’erreur, utilisée avec un succès éclatant, et démontrée par d’autres, longtemps après. Vous savez désormais, depuis Q28, ce qui sépare ces deux moments, et pourquoi le second compte autant que le premier.
Sources
- Wikipédia, article Madhava’s correction term, qui s’appuie sur l’étude de T. Hayashi, T. Kusuba et M. Yano, The correction of the Madhava series for the circumference of a circle, Centaurus, vol. 33, 1990 : les trois formules et leurs sources sanskrites.
- On Madhava and his correction terms for the Madhava-Leibniz series for pi, arXiv:2405.11134, 2024 : les versets originaux, leurs traductions et l’examen critique des justifications.
- On Sankara Varman’s and Madhava’s values for the circumferences of circles, arXiv:2405.11144, 2024 : la fraction de la Kriyakramakari et sa précision.
- Wikipédia, article Madhava of Sangamagrama, pour les repères biographiques.
- DM2 du chapitre A1, questions Q26 à Q28 : l’accélération de Snell que cette page met en perspective.