Berggren tree Created 2026-10-20 Updated 2026-11-05
The Berggren tree is a rooted tree of primitive Pythagorean triples, with three children at every node. Fix the convention odd, even and . Starting from the column vector , multiply by any of
The first children are , and . These unimodular matrices preserve the quadratic form , integer parity and greatest common divisor. Every primitive Pythagorean triple occurs exactly once. F. J. M. Barning's report gives this matrix-generation theorem with the even leg first.[ref]
An infinite descent argument explains completeness. Except at the root, the unique parent is
Its hypotenuse is positive and smaller than , since . The first two unmodified entries cannot both be negative; their signs select the inverse of , or . The odd entry cannot vanish; the even entry vanishes only at . Repeated descent therefore reaches that root. Multiplying all three coordinates by a positive integer supplies every nonprimitive Pythagorean triple.
F. J. M. Barning 2026-11-05
F. J. M. Barning gave a matrix-based generation process for primitive Pythagorean triples. His 1963 Mathematisch Centrum report verifies the initials and presents three unimodular matrices generating all such triples without repetition, with a fixed leg-order convention.[ref]
The transformations preserve the equation . Starting from , with the even leg first, repeated transformations build a branching tree of solutions. The method turns a Diophantine equation into a recursive enumeration algorithm with a uniqueness theorem.[ref]