Pythagorean triple


A Pythagorean triple consists of three positive integers,, and, such that. Such a triple is commonly written, and a well-known example is. If is a Pythagorean triple, then so is for any positive integer. A primitive Pythagorean triple is one in which, and are coprime. A triangle whose sides form a Pythagorean triple is called a Pythagorean triangle, and is necessarily a right triangle.
The name is derived from the Pythagorean theorem, stating that every right triangle has side lengths satisfying the formula ; thus, Pythagorean triples describe the three integer side lengths of a right triangle. However, right triangles with non-integer sides do not form Pythagorean triples. For instance, the triangle with sides and is a right triangle, but is not a Pythagorean triple because is not an integer. Moreover, and do not have an integer common multiple because is irrational.
Pythagorean triples have been known since ancient times. The oldest known record comes from Plimpton 322, a Babylonian clay tablet from about 1800 BC, written in a sexagesimal number system. It was discovered by Edgar James Banks shortly after 1900, and sold to George Arthur Plimpton in 1922, for $10.
When searching for integer solutions, the equation is a Diophantine equation. Thus Pythagorean triples are among the oldest known solutions of a nonlinear Diophantine equation.

Examples

There are 16 primitive Pythagorean triples with :
Note, for example, that is not a primitive Pythagorean triple, as it is a multiple of. Each of these low-c points forms one of the more easily recognizable radiating lines in the scatter plot.
Additionally these are all the primitive Pythagorean triples with :

Generating a triple

Euclid's formula is a fundamental formula for generating Pythagorean triples given an arbitrary pair of integers m and n with. The formula states that the integers
form a Pythagorean triple. The triple generated by Euclid's formula is primitive if and only if m and n are coprime and not both odd. When both m and n are odd, then a, b, and c will be even, and the triple will not be primitive; however, dividing a, b, and c by 2 will yield a primitive triple when m and n are coprime and both odd.
Every primitive triple arises from a unique pair of coprime numbers m, n, one of which is even. It follows that there are infinitely many primitive Pythagorean triples. This relationship of a, b and c to m and n from Euclid's formula is referenced throughout the rest of this article.
Despite generating all primitive triples, Euclid's formula does not produce all triples—for example, cannot be generated using integer m and n. This can be remedied by inserting an additional parameter k to the formula. The following will generate all Pythagorean triples uniquely:
where m, n, and k are positive integers with, and with m and n coprime and not both odd.
That these formulas generate Pythagorean triples can be verified by expanding using elementary algebra and verifying that the result equals c2. Since every Pythagorean triple can be divided through by some integer k to obtain a primitive triple, every triple can be generated uniquely by using the formula with m and n to generate its primitive counterpart and then multiplying through by k as in the last equation.
Choosing m and n from certain integer sequences gives interesting results. For example, if m and n are consecutive Pell numbers, a and b will differ by 1.
Many formulas for generating triples with particular properties have been developed since the time of Euclid.

Proof of Euclid's formula

That satisfaction of Euclid's formula by a, b, c is sufficient for the triangle to be Pythagorean is apparent from the fact that for positive integers m and n, m > n, the a, b, and c given by the formula are all positive integers, and from the fact that
A proof of the necessity that a, b, c be expressed by Euclid's formula for any primitive Pythagorean triple is as follows. All such triples can be written as where and a, b, c are coprime. Thus a, b, c are pairwise coprime. As a and b are coprime, at least one of them is odd, so we may suppose that a is odd, by exchanging, if needed, a and b. This implies that b is even and c is odd.
From we obtain and hence. Then. Since is rational, we set it equal to in lowest terms. Thus, being the reciprocal of . Then solving
for and gives
As is fully reduced, m and n are coprime, and they cannot both be even. If they were both odd, the numerator of would be a multiple of 4, and the denominator 2mn would not be a multiple of 4. Since 4 would be the minimum possible even factor in the numerator and 2 would be the maximum possible even factor in the denominator, this would imply a to be even despite defining it as odd. Thus one of m and n is odd and the other is even, and the numerators of the two fractions with denominator 2mn are odd. Thus these fractions are fully reduced. One may thus equate numerators with numerators and denominators with denominators, giving Euclid's formula
A longer but more commonplace proof is given in Maor and Sierpiński. Another proof is given in, as an instance of a general method that applies to every homogeneous Diophantine equation of degree two.

Interpretation of parameters in Euclid's formula

Suppose the sides of a Pythagorean triangle have lengths,, and, and suppose the angle between the leg of length and the hypotenuse of length is denoted as. Then and the full-angle trigonometric values are,, and.

