Perfect Cuboid2015/04/23

Also a known as a perfect Euler brick or a perfect box, a perfect cuboid is a cuboid where all distances between vertices are integers. Existence of a perfect cuboid is an unsolved problem in mathematics.

There are six Pythagorean triples to satisfy. I tried to test which kinds of triples are possible using modular arithmetic. Triples were categorized by their divisibility:

For example, if is and is , then cannot be divisible by and cannot be .

With triples and kinds each, I created a program to check each of the cases. During a check, a knowledge table would keep track of each length’s divisibility by , , , and . A list of possible proof steps was created for the program to use to update the knowledge table. For a triple that was , possible proof steps looked like

'x2 x3': [
  { if: [ y.d4 ], then: x.not.d4 },
  { if: [ x.not.d5, y.not.d5 ], then: z.d5 },
  // ...

The program would keep updating the knowledge table until no new facts were available, or if a contradiction was reached.

To speed up checking, some extra considerations were made. Due to symmetries of a cuboid ( with the permutations of ), certain cases could be identical to each other. The case with the smallest identifier was used as the representative for each class of identical cases. In addition, some cases could not represent a primitive cuboid, and those cases were disregarded.

In the future, this project can be extended to check all cases under an arbitrarily high modulus.


See the old playground here. All code and data are in the GitHub repository.

Case Identifier
Knowledge (step 10)
Passed Cases (50 total)