You are on page 1of 8

The Trinary Tree(s) underlying Primitive Pythagorean Triples

H. Andres Lönnemo June 8 2000
========== FOUNDATION ========== I've known this a long time: Let ( a, b, c ) be a Pythagorean Triple a2 + b2 = c2 Parameterize a,b,c as follows a = q + m b = q + n c = q + m + n Substitute (q + m)2 + (q + n)2 = (q + m + n)2 Expand, cancel common terms, and take square root to get q = sqr(2*m*n) Thus, Pythagorean Triples can be generated by finding m,n such that 2*m*n is a perfect square. The following observations are offered without proof: * If m,n are relatively prime then the Pythagorean Triple will also be relatively prime. This is known as a Primitive Pythagorean Triple, or PPT. * q will always be even. * In PPTs, either m or n must be even and the other odd This is also true for a and b. * q is larger than m or n or both * q is smaller than m + n The reverse equations are easily derived: m = c - b n = c - a q = a + b - c m,n,q > 0 a,b,c > 0

53) and the SPPT is (5. and in the a or b will be negative.13). Thus each valid combination of m and n produce two Triples. The odd/even pattern in PPTs will be identical. SPPTs simply by changing the . other sign.13) which corresponds to a PPT of (5. a different Pythagorean Triple is formed with a or b or both being negative. SPPT.-12. However if you instead choose the negative root. ================= TREE CONSTRUCTION ================= The construction of the trinary tree is based on the observation that PPTs and SPPTs always come in pairs and every valid PPT can generate three. b and c in both assumed positive without loss of generality. and only three. The Signed Primitive Pythagorean Triple will be known as the For example: let m = 25 and n = 8 q = sqr( 2 * 25 * 8 ) = 20 a = q + m = 45 b = q + n = 28 c = q + m + n = 53 a' = -q + m = 5 b' = -q + n = -12 c' = -q + m + n = 13 The PPT is (45. The c's will always have the same if m and n are relatively prime so will be a. THEY COME IN PAIRS ======================== This is the new twist: Traditionally.12.28.======================== LOOK. Triples. One of the triples will have all positive terms. value The c' value of the SPPT will always be smaller than the c of the PPT. Again. Discard the sign(s) and you have a perfectly good Pythagorean Triple. q is assumed to be the positive root.

0.29) called P1. ================================== THE SELF ROOTED NATURE OF THE TREE ================================== Something funny happens at the apparent parent of (3.17) and (21. Also the sign pattern will tell which branch was taken.12.signs on a and b. that is the list of PPTs is 'quasi-sorted' in a heap sort sense. As you build the tree you will notice that the c's are always increasing as you traverse from the root. P2 and respectively.4.5) which is (1. .8.13).1). (15. tree Repeat the process for each child node to build as large a as you want.4. Build a table of values: A === 3 -3 3 -3 B === 4 4 -4 -4 C === 5 5 5 5 M === 1 1 9 9 N === 2 8 2 8 Q === 2 -4 -6 -12 Q' === -2 4 6 12 A' === -1 5 15 21 B' === 0 12 8 20 C' === 1 13 17 29 PPT (later) SPPT PPT SPPT PPT SPPT PPT You can now read the three child nodes from the table: P3 They are (5. Start with (3. For example: A === 5 -5 5 -5 B === 12 12 -12 -12 C === 13 13 13 13 M === 1 1 25 25 N === 8 18 8 18 Q === 4 -6 -20 -30 Q' === -4 6 20 30 A' === -3 7 45 55 B' === 4 24 28 48 C' === 5 25 53 73 SPPT PPT PPT PPT PPT SPPT SPPT SPPT Notice that the first row points back to the parent PPT when the sign is removed from the PPT.20.5) as the root node called "P".

Since one of the values is zero. there is only one signed variation of the node instead of the usual three.1. similarly (0. A === 1 -1 B === 0 0 C === 1 1 M === 1 1 N === 0 2 Q === 0 -2 Q' === 0 2 A' === 1 3 B' === 0 4 C' === 1 5 ~PPT ~PPT PPT ~SPPT This tree will lead to all PPTs where a is odd and b is even.(-a) = c + a q1 = (-a) + b .c.b) + (c + a) 2*b + 3*c Putting these equations into matrix form: (a1 b1 c1) = (a b c)( 1 2 2 ) = (a b c)*T1 ( -2 -1 -2 ) ( 2 2 3 ) Similar calculations yield: .1) will lead to all the PPTs where a is even and b is odd. again. ========================== CUTTING OUT THE MIDDLE MEN ========================== Now apply the same technique to a node in general.m.b + c) + (c .c a1 = -q1 + b1 = -q1 + c1 = -q1 + = 2*a - (always < 0) m1 = (a .b + c) + (c .b.b + c) + (c + a) = 2*a b + 2*c m1 + n1 = (a .q > 0 A === a -a a -a B === b b -b -b C === c c c c M === m m1 m2 m3 N === n n1 n2 n3 Q === q q1 q2 q3 Q' === -q -q1 -q2 -q3 A' === a0 a1 a2 a3 B' === b0 b1 b2 b3 C' === c0 c1 c2 c3 Once PPT SPPT PPT PPT PPT SPPT SPPT SPPT Processing the first child shows: m1 = c .n. assume a.b) = a .2*b + 2*c n1 = (a .b m2 = c .

It means that any Pythagorean Triple can generate three new Triples by means of matrix multiplications with T1. If the triple is a PPT the child nodes will be PPTs and the T0 transform will yield a SPPT corresponding to the parent. T2 and T3 with larger c's.0.1) or (0. and are bounded by this sequence must terminate in a different 'self-parent' than (1. and can generate a signed version of a smaller c triple with a matrix multiplication with T0. since q = 0 implies m = 0 or n = 0 (Remember q = sqr(2*m*n)). Suppose you have a PPT which is not spanned by the tree. Since the c's are decreasing.(a2 b2 c2) = (a b c)( -1 -2 -2 ) = (a b c)*T2 ( 2 1 2 ) ( 2 2 3 ) (a3 b3 c3) = (a b c)( ( ( 1 2 2 2 1 2 2 ) = (a b c)*T3 2 ) 3 ) (a0 b0 c0) = (a b c)( -1 -2 -2 ) = (a b c)*T0 ( -2 -1 -2 ) ( 2 2 3 ) And this is a remarkable result. ================= SPANNING THE PPTS ================= The trinary tree covers the entire set of PPTs completely and uniquely. Since everything is relatively prime these two are the only two triples where q = 0.1. The completely part requires a proof by contradiction. The unique part is inherent from the construction of the tree. zero. It would still have a 'mnq-twin' SPPT with a smaller c. This PPT can't be on the tree either or the original one would and so on. And the absolute values of those numbers would form another PPT. be. Each node has only one unique SPPT 'mnq-twin' and thus has only one parent.1). ================================ MNQ-TWINS IN LINEAR ALGEBRA FORM ================================ .

2. T * T = I Proof: * P = InvP * P = I Thus the T transform will find the 'mnq-twin' of any triple.3 U1 = ( -1 0 0 ) ( 0 1 0 ) ( 0 0 1 ) U2 = ( 1 0 ( 0 -1 ( 0 0 0 ) 0 ) 1 ) U3 = ( -1 0 ( 0 -1 ( 0 0 0 ) 0 ) 1 ) T1 = U1 * T = ( 1 2 2 ) ( -2 -1 -2 ) ( 2 2 3 ) T2 and T3 multiply out identically to the results in the previous section. ================================ EIGENVECTORS AND SELF ROOTEDNESS .T ------------------------------------> (a b c) -----> (m n q) -----> (m n -q) -----> (a' b' c') InvP U4 P InvP = ( 0 -1 1 ) ( -1 0 1 ) ( 1 1 -1 ) U4 * U4 = I T = InvP * U4 * P = ( -1 -2 -2 ) ( -2 -1 -2 ) ( 2 2 3 ) Note. ======================================== TREE CONSTRUCTION IN LINEAR ALGEBRA FORM ======================================== Parent -------------------------> Child Signed Variation MNQ-Twin T * T = InvP * U4 * P * InvP * U4 * P = InvP * U4 * U4 U4 = ( 1 ( 0 ( 0 0 0 ) 1 0 ) 0 -1 ) P = ( 1 0 1 ) ( 0 1 1 ) ( 1 1 1 ) PPT SPPT PPT (a b c) -----> ( a' b' c ) -----> ( a" b" c" ) Ui T i = 1.

These are precisely the two self rooted triplets that lead to all the odd/even/odd and even/odd/odd PPTs respectively. ==================== AN INTERESTING TWIST ==================== Reversing the first two rows of T has the effect of swapping the odd/even pattern of a and b. So instead even/odd of two separate self rooted trees. and 1 with eigenvectors: ( s1. (s1+s2)/2 ) and (1. s1 ) and ( 0.2) Applying the Pythagorean constraint to these shows no real solutions possible. 0. you get sort of 'Siamese' trees joined at the head where the tiers alternate between and odd/even triples. This has the effect of making (1 0 1) the parent of (0 1 1) and vice versa. Therefore there can be no other .1) can never be a Pythagorean triple when multiplied by any length (except the trivial zero). 1.1. That leaves two vectors: ( s1. Since there is a double root at one the eigenvectors require two parameters.1. and -1. -1. The eigenvalues of this matrix are -1. The characteristic equation of T is -x3 + x2 + x . 1 ) when relative primeness is introduced. A set of corresponding eigenvectors are: ( s1. 1 ) and ( 0. Both is again the trivial solution and can be discarded.================================ The Eigenvectors of T are also interesting. Applying the Pythagorean constraint to the first family of vectors: (s1)2 + (s2)2 = (s1 + s2)2 s12 + s22 = s12 + 2*s1*s2 + s22 0 = 2*s1*s2 Therefore s1 = 0 or s2 = 0 or both. it can be discarded. 0.1 = 0 Which yields roots of 1. 1. s1+s2 ) and ( s3. s2 ) which reduce to ( 1. s2. s2. s3. s2. s3 ) Since (1.

.self-rooted trees based on this matrix.