A variant

The following variant of Euclid's formula is sometimes more convenient, as being more symmetric in and .
If and are two odd integers such that, then
are three integers that form a Pythagorean triple, which is primitive if and only if and are coprime. Conversely, every primitive Pythagorean triple arises from a unique pair of coprime odd integers.

Elementary properties of primitive Pythagorean triples

General properties

The properties of a primitive Pythagorean triple with include:
In addition, special Pythagorean triples with certain additional properties can be guaranteed to exist:

Rational points on a unit circle

Euclid's formula for a Pythagorean triple
can be understood in terms of the geometry of rational points on the unit circle.
In fact, a point in the Cartesian plane with coordinates belongs to the unit circle if. The point is rational if and are rational numbers, that is, if there are coprime integers such that
By multiplying both members by, one can see that the rational points on the circle are in one-to-one correspondence with the primitive Pythagorean triples.
The unit circle may also be defined by a parametric equation
Euclid's formula for Pythagorean triples means that, except for, a point on the circle is rational if and only if the corresponding value of is a rational number.

Stereographic approach

There is a correspondence between points on the unit circle with rational coordinates and primitive Pythagorean triples. At this point, Euclid's formulae can be derived either by methods of trigonometry or equivalently by using the stereographic projection.
For the stereographic approach, suppose that P′ is a point on the x-axis with rational coordinates
Then, it can be shown by basic algebra that the point P has coordinates
This establishes that each rational point of the x-axis goes over to a rational point of the unit circle. The converse, that every rational point of the unit circle comes from such a point of the x-axis, follows by applying the inverse stereographic projection. Suppose that P is a point of the unit circle with x and y rational numbers. Then the point P′ obtained by stereographic projection onto the x-axis has coordinates
which is rational.
In terms of algebraic geometry, the algebraic variety of rational points on the unit circle is birational to the affine line over the rational numbers. The unit circle is thus called a rational curve, and it is this fact which enables an explicit parameterization of the points on it by means of rational functions.

Pythagorean triangles in a 2D lattice

A 2D lattice is a regular array of isolated points where if any one point is chosen as the Cartesian origin, then all the other points are at where x and y range over all positive and negative integers. Any Pythagorean triangle with triple can be drawn within a 2D lattice with vertices at coordinates, and. The count of lattice points lying strictly within the bounds of the triangle is given by for primitive Pythagorean triples this interior lattice count is The area equals .
The first occurrence of two primitive Pythagorean triples sharing the same area occurs with triangles with sides, and common area 210 . The first occurrence of two primitive Pythagorean triples sharing the same interior lattice count occurs with, and interior lattice count 2287674594 . Three primitive Pythagorean triples have been found sharing the same area:, , with area 13123110. As yet, no set of three primitive Pythagorean triples have been found sharing the same interior lattice count.

Enumeration of primitive Pythagorean triples

By Euclid's formula all primitive Pythagorean triples can be generated from integers and with, odd and. Hence there is a 1 to 1 mapping of rationals to primitive Pythagorean triples where is in the interval and odd.
The reverse mapping from a primitive triple where to a rational is achieved by studying the two sums and. One of these sums will be a square that can be equated to and the other will be twice a square that can be equated to. It is then possible to determine the rational.
In order to enumerate primitive Pythagorean triples the rational can be expressed as an ordered pair and mapped to an integer using a pairing function such as Cantor's pairing function. An example can be seen at. It begins

Spinors and the modular group

Pythagorean triples can likewise be encoded into a square matrix of the form
A matrix of this form is symmetric. Furthermore, the determinant of X is
which is zero precisely when is a Pythagorean triple. If X corresponds to a Pythagorean triple, then as a matrix it must have rank 1.
Since X is symmetric, it follows from a result in linear algebra that there is a column vector such that the outer product
holds, where the T denotes the matrix transpose. The vector ξ is called a spinor. In abstract terms, the Euclid formula means that each primitive Pythagorean triple can be written as the outer product with itself of a spinor with integer entries, as in.
The modular group Γ is the set of 2×2 matrices with integer entries
with determinant equal to one:. This set forms a group, since the inverse of a matrix in Γ is again in Γ, as is the product of two matrices in Γ. The modular group acts on the collection of all integer spinors. Furthermore, the group is transitive on the collection of integer spinors with relatively prime entries. For if T has relatively prime entries, then
where u and v are selected so that.
By acting on the spinor ξ in, the action of Γ goes over to an action on Pythagorean triples, provided one allows for triples with possibly negative components. Thus if A is a matrix in Γ, then
gives rise to an action on the matrix X in. This does not give a well-defined action on primitive triples, since it may take a primitive triple to an imprimitive one. It is convenient at this point to call a triple standard if and either are relatively prime or are relatively prime with a/2 odd. If the spinor T has relatively prime entries, then the associated triple determined by is a standard triple. It follows that the action of the modular group is transitive on the set of standard triples.
Alternatively, restrict attention to those values of m and n for which m is odd and n is even. Let the subgroup Γ of Γ be the kernel of the group homomorphism
where SL is the special linear group over the finite field Z2 of integers modulo 2. Then Γ is the group of unimodular transformations which preserve the parity of each entry. Thus if the first entry of ξ is odd and the second entry is even, then the same is true of Aξ for all. In fact, under the action, the group Γ acts transitively on the collection of primitive Pythagorean triples.
The group Γ is the free group whose generators are the matrices
Consequently, every primitive Pythagorean triple can be obtained in a unique way as a product of copies of the matrices U and L.

