--> Sur la méthode de Héron 1Illustration de la méthode La méthode peut sembler magique. Pour obtenir une valeur approchée de la racine carrée d'un nombre positif aa, il suffit de considérer le premier carré parfait bb supérieur à aa.
Le nombre rationnel 12(b+ab)\dfrac{1}{2}\left( b+\dfrac{a}{b} \right) est alors une meilleure approximation de a\sqrt{a} que b\sqrt{b} (qui est un entier).
Si on veut une meilleure approximation on effectue les mêmes opérations en remplaçant bb par le résultat obtenu à l'étape précédente.
Suivons la traduction du texte de Héron donnée par Jean-Luc Chabert dans Histoires d'algorithmes :
Puisque 720720 n’a pas de côté rationnel, nous extrairons le côté avec une très petite différence de la façon suivante. Comme le premier nombre carré plus grand que 720720 est 729729 qui a pour côté 2727, divise 720720 par 2727 ; cela fait 2626 et 23\frac{2}{3} ; ajoute 2727, cela fait 5353 23\frac{2}{3} ; prends-en la moitié, cela fait 2626 12\frac{1}{2} 13\frac{1}{3} multiplié par lui-même donne 720720 136\frac{1}{36} , de sorte que la différence (sur les carrés) est 136\frac{1}{36}. Si nous voulons rendre cette différence inférieure encore à 136\frac{1}{36} , nous mettrons 720720 136\frac{1}{36} trouvé tout à l’heure à la place de 729729 et en procédant de la même façon...
Quelques explications
« Puisque 720720 n’a pas de côté rationnel » veut dire que lorsqu'on image un carré dont l'aire vaut 720720 alors son côté, qui mesure 720\sqrt{720}, est un nombre irrationnel.
« nous extrairons le côté avec une très petite différence de la façon suivante » : nous allons trouver une valeur approchée de 720\sqrt{720} de la façon suivante.
On a 272=72927^2=729 donc on considère un carré de côté de 27 qui a pour aire 729729.

On effectue comme premier calcul : 72027=26+23\dfrac{720}{27}=26+\dfrac{2}{3}.

On ajoute 2727 à ce résultat : 26+23+2726+\dfrac{2}{3}+27 == 53+2353+\dfrac{2}{3}.

Et on divise par deux cette dernière valeur : 12(53+23)\dfrac{1}{2}\left(53+\dfrac{2}{3} \right) == 26+12+1326+\dfrac{1}{2}+\dfrac{1}{3}.

« de sorte que la différence (sur les carrés) est 136\frac{1}{36} » :
(26+12+13)2720\left(26+\dfrac{1}{2}+\dfrac{1}{3}\right)^2-720 == (26+56)2720\left(26+\dfrac{5}{6}\right)^2-720
== 262+2×26×56+(56)272026^2+2\times26\times\dfrac{5}{6}+\left(\dfrac{5}{6}\right)^2-720
== 676+1303+2536720676+\dfrac{130}{3}+\dfrac{25}{36}-720
== 136\dfrac{1}{36}.
Héron nous dit donc que le carré dont le côté rationnel mesure 26+12+1326+\dfrac{1}{2}+\dfrac{1}{3} a une aire proche, à 136\dfrac{1}{36} près, du carré de côté irationnel 720\sqrt{720}.
Si on veut avoir une meilleure précision on réitère cette méthode non pas en utilisant 27=72927=\sqrt{729} mais 26+12+1326+\dfrac{1}{2}+\dfrac{1}{3}. Le mathématicien affirme alors que la précision va augmenter à chaque étape. 2Explications géométriques de la méthode de Héron La méthode présentée précédemment peut paraître magique. On divise par 2727, on ajoute 2727 et on divise par 22. Cependant, à l'époque de Héron (Ier siècle après J.-C) et encore pour des siècles, toute opération arithmétique doit se justifier par des constructions géométriques.
Jean Dieudonné propose dans son ouvrage Pour l'honneur de l'esprit humain une construction justifiant les calculs de Héron dont s'inspire les explications qui suivent.
AA
BB
CC
DD
EE
FF
On considère un carré ABCDABCD dont l'aire vaut aa et donc le côté mesure a\sqrt{a}.
On prolonge les côtés [BC][BC] et [AD][AD] pour obtenir un rectangle ABEFABEF dont l'aire est supérieur à aa mais dont le côté [AF][AF] a pour mesure un rationnel rr.
AA
BB
CC
DD
EE
FF
J
J'
On construit la médiatrice du segment [AE][AE]. Elle coupe la droite [AF][AF] en JJ. Le point JJ' est tel que AJJBAJJ'B soit un rectangle.
Nous allons alors démontrer que la longueur du côté [AJ][AJ] du rectangle ABJJABJ'J s'obtient par les calculs énoncés par Héron.

