CubeTwister 2.0alpha119

Superset ENG 3x3

Move Right Up Front Left Down Back
○○● +90° R T1R N1R U T1U N1U F T1F N1F L T1L N1L D T1D N1D B T1B N1B
○○● -90° R' N3L U' N3D F' N3B L' N3R D' N3U B' N3F
○○● +180° R2 T1R2 N1R2 U2 T1U2 N1U2 F2 T1F2 N1F2 L2 T1L2 N1L2 D2 T1D2 N1D2 B2 T1B2 N1B2
○○● -180° R2' N3L2 U2' N3D2 F2' N3B2 L2' N3R2 D2' N3U2 B2' N3F2
○●● +90° TR T2R N1-2R TU T2U N1-2U TF T2F N1-2B TL T2L N1-2L TD T2D N1-2D TB T2B N1-2B
○●● -90° TR' N2-3L TU' N2-3D TF' N2-3F TL' N2-3R TD' N2-3U TB' N2-3F
○●● +180° TR2 T2R2 N1-2R2 TU2 T2U2 N1-2U2 TF2 T2F2 N1-2F2 TL2 T2L2 N1-2L2 TD2 T2D2 N1-2D2 TB2 T2N2 N1-2B2
○●● -180° TR2' N2-3L2 TU2' N2-3D2 TF2' N2-3B2 TL2' N2-3R2 TD2' N2-3U2 TB2' N2-3F2
●●● +90° CR N1-3R CU N1-3U CF N1-3F CL N1-3L CD N1-3D CB N1-3B
●●● +180° CR2 N1-3R2 CU2 N1-3U2 CF2 N1-3F2 CL2 N1-3L2 CD2 N1-3D2 CB2 N1-3B2
○●○ +90° MR N2R MU N2U MF N2F ML N2L MD N2D MB N2B
○●○ +180° MR2 N2R2 MU2 N2U2 MF2 N2F2 ML2 N2L2 MD2 N2D2 MB2 N2B2
●○● +90° SR S1R SU S1U SF S1F SL S1L SD S1D SB S1B
●○● +180° SR2 S1R2 SU2 S1U2 SF2 S1F2 SL2 S1L2 SD2 S1D2 SB2 S1B2
 
Permutation Right Up Front Left Down Back
Faces r u f l d b
Orientation Plus: + Minus -
  Plus Plus: ++      
Cycle Begin: ( End: )
Delimiter ,
Syntax precircumfix
 
Grouping
Grouping Begin: ( End: )
 
Repetition
Syntax suffix
 
Inversion
Invertor ' -
Syntax suffix
 
Reflection
Reflector *
Syntax suffix
 
Conjugation
Conjugation Begin: < End: >
Syntax prefix
 
Commutation
Commutation Begin: [ End: ]
Delimiter ,
Syntax precircumfix
 
Rotation
Rotation Begin: < End: >'
Syntax prefix
 
Delimiter
NOP · .
 
Comment
Multi-Line Begin: /* End: */
Single-Line Begin: //

Superset ENG 3x3 is a notation for Rubik's Cubes with 3 layers. The notation is based on the English language. It supports 90° and 180° twists of the faces of the cube. A whole cube can be rotated along its face axes. Permutation and orientation changes of individual cube parts can be specified using permutation cycles.

The notation supports the following high-level constructs:
- grouping,
- repetition,
- inversion,
- reflection,
- conjugation,
- commutation, and
- rotation,
- single-line and multiple-line comments.


Single moves
===========================

Face twists: R, R', R2
----------------------------------
Clockwise 90° twists of the six faces of the cube are described by the capital letters: «R», «U», «F», «L», «D» and «B», (right, up, front, left, down, back).

Counterclockwise twists and rotations are described by appending the inversion operator «'» to a move: «R'», «U'», «F'», … .

In environments, where the the «'» character can not be used, the character «-» can be used as the inversion operator.

180° twists and rotations are described by appending the number «2» to a move: «R2», «U2», «F2», … .


Cube rotations: CR, CR', CR2
----------------------------------
Rotations of the whole cube are described by prepending the letter «C» to a face twist.