Parent/child relationships

By a result of, all primitive Pythagorean triples can be generated from the triangle by using the three linear transformations T1, T2, T3 below, where a, b, c are sides of a triple:
In other words, every primitive triple will be a "parent" to three additional primitive triples.
Starting from the initial node with a = 3, b = 4, and c = 5, the operation T1 produces the new triple
and similarly T2 and T3 produce the triples and.
The linear transformations T1, T2, and T3 have a geometric interpretation in the language of quadratic forms. They are closely related to reflections generating the orthogonal group of x2 + y2z2 over the integers.

Relation to Gaussian integers

Alternatively, Euclid's formulae can be analyzed and proven using the Gaussian integers. Gaussian integers are complex numbers of the form, where u and v are ordinary integers and i is the square root of negative one. The units of Gaussian integers are ±1 and ±i. The ordinary integers are called the rational integers and denoted as Z. The Gaussian integers are denoted as Z. The right-hand side of the Pythagorean theorem may be factored in Gaussian integers:
A primitive Pythagorean triple is one in which a and b are coprime, i.e., they share no prime factors in the integers. For such a triple, either a or b is even, and the other is odd; from this, it follows that c is also odd.
The two factors and of a primitive Pythagorean triple each equal the square of a Gaussian integer. This can be proved using the property that every Gaussian integer can be factored uniquely into Gaussian primes up to units. The proof has three steps. First, if a and b share no prime factors in the integers, then they also share no prime factors in the Gaussian integers. Second, it follows that z and z* likewise share no prime factors in the Gaussian integers. For if they did, then their common divisor δ would also divide z + z* = 2a and zz* = 2ib. Since a and b are coprime, that implies that δ divides 2 = = i2. From the formula c2 = zz*, that in turn would imply that c is even, contrary to the hypothesis of a primitive Pythagorean triple. Third, since c2 is a square, every Gaussian prime in its factorization is doubled, i.e., appears an even number of times. Since z and z* share no prime factors, this doubling is also true for them. Hence, z and z* are squares.
Thus, the first factor can be written
The real and imaginary parts of this equation give the two formulas:
For any primitive Pythagorean triple, there must be integers m and n such that these two equations are satisfied. Hence, every Pythagorean triple can be generated from some choice of these integers.

As perfect square Gaussian integers

If we consider the square of a Gaussian integer we get the following direct interpretation of Euclid's formula as representing the perfect square of a Gaussian integer.
Using the facts that the Gaussian integers are a Euclidean domain and that for a Gaussian integer p is always a square it is possible to show that a Pythagorean triple corresponds to the square of a prime Gaussian integer if the hypotenuse is prime.
If the Gaussian integer is not prime then it is the product of two Gaussian integers p and q with and integers. Since magnitudes multiply in the Gaussian integers, the product must be, which when squared to find a Pythagorean triple must be composite. The contrapositive completes the proof.

Relation to ellipses with integral dimensions

With reference to the figure and the definition of the foci of an ellipse, F1 and F2, for any point P on the ellipse, F1P + PF2 is constant.
As points A and B are both on the ellipse, F1A + AF2 = F1B + BF2. Due to symmetry, F1A + AF2 = F2A' + AF2 = AA' = 2 AC, and F1B + BF2 = 2 BF2. Hence, AC = BF2.
Thus, if BCF2 is a right-angle triangle with integral sides, the separation of the foci, linear eccentricity, minor axis and major axis are all also integers.

Distribution of triples

