# How to rotate algs



## Zarxrax (Mar 25, 2010)

This guide will show you how to easily add cube rotations to any algorithm. You can add them to the whole alg, in the middle of the alg, and you can even have more than one rotation.
But why would you want to add rotations to your algs? Simple. It lets you turn moves that you hate into moves that you like. For instance, lets say one of your algs contains the move "D2", and you find it really difficult to perform that D2. Well, with a simple cube rotation, we can turn that D2 into an R2! Or perhaps you found an alg that is optimized for the right hand, but you want to change it into a left-handed alg. You can do that as well!
You simply have to use the following tables to "translate" your algs.

First, a quick review of notation: 

```
F (Front) - the side facing you.
U (Up) - the side facing upwards.
R (Right) - the side facing to the right.
B (Back) - the side facing away from you.
L (Left) - the side facing to the left.
D (Down) - the side facing downwards. 

M - a move of the slice between R and L, in the same direction as an L turn.
E - a move of the slice between U and D, in the same direction as a D turn.
S - a move of the slice between F and B, in the same direction as an F turn. 

x - a rotation of the entire cube as if doing an R turn.
y - a rotation of the entire cube as if doing a U turn.
z - a rotation of the entire cube as if doing an F turn.
```

Note: If your algorithms use double layer turns, you should convert it to a cube rotation and a single layer turn, before applying the following tables. For instance, r2 should be converted into x L. 

Translation Tables:

x:

```
R -> R
L -> L
U -> B
D -> F
F -> U
B -> D
M -> M
E -> S
S -> E'
```

x':

```
R -> R
L -> L
U -> F
D -> B
F -> D
B -> U
M -> M
E -> S'
S -> E
```

x2:

```
R -> R
L -> L
U -> D
D -> U
F -> B
B -> F
M -> M
E -> E'
S -> S'
```

y:

```
R -> F
L -> B
U -> U
D -> D
F -> L
B -> R
M -> S'
E -> E
S -> M
```

y':

```
R -> B
L -> F
U -> U
D -> D
F -> R
B -> L
M -> S
E -> E
S -> M'
```

y2:

```
R -> L
L -> R
U -> U
D -> D
F -> B
B -> F
M -> M'
E -> E
S -> S'
```

z:

```
R -> D
L -> U
U -> R
D -> L
F -> F
B -> B
M -> E'
E -> M
S -> S
```

z':

```
R -> U
L -> D
U -> L
D -> R
F -> F
B -> B
M -> E
E -> M'
S -> S
```

z2:

```
R -> L
L -> R
U -> D
D -> U
F -> F
B -> B
M -> M'
E -> E'
S -> S
```


Let's look at a few examples. We'll start with a really easy one. 
Here is an algorithm for a U perm. You hold the cube with the solved side of the top layer facing you.
M2 U M' U2 M U M2
But, let's say I don't want to perform this alg with the solved side facing me. I want it facing away from me. So I insert a y2 at the beginning of the alg, and then, I use the translation table for y2 listed above, and the alg becomes:
y2 M2 U M U2 M' U M2
In this case, only 2 moves changed!

Let's try a more difficult one. Here is an alg for an A perm. You hold it with the "headlights" facing away from you.
x R' U R' D2 R U' R' D2 R2
I think that those D2 moves are difficult to perform, so why don't I try changing them to something else? Looking at the tables above, I can see that using a z' will turn D moves into R moves. So I'll add a z' to the algorithm. I like the way this algorithm begins though, so I think I'll add the z' right before the first D2.
x R' U R' z' R2 U L' U' R2 U2

Finally, let's try a complex one. Here is another U perm. You hold it with the solved side facing away from you.
F2 U' L R' F2 L' R U' F2
Just for the sake of example, I'm going to add a y' at the beginning, a z' after the 4th move, and then after the 5th move, I will insert a y and a z, to return to the original orientation.
Now to begin with, since I said I'm returning to the original orientation after the 5th move, I know I don't have to worry about changing any of the moves after that.
? ? ? ? ? L' R U' F2
But for the first part, since I will be adding 2 rotations, the easiest way would be to perform the conversion in 2 seperate passes. First, I'll add just the y'.
y' R2 U' F B' R2 y L' R U' F2
Now, I will add the z' after the 4th move.
y' R2 U' F B' z' U2 z y L' R U' F2

And that should be all there is to it!
I made these tables pretty quickly, so if you happen to find an error, let me know and I'll correct it.


----------



## dada222 (Mar 25, 2010)

Nice although I've seen this in a few places on the net before. Quite easy to figure out too, but comes handy.


----------



## Cride5 (Mar 25, 2010)

I use this tool for mirroring/inverting algs, but I've not seen anything for rotating them. Does anyone know if such a tool exists?


----------



## 4Chan (Mar 25, 2010)

I believe cube explorer 5.00 can.


----------



## Zarxrax (Mar 25, 2010)

Cride5 said:


> I use this tool for mirroring/inverting algs, but I've not seen anything for rotating them. Does anyone know if such a tool exists?



I was actually thinking of writing such a tool last night, but then I realized how easy it is to do manually, so I thought I'll just write a guide instead, then I can just reference it whenever I need it. When I considered how long it would take me to actually write a program like that, I realized its just not worth it.


----------



## Chillum (Apr 15, 2010)

I wrote one a while back using Word macros: http://www.speedsolving.com/forum/showthread.php?t=9528&highlight=algorithm+rotator

Nice thing is it can rotate a whole batch of algs at once eg. page of algs from opticubes, so you can quickly find ones that look good.


----------



## Zarxrax (Apr 15, 2010)

Wow nice, I'll have to install word again someday and check this out.


----------



## Cride5 (May 8, 2010)

Zarxrax said:


> Cride5 said:
> 
> 
> > I use this tool for mirroring/inverting algs, but I've not seen anything for rotating them. Does anyone know if such a tool exists?
> ...



I was tired of not having a simple solution for this, so I just wrote a tool for it. Get it here..
http://cube.crider.co.uk/algtrans.html


----------



## reThinking the Cube (May 10, 2010)

Cride5 said:


> I was tired of not having a simple solution for this, so I just wrote a tool for it. Get it here..
> http://cube.crider.co.uk/algtrans.html



Very nice! Not like some others, this app can handle cube rotations that are imbedded inside the algs. I also like the "clickonnewalg-2-replace" feature. Sweet.

...


----------

