14
$\begingroup$

I found myself wondering whether the Rubik's Cube group (of order $2^{27} \cdot 3^{14} \cdot 5^3 \cdot 7^2 \cdot 11$) is normal as a subgroup of the slightly larger group where assembly/disassembly of the cube is allowed (of order $2^{29} \cdot 3^{15} \cdot 5^3 \cdot 7^2 \cdot 11 = 12! \cdot 8! \cdot 2^{12} \cdot 3^8$).

Most of the parity restrictions are easy enough to cast as kernels of group homomorphisms: the restriction on cubie placement can be interpreted as taking a group homomorphism from the larger group to $S_{20}$, and then composing with the sign homomorphism to $\{ \pm 1 \}$, and taking the kernel. Similarly, the edge orientation restriction can be interpreted as taking a group homomorphism from the larger group to $S_{24}$ (taking the corresponding permutation of edge stickers), and then again composing with the sign homomorphism to $\{ \pm 1 \}$, and taking the kernel.

What's left is the restriction on corner orientation. I have seen descriptions of corresponding functions from the larger group to $\mathbb{Z} / 3 \mathbb{Z}$; what is not clear to me is whether any of these functions gives a homomorphism of groups. (And in trying to apply the definition of normality directly, I have a hard time working with disassembling/reassembling the cube, applying some sequence of face rotations, and then applying the inverse of the original disassembly/reassembly.)

$\endgroup$
4
  • $\begingroup$ We can go two steps further and consider a) the group of the 6 x 9 = 54 removable stickers, and b) the group of oriented removable stickers (mark each sticker to identify one out of four orientations) (54! x 4^54). $\endgroup$ Commented May 11, 2023 at 15:40
  • $\begingroup$ @Dr.WolfgangHintze So you mean a situation where each sticker is distinguishable (instead of having six sets of nine indistinguishable stickers which is the usual case)? Even in cubes with e.g. oriented pictures of fruit on each side, since valid moves keep all the stickers on a cubie together and in the same relative orientation, that larger group isn't as much of interest (to me at least) as a product of the disassembly/reassembly scramble group with $(\mathbb{Z}/4\mathbb{Z})^6$ for center sticker rotations. $\endgroup$ Commented May 11, 2023 at 16:15
  • $\begingroup$ My recollection is that in that situation, the index of the larger Rubik's Cube group in the larger scramble group is 24 -- there is one additional restriction from the fact that the parity of total center sticker rotations equals parity of the edge cubie permutation (which still also equals parity of the corner cubie permutation of course). $\endgroup$ Commented May 11, 2023 at 16:17
  • $\begingroup$ You are right, the groups I proposed are trivial. Fun comes up only when we impose restrictions (which holds fairly generally ;-). You might be interested that I have collected some knowledge on Rubik's cube in a book back in 1982: amazon.de/ungarische-Zauberw%C3%BCrfel-Wolfgang-Hintze/dp/… $\endgroup$ Commented May 11, 2023 at 17:58

2 Answers 2

7
$\begingroup$

Let $G$ be the usual Rubik's cube group, and $G_0$ be the full disassembly group. Yes, $G$ is a normal subgroup of $G_0$.

It is clear that $G_0$ breaks up into a direct product $G_0^{c} \times G_0^{e}$ ($c$ for corners, $e$ for edges). $G_0^c$ are the permutations that only move corner pieces, and $G_0^e$ are the permutations that only move edge pieces.

Now $G_0^c$ has a normal subgroup $N^c$ which fixes the position, but not necessarily the orientation, of each corner piece. It is clear that $N^c \cong (\mathbb{Z}/3\mathbb{Z})^8$. I claim that $N^c$ has a complement $K^c$ in $G_0^c$ isomorphic to $S_8$. To see this, fix one reference sticker on each corner piece, for example, all the U and D stickers on corner pieces. There are 8 reference stickers, one per corner. Consider the subgroup $K^c$ of elements of $G_0^c$ which take reference stickers to reference stickers. If all reference stickers are fixed, then all remaining corner stickers are fixed too. Therefore $K^c \cong S_8$. We conclude that $G_0^c \cong N^c \rtimes K^c$ (semidirect product).