There are a number of results on the distribution of Pythagorean triples. In the scatter plot, a number of obvious patterns are already apparent. Whenever the legs of a primitive triple appear in the plot, all integer multiples of must also appear in the plot, and this property produces the appearance of lines radiating from the origin in the diagram.
Within the scatter, there are sets of parabolic patterns with a high density of points and all their foci at the origin, opening up in all four directions. Different parabolas intersect at the axes and appear to reflect off the axis with an incidence angle of 45 degrees, with a third parabola entering in a perpendicular fashion. Within this quadrant, each arc centered on the origin shows that section of the parabola that lies between its tip and its intersection with its semi-latus rectum.
These patterns can be explained as follows. If is an integer, then is a Pythagorean triple. The Pythagorean triples thus lie on curves given by, that is, parabolas reflected at the a-axis, and the corresponding curves with a and b interchanged. If a is varied for a given n, integer values of b occur relatively frequently if n is a square or a small multiple of a square. If several such values happen to lie close together, the corresponding parabolas approximately coincide, and the triples cluster in a narrow parabolic strip. For instance, 382 = 1444, 2 × 272 = 1458,
3 × 222 = 1452, 5 × 172 = 1445 and 10 × 122 = 1440; the corresponding parabolic strip around n ≈ 1450 is clearly visible in the scatter plot.
The angular properties described above follow immediately from the functional form of the parabolas. The parabolas are reflected at the a-axis at a = 2n, and the derivative of b with respect to a at this point is –1; hence the incidence angle is 45°. Since the clusters, like all triples, are repeated at integer multiples, the value 2n also corresponds to a cluster. The corresponding parabola intersects the b-axis at right angles at b = 2n, and hence its reflection upon interchange of a and b intersects the a-axis at right angles at a = 2n, precisely where the parabola for n is reflected at the a-axis.
Albert Fässler and others provide insights into the significance of these parabolas in the context of conformal mappings.

Special cases and related equations

The Platonic sequence

The case n = 1 of the more general construction of Pythagorean triples has been known for a long time. Proclus, in his commentary to the 47th Proposition of the first book of Euclid's Elements, describes it as follows:
Certain methods for the discovery of triangles of this kind are handed down, one which they refer to Plato, and another to Pythagoras. starts from odd numbers. For it makes the odd number the smaller of the sides about the right angle; then it takes the square of it, subtracts unity and makes half the difference the greater of the sides about the right angle; lastly it adds unity to this and so forms the remaining side, the hypotenuse.

...For the method of Plato argues from even numbers. It takes the given even number and makes it one of the sides about the right angle; then, bisecting this number and squaring the half, it adds unity to the square to form the hypotenuse, and subtracts unity from the square to form the other side about the right angle.... Thus it has formed the same triangle that which was obtained by the other method.

In equation form, this becomes:
a is odd :
a is even :
It can be shown that all Pythagorean triples can be obtained, with appropriate rescaling, from the basic Platonic sequence by allowing a to take non-integer rational values. If a is replaced with the fraction m/n in the sequence, the result is equal to the 'standard' triple generator after rescaling. It follows that every triple has a corresponding rational a value which can be used to generate a similar triangle. For example, the Platonic equivalent of is generated by a = m/n = 7/4 as /2, =. The Platonic sequence itself can be derived by following the steps for 'splitting the square' described in Diophantus II.VIII.

The Jacobi–Madden equation

The equation,
is equivalent to the special Pythagorean triple,
There is an infinite number of solutions to this equation as solving for the variables involves an elliptic curve. Small ones are,

Equal sums of two squares

One way to generate solutions to is to parametrize a, b, c, d in terms of integers m, n, p, q as follows:

Equal sums of two fourth powers

Given two sets of Pythagorean triples,
the problem of finding equal products of a non-hypotenuse side and the hypotenuse,
is easily seen to be equivalent to the equation,
and was first solved by Euler as. Since he showed this is a rational point in an elliptic curve, then there is an infinite number of solutions. In fact, he also found a 7th degree polynomial parameterization.

Descartes' Circle Theorem

For the case of Descartes' circle theorem where all variables are squares,
Euler showed this is equivalent to three simultaneous Pythagorean triples,
There is also an infinite number of solutions, and for the special case when, then the equation simplifies to,
with small solutions as and can be solved as binary quadratic forms.

Almost-isosceles Pythagorean triples

