I have this weird idea for a puzzle/toy (or torture device, depending on how you look at it) I've been trying to make for years now. I happen to be worse at this kind of math as I thought; and I'd be delighted to get some help.

This puzzle is made of 64 cubes, with a peg or hole on each side (such as, you can connect them like Lego bricks). These pegs and holes have different shapes, call them, if you will, symbols (just bear in mind there's an "up" and "down" symbol pair on each connection). The goal of the puzzle is simple, build a solid $4\times 4\times 4$ cube, with no gaps in it.

The problem is, how can I generate a set of these cubes with a low number of possible solutions (Ideally just 1), while using the fewest amount of symbols?

P.S. Sorry if there was some weird grammar or tone here, I'm not a native speaker.

  • 2
    $\begingroup$ Interesting question. Do you want the faces on the boundary of the big cube to be flat or to have unused pegs/holes? $\endgroup$ May 17, 2021 at 4:26
  • $\begingroup$ I do want the faces on the boundary to have pegs and holes, due it's toy-like features (being able to build shapes, other than the intended solution). $\endgroup$
    – JPMA29
    May 17, 2021 at 4:34
  • 3
    $\begingroup$ If you are willing to ask a superior being for help, I'd first see what you get by starting from unique pegs, and joining randomly until a SAT solver reports two solutions after any additional peg joining. $\endgroup$
    – Ville Salo
    May 17, 2021 at 6:13
  • 1
    $\begingroup$ Along the lines of Ville Salo's comment, see Marijn Heule's paper Solving edge-matching problems with satisfiability solvers. $\endgroup$ May 18, 2021 at 1:20
  • 1
    $\begingroup$ If you take just one symbol with rotational symmetry of order 2 then there are 224 distinct cubes which can be made. A possible approach would be to assign symbol orientation and tab/slot at random to each of the 144 internal face pairs of the assembled $4\times 4\times 4$ puzzle; verify that the fully internal cubes are distinct; use bipartite matching to assign symbols to the external faces such that you get distinct cubes and no two corner cubes are interchangeable, and then try to verify the absence of phantom solutions with a SAT solver. $\endgroup$ May 19, 2021 at 13:44

1 Answer 1


The size of the problem you're envisioning is so small that your best bet is probably to follow the suggestion in the comments. Just try lots of possibilities, using a (free) SAT solver such as clasp to count the number of solutions, until you find something you're happy with.

If you want to study the work of other people who have worked on similar problems, you might want to look at Alex Selby's notes about how he and Oliver Riordan solved Christopher Monckton's Eternity puzzle. You'll see that Selby and Riordan thought pretty hard about how to estimate the difficulty of solving this type of puzzle.

After losing money on Eternity, Monckton enlisted Selby and Riordan to help him design Eternity II, which in some ways is even closer in spirit to your problem, and which was designed to defeat the methods that Selby and Riordan had used to solve Eternity. A back-of-the-envelope calculation suggests that Eternity II is expected to have on the order of 1 solution.

As of this writing, no solution to Eternity II has been published by anyone. The deadline for claiming the monetary prize has long since expired, but some people continue to work on it anyway. There is a discussion forum for the puzzle; the best partial result as of this writing is an arrangement found by Joshua Blackwood that contains only 10 mistakes.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.