# Does anybody know a presentation of the cube group?



## CubeRoots (Nov 3, 2015)

Hello,

I was wondering if anybody knows of a presentation of the cube group documented somewhere? 

For those of you that don't know, a _presentation_ of a group G is a way of describing the group as follows:

G=<A|R> _reads_ the group generated by elements of A, which satisfy the set of relations R. G is the _freest_ group satisfying these relations.

In the case of the cube group this would look something like G=<R, U, L, D, F | R[SUP]4[/SUP]=1, ...> or perhaps <L2 B R D' L', U F R U R' U' F' | R4=1, ... >

It's this list of relations which defines the cube group that I want.


----------



## Herbert Kociemba (Nov 3, 2015)

Dan Hoey thought about this subject several years ago. 

http://www.math.rwth-aachen.de/~Martin.Schoenert/Cube-Lovers/Dan_Hoey__Presenting_Rubik's_Cube.html
http://www.math.rwth-aachen.de/~Mar...rs/Dan_Hoey__Re__Presenting_Rubik's_Cube.html
http://www.math.rwth-aachen.de/~Mar...an_Hoey__Re__Presenting_Rubik's_Cube_(2).html


----------



## jaap (Nov 4, 2015)

Herbert Kociemba said:


> Dan Hoey thought about this subject several years ago.
> 
> http://www.math.rwth-aachen.de/~Martin.Schoenert/Cube-Lovers/Dan_Hoey__Presenting_Rubik's_Cube.html
> http://www.math.rwth-aachen.de/~Mar...rs/Dan_Hoey__Re__Presenting_Rubik's_Cube.html
> http://www.math.rwth-aachen.de/~Mar...an_Hoey__Re__Presenting_Rubik's_Cube_(2).html



Unfortunately that presentation does not use the moves as the generators, and as far as I can tell, no such presentation is known.

There is such a presentation for the 2x2x2 cube.


----------



## CubeRoots (Nov 5, 2015)

Thankyou, Herbert and jaap. I actually managed to find the stuff you linked independently after posting this, it was exactly what I needed.


----------



## stannic (Jun 14, 2017)

I know this thread is old, but did not want to create another thread for the same topic.



jaap said:


> Unfortunately that presentation does not use the moves as the generators, and as far as I can tell, no such presentation is known.



Dan Hoey wrote (link):


Dan Hoey said:


> This presentation is of course in terms of generators {v,es,er,cs,cr}, not the generators {F,B,L,R,T,D} natural to the cube. But they can be translated
> (...)
> a presentation on eleven generators {v,es,er,cs,cr,F,B,L,R,T,D}. I estimate that the added relators will be under 70 letters each, and probably less. If it is desired to completely eliminate {v,es,er,cs,cr}, that may be done by replacing each of {v,es,er,cs,cr} with processes in terms of F,B,L,R,T,D, throughout ((7,8)).



Am I reading this correctly that it is possible to translate the presentation given by Hoey into a presentation which does use the face turns as generators? Also, how could the knowledge of a finite/small presentation for the Rubik's cube group help in understanding the group?

I tried to do in GAP 4.8.6 what is described on Math.SE (link). After defining the generators according to (link), I got the following. (Note that I do not feel like actually understanding what I'm doing here. Is it correct to say that the code below found a presentation with 6 generators and 135 relations (H), but these 6 generators are not the face turns? Could someone explain what is happening here?)


Spoiler





```
gap> G := Image(IsomorphismFpGroup(cube));
<fp group on the generators [ F1, F2, F3, F4, F5, F6, F7, F8, F9, F10,
  F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, F21, F22, F23 ]>
gap> Length(RelatorsOfFpGroup(G));
282
gap> H := SimplifiedFpGroup(G);
<fp group on the generators [ F1, F2, F3, F11, F15, F16 ]>
gap> Length(RelatorsOfFpGroup(H));
135
```




I tried to use IsomorphismFpGroupByGenerators (link) instead of IsomorphismFpGroup and got the following. (Warning: this function is slow. I tried it twice and it took about 10 minutes first time and about 20 minutes second time. The manual seems to say it is randomized and can return different results each time. With SetInfoLevel(InfoFpGroup, 2) it prints more information about the progress of calculation.)


Spoiler





```
gap> SetInfoLevel(InfoFpGroup, 1);
gap> iso := IsomorphismFpGroupByGenerators(cube, [U, L, F, R, B, D]);
#I  the image group has 6 gens and 455 rels of total length 748208
[ (1,3,8,6)(2,5,7,4)(9,33,25,17)(10,34,26,18)(11,35,27,19), (1,17,41,40)(4,20,44,37)(6,22,46,35)(9,11,16,14)(10,13,
    15,12), (6,25,43,16)(7,28,42,13)(8,30,41,11)(17,19,24,22)(18,21,23,20), (3,38,43,19)(5,36,45,21)(8,33,48,24)(25,
    27,32,30)(26,29,31,28), (1,14,48,27)(2,12,47,29)(3,9,46,32)(33,35,40,38)(34,37,39,36),
  (14,22,30,38)(15,23,31,39)(16,24,32,40)(41,43,48,46)(42,45,47,44) ] -> [ F1, F2, F3, F4, F5, F6 ]
gap> G1 := Image(iso);
<fp group of size 43252003274489856000 on the generators [ F1, F2, F3, F4, F5, F6 ]>
gap> Length(RelatorsOfFpGroup(G1));
455
```


----------