Première étape : le point JJ appartient à [DF][DF].
En effet, rien dans la construction ne nous assure que J[DF]J\in[DF].
Nous allons utiliser ici la définition de la médiatrice de [AE][AE] comme ensemble des points équidistants à AA et EE qui découpe le plan en deux parties : une dont les points sont plus proches de AA et l'autre dont les points sont plus proches de EE.
On a FA=FD+DAFA=FD+DA et DA=FEDA=FE donc FA=FD+FEFA=FD+FE ce qui donne FA>FEFA > FE.
Ainsi, le point FF est plus proche de EE que de AA.
Par ailleurs, le triangle DEFDEF étant rectangle en FF on a DE>FEDE > FE. Or FE=DAFE=DA, donc DE>DADE > DA.
Le point DD est plus proche de AA que de EE.
Par construction les points DD, JJ et FF sont alignés mais d'après ce qui précéde DD et FF ne sont pas du même côté de la médiatrice de [AE][AE]. Ainsi, le point JJ qui appartient à cette médiatrice est bien sur le segment [DF][DF].

Deuxième étape : détermination de AJAJ
AA
BB
CC
DD
EE
FF
J
K
On trace la parallèle à la médiatrice de [AE][AE] passant par EE. Elle coupe la droite (AD)(AD) en KK.
Puisque la médiatrice de [AE][AE] coupe ce côté en son milieu, d'après le théorème de Thalès appliqué dans le triangle AEKAEK, JJ est le milieu de [AK][AK] et donc AJ=12AKAJ=\dfrac{1}{2}AK.
De plus, AK=AF+FKAK=AF+FK == r+FKr+FK, rr étant la mesure de [AF][AF].
Dans le triangle rectangle AEKAEK, [EF][EF] est la hauteur issue de EE, donc EF2=FA×FKEF^2=FA\times FK (la propriété utilisée ici est démontrée en annexe de ce texte).
Or, FE2=aFE^2=a et donc FA×FK=aFA\times FK=a et FK=aFAFK=\dfrac{a}{FA} == ar\dfrac{a}{r}.
De plus, on a montré que AK=r+FKAK=r+FK, donc AK=r+arAK=r+\dfrac{a}{r}.
Et puisque AJ=12AKAJ=\dfrac{1}{2}AK, on a finalement AJ=12(r+ar)AJ=\dfrac{1}{2}\left( r+\dfrac{a}{r}\right).

Cette construction nous permet donc bien d'obtenir la formule de Héron.