In the same way, $G_0^e \cong N^e \rtimes K^e$.

Now $G$ can be described as the intersection of these three normal subgroups of $G_0$:

(1) Corner condition. Consider the sequence of maps $G_0 \to G_0^c \to N^c \cong (\mathbb{Z}/3\mathbb{Z})^{8} \to \mathbb{Z}/3\mathbb{Z}$ (the first 2 maps are projections and the last one is the sum of the 8 components). Now we have to be careful. The second map $G_0^c \to N^c$ is not a homomorphism. Instead it satisfies a cocycle equation $\phi(gh) = \phi(g) + g\phi(h)g^{-1}$ (it's possible that $g$ and $g^{-1}$ need to be switched here, depending on your conventions). However, when you sum both sides of this cocycle equation over the 8 components, the twist in the last term cancels out and so the combined map is a homomorphism. (This last part is explained in full detail here, parts II and III, without saying the word "cocycle".) Its kernel gives the elements of $G_0$ that satisfies the "corner twist" condition.

(2) Edge condition. In a similar way, you get a normal subgroup of $G_0$ consisting of all elements satisfying the "edge twist" condition.

(3) Parity condition. We project $G_0 \to K^c \times K^e \cong S_8 \times S_{12}$ (which is a homomorphism) and take those elements of $G_0$ whose images are (odd, odd) or (even, even) in $S_8 \times S_{12}$.

Since $G$ is the intersection of these 3 normal subgroups of $G_0$, then $G$ is a normal subgroup of $G_0$.

$\endgroup$
7
  • 1
    $\begingroup$ This seems to check out (+1). Indeed, for example the corner group in $G_0$ is the semidirect product $\Bbb{Z}_3\rtimes S_8$, or possibly more compactly, the wreath product $C_3\wr S_8$. The permutation action of $S_8$ on $\Bbb{Z}_3^8$ maps elements of the zero sum subspace $$V=\{(x_1,\ldots,x_8)\in\Bbb{Z}_3^8\mid \sum_ix_i=0\}$$ to other elements of $V$ (a fact well known to students of representation theory). It follows that $V\rtimes S_8\unlhd \Bbb{Z}_3^8\rtimes S_8$. This might be used as a substitute of the argument based on cocycles, but it is not clear whether it is easier to follow. $\endgroup$ Commented May 9, 2023 at 4:11
  • $\begingroup$ (cont'd) The point is that $V\rtimes S_8$ is exactly what can be achieved with "legal" moves. Much the same thing happens with edges, we have the zero sum subspace subgroup inside $C_2\wr S_{12}$. $\endgroup$ Commented May 9, 2023 at 4:12
  • $\begingroup$ Should read $\Bbb{Z}_3^8\rtimes S_8$ in the first comment. The exponent was left out because I was already thinking in terms of the wreath product. Sorry about any possible confusion. $\endgroup$ Commented May 9, 2023 at 4:32
  • $\begingroup$ In the equation $\phi(gh) = \phi(g) + g \phi(h) g^{-1}$, I suppose you're implicitly using some left and right action of $G_0$ on $(\mathbb{Z} / 3\mathbb{Z})^8$? $\endgroup$ Commented May 9, 2023 at 16:16
  • $\begingroup$ The argument I eventually came up with for the composition $G_0^c \to \mathbb{Z}/3\mathbb{Z}$ being a homomorphism was: it suffices to check $\phi(gh) = \phi(g) \phi(h)$ for $g$ in some generating set and $h$ general. The generating set I would use would be: transpositions of two corners preserving reference stickers; and one rotation of a corner. $\endgroup$ Commented May 9, 2023 at 16:21
2
$\begingroup$

I was attracted by this question, motivated by a quick possibility to implement the groups in question in the one or the other computer algebra system, and check the wanted property, together with some other bonus information. At the end, i decided to submit, including a small piece of job which addresses the question. To have an answer, a proof is on the first place, i typed the one that comes into mind when having the cube in the hand.


Let $R$ be the Rubik group, and $S$ the "scramble" group. To fix ideas, we let both groups act on the set of "pieces" of the $3\times3\times3$ Rubik cube. Each piece comes here with its place, and its orientation. Below we use the faithfulness of this action, a "move" in the abstract group $S$ is the identity, iff it is acting trivially on the pieces. Considered now the pieces in a "solved" / unscrambled / clean position. Corners will be denoted by $c,d,\dots$ with possible further decorations. For edges we use similarly $e,f,\dots$ - and let us fix some among them.

  • $c_*, d_*$ are the corners in the positions top-front-left, and top-front-right.
  • $e_*$, $f_*$ are the edge top-front between $c_*$ and $d_*$, and its opposite on the top face.

Scrambling is generated by the following types of "moves" ("move" is shorter than formula, or permutation...):

  • $(E)$ The move $t(e)$, exchange the faces of the edge $e$, its order is two. We use the notation $e'$ for the edge $e$ with opposite orientation, i.e. $e'=t(e)\ (e)$.
  • $(EE)$ The move $t(e,f)=t(f,e)$, switch over the edges $e, f$, its order is two.
  • $(C)$ The move $s(c)$, change the three faces/stickers of the corner $c$ using an even permutation, to be specific, $s(c)$ keeps the orientation in space. (We are not allowed to keep one sticker, and unstick the other two, exchange them, then glue them back on "wrong places".) It has order three. We denote by $c'$ the corner $c$ with orientation changed by $s(c)$, i.e. $c'=s(c)\ (c)$. So all orientations of $c$ are $c,c',c''$.
  • $(CC)$ The move $t(c,d)$, exchange the corners $c,d$, it has order two.

(Notation: Here $E$ stays for a move affecting one edge, while $EE$ scrambles two edges. Similarly, $C$, $CC$ involve one, respectively two corners.)


To be precise, one can introduce numbers like in

sage: rubik = CubeGroup()
sage: rubik.display2d('')
             +--------------+
             |  1    2    3 |
             |  4   top   5 |
             |  6    7    8 |
+------------+--------------+-------------+------------+
|  9  10  11 | 17   18   19 | 25   26  27 | 33  34  35 |
| 12 left 13 | 20  front 21 | 28 right 29 | 36 rear 37 |
| 14  15  16 | 22   23   24 | 30   31  32 | 38  39  40 |
+------------+--------------+-------------+------------+
             | 41   42   43 |
             | 44 bottom 45 |
             | 46   47   48 |
             +--------------+

and define $c^*$ to be the triple $(6,11,17)$, $e^*$ the edge $(7,18)$, and let $S$ act (separated)

  • on the set of possible corner triples like $c=(6,11,17)$, $c'=(11,17,6)$, $c''=(17,6,11)$, and so on,
  • and on the set of the possible edges doubles $e=(7,18)$, $e'=(18,7)$, and so on.

But the "common sense" should be enough to keep trace on the movements below. In particular, for a scramble move $s$, we can write expressions like $s(1), s(2), s(3), \dots, s(48)$, like $s(e)=s(\ (7,18)\ )$, like $s(c)=s(\ (6,11,17)\ )$, and so on.


After collecting some experience with (i.e. formulas for) the cube in real life, one knows that each randomly scrambled configuration can be brought to an "almost solved" configuration, all what is needed to do now to get the clean position is to use none, one, or more of the following "easy scramble" moves involving only the singled out pieces $c_*, d_*, e_*, f_*$: $$ s(c_*)\ ,\ t(c_*,d_*)\ ,\ t(e_*)\ ,\ t(e_*, f_*)\ . $$ In fact, we can eliminate from the list one of $(FF)$, $(CC)$, because there is a regular $R$-move connecting $(FF)$, $(CC)$, and possibly some $(F)$ and $(C)$ later adjustments. We eliminate $t(e_*, f_*)$ below. So we expect an index $S:R$ to be $12$ (or a smaller divisor - but it is twelve).



We address now the given question: Is $R$ normal in $S$?

Yes. It is enough to show that $srs^{-1}$ is in $R$ for all $r\in R$, and all $s$ among the above easy scramble moves (as coset representatives). We deal with the types $E$, $EE$, and $C$. (A $CC$ move is up to an $R$-move generated by these types.)

Let us fix some "formula" $r\in R$.

  • $(E)$ What happens if we apply $t(e_*)\cdot r\cdot t(e_*)$?

    The movement $r$ brings the edge $e_*$ into some other edge position $f$, $r(e_*)=f$, so in the same time $r(e'_*)=f'$. And other edge $e\ne e_*, e'_*$ is invariated, $r(e)=e$. So the action on edges of $rt(e_*)$ is the same as the one of $t(f)r$: $$ \begin{aligned} rt(e_*)\ (e_*) &= r(e'_*)=f'= t(f)\ (f)=t(f)r\ (e_*)\ ,\\ rt(e_*)\ (e'_*) &= r(e_*)=f= t(f)\ (f')=t(f)r\ (e'_*)\ ,\\ rt(e_*)\ (e) &= r(e)=t(f)r\ (e)\ ,\qquad\text{ for all other $e$, $e\ne e_*,e'_*$, since $r(e)\ne f,f'$.} \end{aligned} $$ We obtain (corners are invariated by $t(e_*)$): $$ t(e_*)\cdot r\cdot t(e_*) = t(e_*)\cdot t(f)\cdot r = \underbrace{t(e_*)\cdot t(r(e_*))}_{\in R}\cdot r\in R\ . $$

  • $(C)$ What happens if we apply $s(c_*)^2\cdot r\cdot s(c_*)$? This is similar to $(E)$.

    The movement $r$ brings the corner $c$ into some other corner position $d$, $r(c_*)=d$, so in the same time (because we have the same space orientation before and after $r$) $r(c'_*)=d'$, $r(c''_*)=d''$, . And any other corner $c\ne c_*, c'_*, c''_*$ is invariated, $r(c)=c$. So the action on corners of $rs(c_*)$ is the same as the one of $s(d)r$: $$ \begin{aligned} rs(c_*)\ (c_*) &= r(c'_* ) = d' = s(d)\ (d) = s(d)r\ (c_* )\ ,\\ rs(c_*)\ (c'_*) &= r(c''_*) = d'' = s(d)\ (d') = s(d)r\ (c'_*)\ ,\\ rs(c_*)\ (c''_*) &= r(c_* ) = d = s(d)\ (d'') = s(d)r\ (c''_*)\ ,\\ rs(c_*)\ (c) &= r(c) = s(d)r\ (c)\ ,\qquad\text{ for all other $c$, $c\ne c_*,c'_*,c''_*$, since $r(c)\ne d,d',d''$.} \end{aligned} $$ We obtain (edges are invariated by $s(c_*)$): $$ s(c_*)^2\cdot r\cdot s(c_*) = s(c_*)^2\cdot s(d)\cdot r = \underbrace{s(c_*)^2\cdot s(r(c_*))}_{\in R}\cdot r\in R\ . $$

  • $(EE)$ What happens if we apply $t(e_*,f_*)\cdot r\cdot t(e_*,f_*)$? This is also similar to $(E)$, but in a different manner.

    The movement $r$ brings the edges $e_*,f_*$ into some other edge positions $g,h$, $r(e_*)=g$, $r(e_*)=g$, so in the same time $r(e'_*)=g'$, $r(f'_*)=h'$. And other edge $e\ne e_*, e'_*,f_*,f'_*$ is invariated, $r(e)=e$. So the action on edges of $rt(e_*,f_*)$ is the same as the one of $t(g,h)r$: $$ \begin{aligned} rt(e_*,f_*)\ (e_* ) &= r(f_* ) = h = t(g,h)\ (g ) = t(g, h)r\ (e_*)\ ,\\ rt(e_*,f_*)\ (e'_*) &= r(f'_*) = h' = t(g,h)\ (g') = t(g, h)r\ (e'_*)\ ,\\ % rt(e_*,f_*)\ (f_* ) &= r(e_* ) = g = t(g,h)\ (h ) = t(g, h)r\ (f_*)\ ,\\ rt(e_*,f_*)\ (f'_*) &= r(d'_*) = g' = t(g,h)\ (h') = t(g, h)r\ (f'_*)\ ,\\ % rt(e_*,f_*)\ (e) &= r(e) = e = t(g,h)\ (e) = t(g,h)r\ (e)\ ,\\ &\qquad\qquad\qquad\text{ for all other $e$, $e\ne e_*,e'_*f_*,f'_*$, since $r(e)\ne g,h,g',h'$.} \end{aligned} $$ We obtain (corners are invariated by $t(e_*,f_*)$): $$ t(e_*,f_*)\cdot r\cdot t(e_*,f_*) = t(e_*,f_*)\cdot t(g,h)\cdot r = \underbrace{t(e_*,f_*)\cdot t(r(e_*),r(f_*))}_{\in R}\cdot r\in R\ . $$

The elements with an underbrace-in-$R$-mark are known to be in $R$ by folklore formulas, certainly among those applied at the first time Rubik cube success.

$\square$



Computer check: Here is a small piece of code checking the normality in sage, by using the existing CubeGroup() functionality. In fact only the generators of $R$. To define the bigger "scramble" group $S$, we declare the corners and edges, then the generators of $S$ based on them.

corners = [
    ( 6, 11, 17), ( 8, 19, 25), (24, 43, 30), (16, 41, 22), # front
    ( 1, 35,  9), ( 3, 27, 33), (32, 48, 38), (14, 40, 46), # rear
] 
edges = [
    ( 7, 18), (21, 28), (23, 42), (13, 20), # front
    ( 4, 10), ( 5, 26), (31, 45), (15, 44), # mid
    ( 2, 34), (29, 36), (39, 47), (12, 37), # rear
]

cgens = (
    [ [c] for c in corners ]    # change orientation of corner c
    + 
    [ [(c1, d1), (c2, d2), (c3, d3)]    # exchange corners c, d 
      for (c1, c2, c3) in corners
      for (d1, d2, d3) in corners if c1 < d1 ]
)
egens = (
    [ [e] for e in edges ]    # change orientation of edge e
    +
    [ [(e1, f1), (e2, f2)]    # exchange edges e and f
      for (e1, e2) in edges
      for (f1, f2) in edges if e1 < f1] 
)

rubik = CubeGroup()

Sc = PermutationGroup(cgens)
Se = PermutationGroup(egens)
S  = PermutationGroup(cgens+egens)

R = S.subgroup(rubik.gens()) 

And we can ask now for the normality of the Rubik group $R$ inside the scramble group $S$, and some further bonus informations:

sage: R.is_normal(S)
True

This is the computer aided answer. Let us check the index of $R$ in $S$, it should be twelve, this is a hint that the $(E)$, $(EE)$, $(C)$, and $(CC)$ types are not independent. (And the link gives a formula inside $R$.)

sage: S.order().factor()
2^29 * 3^15 * 5^3 * 7^2 * 11

sage: Se.order().factor()
2^22 * 3^5 * 5^2 * 7 * 11
sage: Sc.order().factor()
2^7 * 3^10 * 5 * 7

sage: R.order().factor()
2^27 * 3^14 * 5^3 * 7^2 * 11

sage: (S.order() / R.order()).factor()
2^2 * 3

It may be interesting to note the following information on the commutators:

sage: S.commutator().order().factor()
2^26 * 3^14 * 5^3 * 7^2 * 11
sage: R.commutator().order().factor()
2^26 * 3^14 * 5^3 * 7^2 * 11

So regarding commutators, $R$ and $S$ have the same level of complexity.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .