TAOCP 7.2.2.1 Exercise 324

A base placement is a placement of a Soma piece in the $3\times3\times3$ cube.

Section 7.2.2.1: Dancing Links

Exercise 324. ▶ [30] [30] Extend exercise 206 to three dimensions. How many base placements do each of the seven Soma pieces have?

Verified: no
Solve time: 3m14s


Solution

A base placement is a placement of a Soma piece in the $3\times3\times3$ cube. Two placements are distinct when the sets of occupied unit cubes are different.

Let an orientation $Q$ of a piece have side lengths

$$ (a_1,a_2,a_3) $$

for its bounding box. Since the containing cube has side length $3$, the number of possible translations of this orientation is

$$ (3-a_1+1)(3-a_2+1)(3-a_3+1). $$

Equivalently, if $e_i=a_i-1$ is the extent in direction $i$, then the number of translations is

$$ \prod_{i=1}^{3}(3-e_i). $$

The seven Soma pieces consist of one tri-cube and six tetracubes. We label them in the usual way:

$$ V,L,T,Z,S,A,B . $$

The coordinate descriptions below are sufficient to generate all orientations. A rotation of the cube gives one of the $24$ proper rotations, and orientations which coincide after normalization are identified.

$$ \begin{array}{c|l} \text{piece}&\text{initial coordinates}\ \hline V&(0,0,0),(1,0,0),(0,1,0)\ L&(0,0,0),(1,0,0),(2,0,0),(0,1,0)\ T&(0,0,0),(1,0,0),(2,0,0),(1,1,0)\ Z&(0,0,0),(1,0,0),(1,1,0),(2,1,0)\ S&(0,0,0),(1,0,0),(0,1,0),(0,0,1)\ A&(0,0,0),(1,0,0),(0,1,0),(1,1,1)\ B&(0,0,0),(1,0,0),(0,1,0),(0,1,1) \end{array} $$

The number of distinct orientations is obtained from the orbit-stabilizer theorem. If a piece has $s$ proper rotations leaving it unchanged, then

$$ |\mathcal O(P)|=\frac{24}{s}. $$

The stabilizer sizes are:

$$ \begin{array}{c|c|c} \text{piece}&s&|\mathcal O(P)|\ \hline V&2&12\ L&1&24\ T&2&12\ Z&2&12\ S&3&8\ A&1&24\ B&2&12 \end{array} $$

It remains to count translations for each orientation. The possible bounding boxes are obtained by rotating the coordinate sets above.

The $V$ piece

Every orientation has bounding box

$$ 1\times2\times2 . $$

Therefore each orientation has

$$ (3-1+1)(3-2+1)(3-2+1)

3\cdot2\cdot2

12 $$

translations. Hence

$$ B(V)=12\cdot12=144 . $$

The $L,T,Z$ pieces

Every orientation of each of these pieces has bounding box

$$ 1\times2\times3 . $$

The number of translations is

$$ (3-1+1)(3-2+1)(3-3+1)

3\cdot2\cdot1

6 . $$

Therefore

$$ B(L)=24\cdot6=144, $$

$$ B(T)=12\cdot6=72, $$

and

$$ B(Z)=12\cdot6=72. $$

The $S,A,B$ pieces

Every orientation of each of these pieces has bounding box

$$ 2\times2\times2 . $$

Thus each orientation has

$$ (3-2+1)^3=2^3=8 $$

translations. Consequently,

$$ B(S)=8\cdot8=64, $$

$$ B(A)=24\cdot8=192, $$

and

$$ B(B)=12\cdot8=96. $$

Collecting the results gives

$$ \begin{array}{c|c|c|c} \text{piece} &\text{orientations} &\text{translations per orientation} &\text{base placements} \ \hline V&12&12&144\ L&24&6&144\ T&12&6&72\ Z&12&6&72\ S&8&8&64\ A&24&8&192\ B&12&8&96 \end{array} $$

Therefore the seven Soma pieces have respectively

$$ \boxed{ 144,\ 144,\ 72,\ 72,\ 64,\ 192,\ 96 } $$

base placements.