Par ailleurs, on a JE<JF+FEJE < JF+FE et JA=JEJA=JE (JJ étant sur la médiatrice de [AE][AE]) donc :
JA<JF+FEJA < JF+FE, c'est-à-dire JD+DA<JF+FEJD+DA < JF+FE.
Et comme FE=DAFE=DA on obtient : JD<JFJD < JF.
Cela veut dire que JJ est plus proche de DD que de FF, donc que JJ est avant le milieu de [DF][DF].
Ainsi, le surplus d'aire CDFECDFE (par rapport à l'aire de ABCDABCD) est réduit de plus que moitié à la deuxième étape avec le rectangle AJJBAJJ'B.
En réitirant le processus on obtient ainsi un surplus d'aire qui converge vers 00, et donc une construction géométrique dont un des côtés converge bien vers a\sqrt{a}. 3Explications analytiques Soit a>1a>1 et soit ff la fonction définie sur ]0;+[]0\,;+\infty[ par f(x)=12(x+ax)f(x)=\dfrac{1}{2}\left(x+\dfrac{a}{x} \right).
On définit la suite (un)(u_n) par u0>0u_0 > 0 et pour tout entier nNn\in\mathbb{N} : un+1=12(un+aun).u_{n+1}=\dfrac{1}{2}\left( u_n+\dfrac{a}{u_n} \right). L'objectif est de montrer que la suite (un)(u_n) converge vers a\sqrt{a} et d'avoir une idée de la vitesse de convergence.

