Welcome to the Speedsolving.com, home of the web's largest puzzle community! You are currently viewing our forum as a guest which gives you limited access to join discussions and access our other features.

To restate what DG said a bit more formally, PLL cases are considered to be identical if you can compose with U moves to get from one to the other, i.e. ∼ X \sim Y iff =U∘∘U X = \mathrm U^a\circ Y\circ \mathrm U^b for some ,∈{0,1,2,3} a, b\in\{0,1,2,3\} . Thus there should be sixteen symmetries, not just the four rotational symmetries (where you restrict it to +=0 a+b=0 ).

Good. That makes sense. After my post I solved all of my 83 cases and I noticed that many of the solutions started with U. It occurred to me that counting cubes that differ only by U turns as the same might be what they were doing. Thanks.

83 (actually 84 including the identity state) is the number of equivalence classes the group of 288 up face position permutations may be partitioned into by conjugations with the C4 rotation symmetries. Such equivalence classes are invariant under conjugation with those symmetries.

m<class>m' = <class> for all elements m of the C4 group

Form the symmetry conjugate of a class member and you get another member of the class. You don't get exactly four fold reduction because some elements are symmetric:

m * g * m' = g

e.g. the identity state which is the only member of its symmetry class.

If you consider an optimized algorithm to be the one that a human could execute the fastest, you would need a system of checking how fast execution of an algorithm would be. Then you could just try out different algorithms for the same case to see what works best.

This can be done, probably most accurately, by hand. Just time yourself with the shortest algorithms generated for each subset of turns that is fast (<RU>, <RUF>, <RUD>, <LU>...). Then just use the fastest one.

It might be possible to see if an AI could be trained to guess how fast an algorithm could be executed, but it would still probably be more accurate to do it by hand.

If you consider an optimized algorithm to be the one that a human could execute the fastest, you would need a system of checking how fast execution of an algorithm would be. Then you could just try out different algorithms for the same case to see what works best.

This can be done, probably most accurately, by hand. Just time yourself with the shortest algorithms generated for each subset of turns that is fast (<RU>, <RUF>, <RUD>, <LU>...). Then just use the fastest one.

It might be possible to see if an AI could be trained to guess how fast an algorithm could be executed, but it would still probably be more accurate to do it by hand.

2. List down all the positions of cubies that you care about and aren't fixed, be they edges, corners, (for big cubes / other puzzles) centres, whatever. (E.g. for VLS, you don't include the two pieces that form the last F2L pair even though they aren't solved. These two pieces are constant across all the different VLS cases.)

3. Write down literally every possible cubie that can be in the first position.

4. If it fits on the same sheet of paper, for each of the possibilities thus far enumerated, write down every possible cubie that can be in the second position. If not, get more paper.

5. Repeat with the third, fourth, etc. positions until you're done.

6. Now get yet another sheet of paper (or possibly many more sheets of paper) and group cases together into equivalence classes, if necessary. E.g. for PLL, you don't quite care if your N perm has aligned blocks at FR/BL, at FL/BR, or if it has no aligned blocks at all.

(Optionally, replace "paper" with any electronic version if you don't like killing trees.)

If this seems like a lot of work, you can shortcut steps 3-5 with some combinatorics knowledge. (You should quickly start seeing some patterns as you work this out; try to convince yourself of the multiplication principle. But also watch out for parity, and if relevant (e.g. RU 2-gen), other constraints.) Step 6 can be "shortcut" with group theory but it's usually not too onerous to just brute-force your way through it. You can also rearrange/split step 6 to be anywhere else in the list to make your life easier, e.g. listing ZBLL by first enumerating CLL, grouping them by AUF equivalence, then enumerating the possible edge permutations, then grouping together by equivalent cases again (for the few symmetric CLL cases).

2. List down all the positions of cubies that you care about and aren't fixed, be they edges, corners, (for big cubes / other puzzles) centres, whatever. (E.g. for VLS, you don't include the two pieces that form the last F2L pair even though they aren't solved. These two pieces are constant across all the different VLS cases.)

3. Write down literally every possible cubie that can be in the first position.

4. If it fits on the same sheet of paper, for each of the possibilities thus far enumerated, write down every possible cubie that can be in the second position. If not, get more paper.

5. Repeat with the third, fourth, etc. positions until you're done.

6. Now get yet another sheet of paper (or possibly many more sheets of paper) and group cases together into equivalence classes, if necessary. E.g. for PLL, you don't quite care if your N perm has aligned blocks at FR/BL, at FL/BR, or if it has no aligned blocks at all.

(Optionally, replace "paper" with any electronic version if you don't like killing trees.)

If this seems like a lot of work, you can shortcut steps 3-5 with some combinatorics knowledge. (You should quickly start seeing some patterns as you work this out; try to convince yourself of the multiplication principle. But also watch out for parity, and if relevant (e.g. RU 2-gen), other constraints.) Step 6 can be "shortcut" with group theory but it's usually not too onerous to just brute-force your way through it. You can also rearrange/split step 6 to be anywhere else in the list to make your life easier, e.g. listing ZBLL by first enumerating CLL, grouping them by AUF equivalence, then enumerating the possible edge permutations, then grouping together by equivalent cases again (for the few symmetric CLL cases).

If this seems like a lot of work, you can shortcut steps 3-5 with some combinatorics knowledge. (You should quickly start seeing some patterns as you work this out; try to convince yourself of the multiplication principle. But also watch out for parity, and if relevant (e.g. RU 2-gen), other constraints.) Step 6 can be "shortcut" with group theory but it's usually not too onerous to just brute-force your way through it. You can also rearrange/split step 6 to be anywhere else in the list to make your life easier, e.g. listing ZBLL by first enumerating CLL, grouping them by AUF equivalence, then enumerating the possible edge permutations, then grouping together by equivalent cases again (for the few symmetric CLL cases).