No Pythagorean triples are isosceles, because the ratio of the hypotenuse to either other side is, but cannot be expressed as the ratio of 2 integers.
There are, however, right-angled triangles with integral sides for which the lengths of the non-hypotenuse sides differ by one, such as,
and an infinite number of others. They can be completely parameterized as,
where are the solutions to the Pell equation.
If a, b, c are the sides of this type of primitive Pythagorean triple then the solution to the Pell equation is given by the recursive formula
This sequence of PPTs forms the central stem of the rooted ternary tree of PPTs.
When it is the longer non-hypotenuse side and hypotenuse that differ by one, such as in
then the complete solution for the PPT a, b, c is
and
where integer is the generating parameter.
It shows that all odd numbers appear in this type of almost-isosceles PPT. This sequence of PPTs forms the right hand side outer stem of the rooted ternary tree of PPTs.
Another property of this type of almost-isosceles PPT is that the sides are related such that
for some integer. Or in other words is divisible by such as in

Fibonacci numbers in Pythagorean triples

Starting with 5, every second Fibonacci number is the length of the hypotenuse of a right triangle with integer sides, or in other words, the largest number in a Pythagorean triple. The length of the longer leg of this triangle is equal to the sum of the three sides of the preceding triangle in this series of triangles, and the shorter leg is equal to the difference between the preceding bypassed Fibonacci number and the shorter leg of the preceding triangle.

Generalizations

There are several ways to generalize the concept of Pythagorean triples.

Pythagorean ''n''-tuple

Using the simple algebraic identity,
for arbitrary x0, x1, it is easy to prove that the square of the sum of n squares is itself the sum of n squares by letting x0 = x22 + x32 + ... + xn2 and then distributing terms. One can see how Pythagorean triples and quadruples are just the particular cases x0 = x22 and x0 = x22 + x32, respectively, and so on for other n, with quintuples given by
Since the sum F of k consecutive squares beginning with m2 is given by the formula,
one may find values so that F is a square, such as one by Hirschhorn where the number of terms is itself a square,
and v ≥ 5 is any integer not divisible by 2 or 3. For the smallest case v = 5, hence k = 25, this yields the well-known cannonball-stacking problem of Lucas,
a fact which is connected to the Leech lattice.
In addition, if in a Pythagorean n-tuple all addends are consecutive except one, one can use the equation,
Since the second power of p cancels out, this is only linear and easily solved for as though k, m should be chosen so that p is an integer, with a small example being k = 5, m = 1 yielding,
Thus, one way of generating Pythagorean n-tuples is by using, for various x,
where q = n–2 and where

Pythagorean quadruple

A set of four positive integers a, b, c and d such that is called a Pythagorean quadruple. The simplest example is, since 12 + 22 + 22 = 32. The next simplest example is, since 22 + 32 + 62 = 72.
All quadruples are given by the formula

Fermat's Last Theorem

A generalization of the concept of Pythagorean triples is the search for triples of positive integers a, b, and c, such that, for some n strictly greater than 2. Pierre de Fermat in 1637 claimed that no such triple exists, a claim that came to be known as Fermat's Last Theorem because it took longer than any other conjecture by Fermat to be proven or disproven. The first proof was given by Andrew Wiles in 1994.

''n'' − 1 or ''n'' ''n''th powers summing to an ''n''th power

Another generalization is searching for sequences of n + 1 positive integers for which the nth power of the last is the sum of the nth powers of the previous terms. The smallest sequences for known values of n are:
For the n=3 case, in which called the Fermat cubic, a general formula exists giving all solutions.
A slightly different generalization allows the sum of nth powers to equal the sum of nth powers. For example:
There can also exist n − 1 positive integers whose nth powers sum to an nth power ; these are counterexamples to Euler's sum of powers conjecture. The smallest known counterexamples are
A Heronian triangle is commonly defined as one with integer sides whose area is also an integer, and we shall consider Heronian triangles with distinct integer sides. The lengths of the sides of such a triangle form a Heronian triple provided a < b < c.
Clearly, any Pythagorean triple is a Heronian triple, since in a Pythagorean triple at least one of the legs a, b must be even, so that the area ab/2 is an integer. Not every Heronian triple is a Pythagorean triple, however, as the example with area 24 shows.
If is a Heronian triple, so is where m is any positive integer greater than one.
The Heronian triple is primitive provided a, b, c are pairwise relatively prime. Here are a few of the simplest primitive Heronian triples that are not Pythagorean triples:
By Heron's formula, the extra condition for a triple of positive integers with a < b < c to be Heronian is that
or equivalently
be a nonzero perfect square divisible by 16.

Application to cryptography

Primitive Pythagorean triples have been used in cryptography as random sequences and for the generation of keys.