Étude de la fonction ff
La fonction ff est dérivable sur ]0;+[]0\,;+\infty[ et pour tout xx de cet intervalle on a :

f(x)=12(1ax2)f'(x)=\dfrac{1}{2}\left( 1-\dfrac{a}{x^2} \right) == x2a2x2\dfrac{x^2-a}{2x^2} == (xa)(x+a)2x2\dfrac{(x-\sqrt{a})(x+\sqrt{a})}{2x^2}.

Pour tout x>0x>0, on a x+a>0x+\sqrt{a} > 0 et 2x2>02x^2>0, ainsi f(x)f'(x) est du signe de xax-\sqrt{a} et on obtient le tableau de variations suivant.
xx 00 a\sqrt{a} ++\infty f(x)f'(x) interdit - 0 ++ interdit ++\infty ++\infty f(x)f(x) interdit décroissante croissante interdit a\sqrt{a}
xx00a\sqrt{a}++\infty
f(x)f'(x)-0++
++\infty++\infty
f(x)f(x)
a\sqrt{a}
Remarques :

limx0+ax=+\displaystyle{\lim_{x\rightarrow0^{+}}\dfrac{a}{x}} = +\infty car a>0a>0 et donc limx0+f(x)=+\displaystyle{\lim_{x\rightarrow0^{+}}f(x)} = +\infty.

limx+ax=0\displaystyle{\lim_{x\rightarrow+\infty}\dfrac{a}{x}} = 0 et limx+x=+\displaystyle{\lim_{x\rightarrow+\infty}x} = +\infty. Ainsi, limx+f(x)=+\displaystyle{\lim_{x\rightarrow+\infty}f(x)} = +\infty.

f(a)=12(a+aa)f(\sqrt{a})=\dfrac{1}{2}\left( \sqrt{a}+\dfrac{a}{\sqrt{a}} \right) == 12(a+a×aa×a)\dfrac{1}{2}\left( \sqrt{a}+\dfrac{a\times\sqrt{a}}{\sqrt{a}\times\sqrt{a}} \right) == 12(a+aaa)\dfrac{1}{2}\left( \sqrt{a}+\dfrac{a\sqrt{a}}{a} \right) == 12(a+a)\dfrac{1}{2}\left( \sqrt{a}+\sqrt{a} \right) == 12×2a\dfrac{1}{2}\times2\sqrt{a} == a\sqrt{a}.


La suite (un)(u_n) est strictement positive
On montre par récurrence que pour tout entier nn, un>0u_n > 0.

Initialisation
Par définition u0>0u_0 > 0.

Hérédité
On suppose que pour un certain entier nn, un>0u_n > 0. On cherche alors à montrer que un+1>0u_{n+1} >0.

On a un>0u_n>0 et aun>0\dfrac{a}{u_n} > 0 (car a>0a>0). Ainsin pour tout entier nn, un+1=12(un+aun)>0u_{n+1}=\dfrac{1}{2}\left( u_n+\dfrac{a}{u_n}\right) >0.

Conclusion
D'après le principe de récurrence, pour tout entier nn, un>0u_n > 0.

La suite (un)(u_n) est décroissante
Dans l'étude de la fonction ff, on a obtenu que pour tout x>0x>0, f(x)af(x) \geq \sqrt{a}.
Or, pour tout entier nn, un>0u_n > 0 et un+1=f(un)u_{n+1}=f(u_n). Ainsi, pour tout entier nn, unau_n \geq \sqrt{a} .

Remarque : Ce dernier résultat se démontre par une simple récurrence.

Pour tout entier nn on a :
un+1unu_{n+1}-u_n == 12(un+aun)un\dfrac{1}{2}\left( u_n+\dfrac{a}{u_n}\right)-u_n
== 12(un+aun)12×2un\dfrac{1}{2}\left( u_n+\dfrac{a}{u_n}\right)-\dfrac{1}{2}\times 2u_n
== 12(un+aun2un)\dfrac{1}{2}\left( u_n+\dfrac{a}{u_n}- 2u_n\right)
== 12(aunun)\dfrac{1}{2}\left( \dfrac{a}{u_n}- u_n\right)
== 12(aun2un)\dfrac{1}{2}\left( \dfrac{a-u_n^2}{u_n}\right).
Or, unau_n \geq \sqrt{a} et donc un2(a)2u_n^2 \geq (\sqrt{a})^2, puisque la fonction carrée est croissante sur [0;+[[0\,;+\infty[ et donc :
un2au_n^2 \geq a ce qui donne aun20a-u_n^2 \leq 0.
Ainsi, pour tout entier un+1un0u_{n+1}-u_n \leq 0. La suite (un)(u_n) est bien décroissante.

Convergence de la suite (un)(u_n)
La suite (un)(u_n) est décroissante et minorée par 00. Elle est donc convergente. On note \ell sa limite.
La suite (un)(u_n) vérifie pour tout entier nn, un+1=f(un)u_{n+1}=f(u_n) avec la fonction ff continue sur ]0;+[]0\,;+\infty[, ainsi, d'après le cours on a :
\ell == f()f(\ell)
\ell == 12(+a)\dfrac{1}{2}\left(\ell+\dfrac{a}{\ell}\right)
22\ell == +a\ell+\dfrac{a}{\ell}
00 == a\dfrac{a}{\ell}-\ell
a\dfrac{a}{\ell}-\ell == 00
a2\dfrac{a-\ell^2}{\ell} == 00
Ainsi, a2=0a-\ell^2=0 et 0\ell\neq 0.
Or, a2=0a-\ell^2=0 si et seulement si 2=a\ell^2=a.

Et puisque >0\ell >0, on a =a\ell=\sqrt{a}.

La suite (un)(u_n) converge vers a\sqrt{a}.

Vitesse de convergence de la suite (un)(u_n) vers a\sqrt{a}
Pour tout entier nn on a :
un+1au_{n+1}-\sqrt{a} == 12(un+aun)a\dfrac{1}{2}\left(u_n+\dfrac{a}{u_n} \right)-\sqrt{a}
== 12(un+aun)12×2a\dfrac{1}{2}\left(u_n+\dfrac{a}{u_n} \right)-\dfrac{1}{2}\times 2\sqrt{a}
== 12(un+aun2a)\dfrac{1}{2}\left(u_n+\dfrac{a}{u_n}-2\sqrt{a} \right)
== 12(un2+a2unaun)\dfrac{1}{2}\left(\dfrac{u_n^2+a-2u_n\sqrt{a}}{u_n} \right)
== 12(una)2un\dfrac{1}{2}\dfrac{(u_n-\sqrt{a})^2}{u_n}.
Or, pour tout entier nn, unau_n \geq \sqrt{a} avec a>1a >1. Ainsi, un>1u_n > 1 et 1un<1\dfrac{1}{u_n} < 1. Ce qui donne : un+1a<12(una)2.u_{n+1}-\sqrt{a} < \dfrac{1}{2}\left( u_n-\sqrt{a} \right)^2. Puisque (un)(u_n) converge vers a\sqrt{a}, il existe un rang n0n_0 à partir duquel, pour tout entier nn0n \geq n_0, una<0,1u_n-\sqrt{a} < 0,1.
D'après l'inégalité un+1a<12(una)2unu_{n+1}-\sqrt{a} < \dfrac{1}{2}\dfrac{(u_n-\sqrt{a})^2}{u_n}, on a alors :
un+1a<12×0,01=0,005u_{n+1}-\sqrt{a} < \dfrac{1}{2}\times 0,01 = 0,005.
De manière générale, dès qu'un terme de la suite approche a\sqrt{a} avec une précision de 10p10^{-p}, à l'étape suivante la précision sera encore meilleure que 0,5×102p0,5\times10^{-2p}.
Ceci signifie que dès que l'on a les pp premiers chiffres dans l'écriture décimale de a\sqrt{a}, à l'étape suivante le nombre de chiffres exacts aura plus que doublé.

Algorithme
On peut tout d'abord vérifier le résultat précédent sur le nombre de décimales que permettent d'atteindre les premiers termes de la suite.
Reprenons l'exemple de Héron avec a=720a=720 et u0=27u_0=27.

On a alors, pour tout entier nn, un+1=12(un+720un)u_{n+1}=\dfrac{1}{2}\left( u_n+\dfrac{720}{u_n} \right).

Dans le tableau ci-dessous toutes les valeurs sont arrondies à 101210^{-12}.
nn unu_n a\sqrt{a} unau_n-\sqrt{a}
00 2727 26,83281572999726,832\,815\,729\,997 0,1671842700030,167\,184\,270\,003
11 26,83333333333326,833\,333\,333\,333 26,83281572999726,832\,815\,729\,997 0,0005176033360,000\,517\,603\,336
22 26,8328157349926,832\,815\,734\,99 26,83281572999726,832\,815\,729\,997 0,0000000049920,000\,000\,004\,992
33 26,83281572999726,832\,815\,729\,997 26,83281572999726,832\,815\,729\,997 00
44 26,83281572999726,832\,815\,729\,997 26,83281572999726,832\,815\,729\,997 00
On remarque qu'à l'étape n=1n=1 les deux premiers chiffres de l'écriture décimale sont exactes : 26,8326,83.
À l'étape n=2n=2 on obtient 7 chiffres : 26,832815726,832\,815\,7 et à l'étape n=3n=3 la précision de la calculatrice de douze chiffres après la virgule est atteinte. La méthode est rapide ! 4La méthode de Héron est une méthode de Newton On rappelle que pour trouver une valeur approchée d'une solution α\alpha d'une équation f(x)=0f(x)=0, on peut construire, par récurrence, une suite à l'aide de la méthode dite de Newton avec un u0u_0 « bien choisi » et pour tout entier nn : un+1=unf(un)f(un).u_{n+1}=u_n-\dfrac{f(u_n)}{f'(u_n)}. Cette méthode n'est pas toujours assurée de fonctionner, cela dépend des propriétés de la fonction ff, cependant lorsque la suite est ainsi construite sa convergence vers α\alpha est rapide.
Pour a>1a >1, et pour tout x>ax > a, on pose f(x)=x2af(x)=x^2-a.
On construit alors la suite (un)(u_n) définie par la méthode de Newton :

un+1=unf(un)f(un)u_{n+1}=u_n-\dfrac{f(u_n)}{f'(u_n)} == unun2a2unu_n-\dfrac{u_n^2-a}{2u_n} == 2un2un2+a2un\dfrac{2u_n^2-u_n^2+a}{2u_n} == un2+a2un\dfrac{u_n^2+a}{2u_n} == 12×un2+aun\dfrac{1}{2} \times \dfrac{u_n^2+a}{u_n} == 12(un+aun)\dfrac{1}{2}\left( u_n+\dfrac{a}{u_n} \right).

Nous retrouvons bien la formule de la méthode de Héron. 5Annexe Property 1
Soit ABCABC un triangle rectangle en AA et HH le pied de la hauteur issue de AA.
A
B
C
H
On a alors : AH2=HB×HCAH^2=HB\times HC.
Preuve n°1 : à l'aide des triangles semblables
Les triangles HBCHBC et HACHAC sont semblables puisque, d'une part, les angles HBA^\widehat{HBA} et HAC^\widehat{HAC} sont de même mesure, ainsi que HAB^\widehat{HAB} et HCA^\widehat{HCA}. Les angles restants sont droits donc également de même mesure.

On a alors : HBHA=HAHC\dfrac{HB}{HA} = \dfrac{HA}{HC} et à l'aide d'un produit en croix on obtient : HA2=HB×HCHA^2=HB\times HC.

Preuve n°2 : à l'aide des formules de trigonmétrie
On utilise ici les mêmes égalités angulaires que précédemment : HBA^=HAC^=α\widehat{HBA} = \widehat{HAC} = \alpha et HAB^=HCA^=β\widehat{HAB} = \widehat{HCA}=\beta.
On a donc α+β=90\alpha+\beta = 90^{\circ}.
Dans le triangle rectangle ABHABH on a : HA=HBtan(α)HA=HB\tan(\alpha).
Dans le triangle rectangle AHCAHC on a : HA=HCtan(β)HA=HC\tan(\beta).
En multipliant ces deux égalité on obtient : HA2=HB×HC×tan(α)tan(β)HA^2=HB\times HC\times \tan(\alpha)\tan(\beta).
En se plaçant dans le triangle ABHABH on a : tan(α)tan(β)\tan(\alpha)\tan(\beta) == AHHB×HBAH\dfrac{AH}{HB}\times\dfrac{HB}{AH} == 11.
Ainsi, on a bien : HA2=HB×HCHA^2=HB\times HC.

Preuve n°3 : à l'aide du produit scalaire
AH2AH^2 == AHAH\overrightarrow{AH} \cdot \overrightarrow{AH}
== (AB+BH)(AC+CH)\left(\overrightarrow{AB}+\overrightarrow{BH}\right) \cdot \left(\overrightarrow{AC}+\overrightarrow{CH}\right)
== ABAC+ABCH+BHAC+BHCH\overrightarrow{AB}\cdot\overrightarrow{AC}+\overrightarrow{AB}\cdot\overrightarrow{CH}+\overrightarrow{BH}\cdot\overrightarrow{AC}+\overrightarrow{BH}\cdot\overrightarrow{CH}
== 0+ABCH+BHAC+BHCH0+\overrightarrow{AB}\cdot\overrightarrow{CH}+\overrightarrow{BH}\cdot\overrightarrow{AC}+\overrightarrow{BH}\cdot\overrightarrow{CH}
== HBCH+BHHC+BHCH\overrightarrow{HB}\cdot\overrightarrow{CH}+\overrightarrow{BH}\cdot\overrightarrow{HC}+\overrightarrow{BH}\cdot\overrightarrow{CH}
== HBCH+0\overrightarrow{HB}\cdot\overrightarrow{CH}+0
== HBCH+BH(HC+CH)\overrightarrow{HB}\cdot\overrightarrow{CH}+\overrightarrow{BH}\cdot\left(\overrightarrow{HC}+\overrightarrow{CH} \right)
== HBCH+BH0\overrightarrow{HB}\cdot\overrightarrow{CH}+\overrightarrow{BH}\cdot\overrightarrow{0}
== HB×HCHB\times HC.