For example, «CR» rotates the whole cube in clockwise direction as seen from the right face.


Tier twists: TR
--------------------------------------
Twists which go two layers deep (tier twists) are described by prepending the letter «T» to a face twist: «TR», «TU'», «TF2».


Mid-layer twists: MR
----------------------------------------
Twists of the layer in the middle (mid-layer twists) are described by prepending the letter «M» to a face twist: «MR», «MU'», «MF2».


Slice twists: SR
----------------------------------
Twists of opposing faces (slice twists) are described by prepending the letter «S» to a face twist. For example, «SR» turns the right face and the opposing left face in clockwise direction as seen from the right face.


Constructs
===========================

Sequences of moves
----------------------------------
Sequences of moves are specified by appending moves, for example «R2L2UD'F2B2UD'».

To improve readability, whitespace can be used to separate moves: «R2 L2 U D' F2 B2 U D'».

Sequences of moves can be separated using a middle dot character «·». In environments where this character is not available, the full stop character can be used «.». The following sequences are equivalent: «R2 L2 · U D' · F2 B2 · U D'» and «R2 L2 . U D' . F2 B2 . U D'».


Grouping
----------------------------------
Sequences of moves can be grouped using brackets: «(R U F)».


Repetition
----------------------------------
Moves and groups can be repeated multiple times by appending the number of repetitions to the closing bracket: «(R U F)3».


Inversion
----------------------------------
Moves and groups can be inverted by appending the invertor operator «'» to the closing bracket: «(R U F)'».


Reflection
----------------------------------
Moves and groups can be reflected using the reflector operator «*»

Conjugation
----------------------------------
Conjugations of type A B A' are described by enclosing the conjugator A with angle brackets and prepending it to the conjugee B: «<A>B».

Commutation
----------------------------------
Commutations of type A B A' B' are described by enclosing the commutator A and the commutee B with square brackets and delimiting A and B by a comma: «[A,B]».

Rotation
----------------------------------
Rotations of type A' B A are described by enclosing the rotator A with angle brackets and appending a invertor operator. The rotator is then prepended to rotatee B: «<A>' B».


Permutation cycles
----------------------------------
A permutation of the cube is described by a sequence of parenthesized lists for each cycle of the cube parts which are permuted.

The location of a cube part is described by the faces on which its stickers can be seen. A face of the cubes is described by the lower-case letters: «r», «u», «f», «l», «d» and «b», (right, up, front, left, down, back).

e. g. A corner part having its stickers at the upper front right corner is described by the three letter sequence: «ufr».
e. g. An edge part having its stickers at the front right corner is described by the two letter sequence: «fr».
e. g. A side part having its sticker at the right face of the cube is described by the letter: «r».

Each cycle contains a list of either corner parts, edge parts or side parts which have been permuted.

The face names in a cycle are used to describe orientation changes of the parts. The first face name in a location description denotes where the first sticker goes. The second face name in a location description denotes where the second sticker goes, and so on.

e.g. «(ufl,rfu)» describes, that the first sticker on face «u» at corner location «uf» goes to face «r» at corner location «rfu», the second sticker on face «f» at corner location «ufl» goes to face «f» at «rfu», and the third sticker on «l» at «ufl» goes to «u» at «rfu».

If the cube parts change orientation after going through a single cycle, then a prefix is added to the first location description of a sequence to denote this change in orientation.

If an edge part is flipped, a «+» prefix is added. If a corner part is twisted clockwise a «+» prefix is added, and if it is twisted counterclockwise a «–» prefix is added. If a side part is twisted 90° clockwise a «+» prefix is added, if it is twisted by 180° a «++» prefix is added and if it is twisted 90° counterclockwise a «-» prefix is added.

e. g. the move R is described by the following permutation: «(urf,bru,drb,frd) (ur,br,dr,fr) (+r)»


Comments
---------
Single line comments start with two slash characters: «// this is a comment».

Multiline comments starts with a slash and a star characer and end with star and a slash character: «/* this is a comment */».

Werner Randelshofer, Walter Randelshofer 2010-03-27