# Archives

## Optimal solutions to the Eliac puzzle

Submitted by Ben Whitmore on Sat, 05/18/2019 - 16:13.The Eliac is a complex deep-cut 2-gen circle puzzle:

The left circle rotates in increments of 90 degrees and the right circle rotates only by 180 degrees. There is a simulator of the puzzle here.

Using ksolve++ I made an optimal solver modified it slightly to turn it into a coset solver. The subgroup I used for the coset solver is the subgroup of positions where the 18 small triangles, 10 diamonds, and 2 squares are solved. There are 1600300800 arrangements of those 30 pieces and each coset has 3024000 solvable positions. Unfortunately since the puzzle is 2-gen, there isn't a good way to select a subgroup generated by a subset of the generators of the whole puzzle, which (as far as I can tell) is what is required in order to make the "pre-pass" trick work for sub-optimally solving cosets very quickly. So each coset needs to be solved optimally using a pure DFS, which takes quite a long time (about 1.5 hours on my laptop). Notice that the puzzle has a horizontal reflection symmetry so we only need to solve one coset in each symmetry class.

The left circle rotates in increments of 90 degrees and the right circle rotates only by 180 degrees. There is a simulator of the puzzle here.

Using ksolve++ I made an optimal solver modified it slightly to turn it into a coset solver. The subgroup I used for the coset solver is the subgroup of positions where the 18 small triangles, 10 diamonds, and 2 squares are solved. There are 1600300800 arrangements of those 30 pieces and each coset has 3024000 solvable positions. Unfortunately since the puzzle is 2-gen, there isn't a good way to select a subgroup generated by a subset of the generators of the whole puzzle, which (as far as I can tell) is what is required in order to make the "pre-pass" trick work for sub-optimally solving cosets very quickly. So each coset needs to be solved optimally using a pure DFS, which takes quite a long time (about 1.5 hours on my laptop). Notice that the puzzle has a horizontal reflection symmetry so we only need to solve one coset in each symmetry class.

» 2 comments | read more