# Heron's formula

*1,013*pages on

this wiki

In geometry, **Heron's (or Hero's) formula** states that the area *(A)* of a triangle whose sides have lengths *a*, *b*, and *c* is

where *s* is the semiperimeter of the triangle:

Heron's formula can also be written as:

## History

The formula is credited to Heron of Alexandria, and a proof can be found in his book, *Metrica*, written *c.* A.D. 60. It has been suggested that Archimedes knew the formula, and since *Metrica* is a collection of the mathematical knowledge available in the ancient world, it is possible that it predates the reference given in the work. ^{[1]}

A formula equivalent to Heron's namely:

was discovered by the Chinese independently of the Greeks. It was published in *Shushu Jiuzhang* (“Mathematical Treatise in Nine Sections”), written by Qin Jiushao and published in A.D. 1247.

## Proof

A modern proof, which uses algebra and trigonometry and is quite unlike the one provided by Heron, follows. Let *a*, *b*, *c* be the sides of the triangle and *A*, *B*, *C* the angles opposite those sides. We have

by the law of cosines. From this we get the algebraic statement:

The altitude of the triangle on base *a* has length *b* sin(*C*), and it follows

The difference of two squares factorization was used in two different steps.

## Proof using the Pythagorean theorem

Heron's original proof made use of cyclic quadrilaterals, while other arguments appeal to trigonometry as above, or to the incenter and one excircle of the triangle[1]. The following argument reduces Heron's formula directly to the Pythagorean theorem using only calculus means.In the form 4*A*^{ 2} = 4*s*(*s* − *a*)(*s* − *b*)(*s* − *c*), Heron's formula reduces on the left to (*ch*)^{2}, or

using *b*^{ 2} − *d*^{ 2} = *h*^{ 2} by the Pythagorean theorem, and on the right to

via the identity (*p* + *q*)^{ 2} − (*p* − *q*)^{ 2} = 4*pq*. It therefore suffices to show

and

The former follows immediately by reflection (*a* + *b* + *c*)/2 for *s* and simplifying. Doing this for the latter reduces *s*(*s* − *a*)(*s* − *b*)(*s* − *c*) only as far as (*b*^{ 2} + *c*^{ 2} −*a*^{ 2})/2. But if we replace *b*^{ 2} by *d*^{ 2} + *h*^{ 2} and *a*^{ 2} by (*c* − *d*)^{ 2} + *h*^{ 2}, both by Pythagoras, simplification then produces *cd* as required.

## Numerical stability

Heron's formula as given above is numerically unstable for triangles with a very small angle.
A stable alternative^{[2]} involves arranging the lengths of the sides so that:
*a* ≥ *b* ≥ *c*
and computing

The parentheses in the above formula are required in order to prevent numerical instability in the evaluation.

## Generalizations

Heron's formula is a special case of Brahmagupta's formula for the area of a cyclic quadrilateral; both of which are special cases of Bretschneider's formula for the area of a quadrilateral. In both cases Heron's formula is obtained by setting one of the sides of the quadrilateral to zero.

Heron's formula is also a special case of the formula of the area of the trapezoid based only on its sides. Heron's formula is obtained by setting the smaller parallel side to zero.

Expressing Heron's formula with a determinant in terms of the squares of the distances between the three given vertices,

illustrates its similarity to Tartaglia's formula for the volume of a three-simplex.

Another generalization of Heron's formula to polygons inscribed in a circle was discovered by David P. Robbins.Template:Fix/category^{[citation needed]}

### Heron-looking formula for tetrahedrons

If *U*, *V*, *W*, *u*, *v*, *w* are lengths of edges of the tetrahedron (first three form a triangle; *u* opposite to *U* and so on), thenTemplate:Fix/category^{[citation needed]}

where

## See also

## Notes

## References

- Heath, Thomas L. (1921).
*A History of Greek Mathematics (Vol II)*. Oxford University Press. pp. 321–323.

## External links

- MathWorld entry on Heron's Formula
- A Proof of the Pythagorean Theorem From Heron's Formula at cut-the-knot
- Interactive applet and area calculator using Heron's Formula
- Implementations of Heron's formula in various programming languages
- J.H. Conway discussion on Heron's Formula
- Kevin Brown's simplification of Heron's Pythagorean argument
- Step by Step Proof of Heron's Formula.

ar:هيرون (معادلة)
bg:Херонова формула
ca:Fórmula d'Heró
cs:Heronův vzorec
da:Herons formelet:Heroni valem
el:Τύπος του Ήρωναeo:Formulo de Heronit:Formula di Erone
he:נוסחת הרון
hu:Hérón-képlet
ms:Teorem Heron
nl:Formule van Heronno:Herons formel
km:រូបមន្តហេរុង
pl:Wzór Herona
pt:Teorema de Heronsl:Heronova formula
sr:Херонова формулаsv:Herons formel
ta:ஈரோனின் வாய்பாடு
vi:Công thức Heron
uk:Формула Герона