類似的思考方向, 我們也可很輕易的從 x2 + y2 = z2 的一組正整數解得到無窮多組正整數解. 例如 x = 3, y = 4, z = 5 是一組正整數解, 因此可得對任意 , x = 3, y = 4, z = 5 也是一組正整數解. 所以我們知有無窮多組 Pythagorean triples. 不過這樣所得的 Pythagorean triple 對我們來說是沒多大興趣的. 我們比較有興趣的是一組 Pythagorean triple ``原始''是來自哪個 Pythagorean triple. 也就是我們有興趣於那些最大公因數為 1 的 Pythagorean triple. 事實上任一組 Pythagorean triple 都是來自於某一組最大公因數為 1 的 Pythagorean triple. 這是因為若 x = a, y = b, z = c 是一組 Pythagorean triple 且 gcd(a, b, c) = d, 則存在 a', b'c' 使得 a = da', b = db', c = dc' 且 gcd(a', b', c') = 1. 另一方面由於 a2 + b2 = c2 可得 a'2 + b'2 = c'2, 所以 x = a', y = b', z = c' 就是一組最大公因數為 1 的 Pythagorean triple. 因此我們只要專注於最大公因數為 1 的 Pythagorean triple 即可.
最後我們發現若 x = a, y = b, z = c 是一組最大公因數為 1 的 Pythagorean triple, 當然 x = b, y = a, z = c 也是一組最大公因數為 1 的 Pythagorean triple, 也就是說藉由交換 x, y 的順序所得的解也沒多大意思. 所以我們想找一個方法僅考慮一組 x, y 的順序即可. 例如我們可僅考慮 x > y 的情形. 不過這樣的限制對我們找解沒有多大的幫助. 我們可以考慮另一種限制. 首先注意最大公因數的限制使得我們的 Pythagorean triple 其 x, y 的值不能同為偶數, 否則由 z2 = x2 + y2 知 z 必為偶數, 造成 x, y, z 的最大公因數會大於等於 2. 另一方面 x, y 的值也不能同為奇數. 這是因為若 x, y 皆為奇數, 則 x2 y2 1(mod 4). 因此會造成 x2 + y2 2(mod 4), 然而 x2 + y2 是偶數, 故由 z2 = x2 + y2 得 z 為偶數. 也就是說 z2 0(mod 4). 這會造成
我們希望能找到所有的 primitive Pythagorean triples. 事實上 primitive Pythagorean triples 會有無窮多個, 所以這裡指的找到並不是將所有的 primitive Pythagorean triples 都列出, 我們是要找到一個方法將所有的 primitive Pythagorean triples 表示出來.
反之對任意一組 m, n 滿足 m > n, gcd(m, n) = 1 且 m, n 中有一個是奇數一個是偶數, 若令 x = m2 - n2, y = 2mn 且 z = m2 + n2, 則 x, y, z 為一組 primitive Pythagorean triple.
既然 (z + x)/2 和 (z - x)/2 互質, 故由 (y/2)2 = ((z + x)/2)((z - x)/2) 可得 (z + x)/2 和 (z - x)/2 皆為某個整數之平方, 亦即存在 m, n 使得 m2 = (z + x)/2 及 n2 = (z - x)/2. 此時我們得
反之對任意一組 m, n 滿足 m > n, gcd(m, n) = 1 且 m, n 中有一個是奇數一個是偶數, 若令 x = m2 - n2, y = 2mn 且 z = m2 + n2, 則自然知 x, y, z 且 x2 + y2 = z2, 也就是說 x, y, z 是一組 Pythagorean triple. 因此我們僅剩下要說明它們是 primitive, 即 gcd(x, y, z) = 1, x 為奇數且 y 為偶數. 依定義 y = 2mn 所以 y 當然是偶數, 而 m, n 中一個是奇數一個是偶數所以 x = m2 - n2 當然是奇數. 至於 gcd(x, y, z) = 1 是因為如果 gcd(x, y, z) > 1, 則 gcd(x, y, z) 必為奇數 (因為已知 x 是奇數) 所以存在一奇質數 p 為 x, y, z 的公因數. 因為 p 整除 z + x = 2m2 且 p 整除 z - x = 2n2 又因為 p 為奇質數, 我們得 p| m 且 p| n. 此與 m, n 互質的假設相矛盾, 故知 gcd(x, y, z) = 1.
Theorem 7.2.2 告訴我們每一個 primitive Pythagorean triple 都可由一組一奇一偶且互質的正整數 m, n 得到, 而且每給一組這樣的正整數就可得一組 primitive Pythagorean triple. 雖然我們可以輕易的找到無窮多組這樣的 m, n 但這並不表示可以產生無窮多組 primitive Pythagorean triples, 除非我們知道不同的一組 m, n 可產生不同的 Pythagorean triple. 事實上若 m, n 和 m', n' 是兩組一奇一偶且互質的正整數其中 m > n 且 m' > n', 假設 m, n 和 m', n' 產生一樣的 primitive Pythagorean triple. 亦即 m2 - n2 = m'2 - n'2 且 m2 + n2 = m'2 + n'2. 將兩式相加可得 2m2 = 2m'2, 故由 m, m' 皆為正整數得 m = m'. 同理得 n = n'. 因此我們有以下之結果.