14.  Solving the Cube 1

 From this... ...to this

The method that we will develop for solving the cube isn't the quickest or simplest one.  In fact I will streamline it a bit for practical use at the end of the chapter.  Our main emphasis however, will be using group-theory concepts to devise processes that we together make  general-purpose cube-solving algorithm.

The main difficulty in solving the cube is that we are limited in the permutations of the cubelets that are readily available to us.  Each turn of a face permutes 4 corner cubelets and 4 edge cubelets.  This means that every time we put a cubelet where we want it to go we are also scrambling up at least 7 other cubelets.  The ideal process would be a transposition--swapping two cubelets.  We've learned in chapter 12 that no such process is possible on the cube.

Another problem is that it is difficult to put the final pieces into place without messing up the pieces that have already been restored. The closer you get to restoring the cube the more limited you are in processes that will help.  Some results and ideas of group theory will be of most use in this final phase of restoration.

Our algorithm will proceed in 7 steps.

1. Place the UP edge cubelets in place with proper orientation
2. Place the UP corner cubelets in place with proper orientation
3. Place the fr, rb, bl, and fl cubelets in place with proper orientation
4. Place the DOWN corner cubelets in place without regard to orientation
5. Put the DOWN corner cubelets into proper orientation.
6. Place the DOWN edge cubelets in place without regard to orientation
7. Put the DOWN edge cubelets into proper orientation
The first two steps are not too difficult.  There are many simple ways to restore the UP layer of cubelets since there is so much working space in the bottom two layers.  When restoring the UP face we can pre-position cubelets in the working space (that hasn't been restored yet) for placement into their final position.  The budding cubologist might wish to work out his own method for accomplishing steps 1 and 2 before going further.

1. Placing and Orienting the UP Edge Cubelets

fu cubelet needs to be flipped.

In the figure above the fu edge cubelet is in place but not with proper orientation; it needs to be flipped.  The process of flipping it will illustrate the method of restoring the UP edge cubelets.  In the illustration the red centered face is FRONT and the blue centered face (almost restored here) is UP.  The moves to flip the fu cubelet are F R-1 D-1R F2.  Let's look at this process.  The first three moves are designed to get the fu cubelet into the fd position with the red facelet on the FRONT face.  Then F2 brings it up to the fu position with proper orientation.

After applying F R-1 D-1R F2

Each move has a reason here.  F gets the fu cubelet away from the UP face.  R-1 brings it to the DOWN layer with u facelet point DOWN.  The R move restores the ur facelet to its original position and finally the F2 move puts the fu cubelet in place with its proper orientation.  In the process we have messud up the two Front Up corner cubelets and some of the other cubelets but we have not disturbed the positioning of any of the other UP edge cubelets.

The process for phase 1 is then:  get the cubelet onto the bottom layer with its UP facelet pointing DOWN.  Rotate the DOWN face until its non-UP facelet is in the correct face and then a double move (F2 here) brings it into position.  Before the final double move be sure to correct any other UP edge cubelets that may have been disturbed during the process.

2. Placing and Orienting the UP Corner Cubelets

Again we will be using the bottom (DOWN) level of cubelets as a working space.  The idea is to find the corner cubelet we want to place and then get it on the DOWN layer with the up facelet pointing to the side (not toward the DOWN face).  We can then place it in its position with proper orientation in a simple couple of moves.

In the illustration all the UP cubelets are in their proper position and orientation.  It remains to place the final corner cubelet which is currently in the fdr position.  A rotation of F-1 will bring the last cubelet into place but will mess up two already-placed cubelets.  The task can be done by the process DFD-1F-1.  Note that there is a clear "rationale" for every move.  F-1 by itself won't work because it messes up previously placed cubelets.  So we (D) move the cubelet to be placed out of the way, (F) bring the cubelet it will replace down to its former place, (D-1) replace the "wrong" cubelet with the right cubelet and finally (F-1) restore everything to the way it should be.  With moves such as DFD-1F-1 you should be able to restore any corner cubelet to its proper position and orientation.  There might be a little preliminary work necessary to get the cubelet in question into position on the the bottom layer with it's up side pointing outward but this should be simple enough for you to figure out on your own.

A move such as DFD-1F-1 is an example of a commutator.  Commutators are very useful in solving the cube and similar puzzles.  Notice that if a group is Abelian (has the commutative property) then a commutator aba-1b-1 would be equal to abb-1a-1 = aa-1 = e.  In an Abelian group a commutator is simply a fancy way of doing nothing.  In a non-Abelian group a commutator does something but not usually a whole lot.  For instance in the process DFD-1F-1 the move F is sandwiched between a D and a D-1 so anything not affected by the F will be not be disturbed.  Similarly the move D-1 is sandwiched between F and F-1 with the similar undoings involved.  This means that commutators often move few cubelets around leaving many others undisturbed.  This is exactly the kind of processes you are looking for in solving the cube.  You want to move remaining cubelets into place without disturbing previously placed cubelets.

In fact the best kind of process to have would be an exchange of cubelets.  However we have learned that this is impossible.  The second-best kind of process to have at hand would be a process that moved only three cubelets--a three-cycle.  Fortunately this is possible on the cube.  Soon we will prove the fundamental theorem for cubes that will help us find processes for the final, most difficult steps.

3 placing and orienting the middle layer cubelets

After you have gotten the UP face restored four middle-layer cubelets, fr, rb, bl, fl, are placed next.  In the last chapter we got a hint of a way to restore them.  The problem is to get one of the middle-layer edge cubelets into place without disturbing the UP face which has been painstakingly restored.

In our studies of subgroups of the cube we found that the process (F2R2)3 has the effect of swapping two pairs of edge cubelets.  The uf cubelets changes places with the df cubelet and the ur cubelet changes places with the dr cubelet.  Variations of this move will swap other opposite pairs of edge cubelets on other faces.  Since these processes affects only edge cubelets our task is to find a way to use this move to move the desired edge cubelet into place without disturbing the completed UP face or any other middle-layer cubelet.

Begin by noticing that (F2D2)3 swaps fl with fr and swaps dl with dr.  This has the advantage of swapping two middle-layer cubelets without distrubing the UP layer.  If two of the middle layer cubelets were in need of being swapped on opposite sides of a face this would do the trick.  However this process has the disadvantage of disturbing two middle-layer cubelets.  We will overcome this problem by forming a conjugate of this process that will involve only one middle-level edge cubelet and will still leave the UP face undisturbed.

Our strategy will be to find a process which moves the lf cubelet out of the way and replaces it with one of the edge cubelets on the DOWN face.  In the process we also want no middle level or UP face edge cubelets placed into the "hot" fl, dl or dr positions.  We also want the fr cubelet to remain in its place.  So our requirements of this process are:

• It leaves fr in place.
• It moves a DOWN face edge cubelet into the fr position
• It moves no UP face edge cubelets or middle-layer edge cubelets into the "hot" dl or dr positions.
Note that we don't care what this process does to any of the other cubelets.  This gives us a lot of leeway in constructing our adjunct process.  After a bit of experimentation you can come up with something like L-1D-1.  Now we form our conjugate.  We perform L-1D-1 followed by (F2D2)3 and finish up with (L-1D-1)-1 which is simply DL.  Thus our final process is

L-1D-1(F2D2)3DL

Try this on a solved cube and notice the effect.  It is equivalent to the permutation (dl, fr) (df, db).  This gives us a method for positioning (but not yet orienting) any of the middle-layer cubelets.  If a middle-layer cubelet is on the DOWN face we rotate the entire cube until the desired cubelet's home position is in the fr position and then rotate the DOWN face until the cubelet itself is in the dl position.  Performing the magic process will then swap the cubelet belonging in the (new) fr position with whatever cubelet is there and also swap two DOWN face cubelets.  If the cubelet we want to position is not on the DOWN face then we simple rotate the cube until the desired cubelet is in the fr position, perform the process which sends it to the DOWN face.  Then we begin anew to position it correctly.

This process doesn't guarantee that the cubelet will be in the correct orientation (flip) as well as in the correct location.  There are two ways to solve this problem.  The first is to ignore the problem and solve it with the edge-flipping algorithm that we will create later.  The other way is to create a "mirror-image" process from our process so that one of the two will always be able to orient the cubelet correctly.

Notice that in our process the down facelet of the dl cubelet becomes the front facelet of the fr cubelet.  If we watch the process while standing next to a mirror (our side toward the mirror) the looking-glass cubist will be performing

RD(F2D2)3D-1R-1

which is equivalent to the permutation (dr, lf) (df, db).  This process swaps the dr cubelet with the lf cubelet with the down facelet of the dr cubelet going to the left facelet of the lf cubelet.  If one of these two processes doesn't orient the down facelet of the cubelet to be placed then the other one will.

We will finish our cube restoration algorithm in