Open lgarron opened 6 years ago
There are other forms of "simplification", e.g. distributing primes or coalescing over groups:
I would definitely like to define something for coalescing; not sure if the others need standards too.
SiGN Canonicalization (#8) can already handle things like removing groups and distributing primes, albeit at a coarser granularity. Maybe it would be sufficiently useful to give names to all the production rules behind the canonicalization algorithm.
Also note: move coalescing may not preserve the ability to execute an alg on a physical puzzle that doesn't allow undoing moves, like the Latch Cube.
alg.cubing.net currently does this, but it might be nice to define certain simplifications. The most useful one:
repeated-unit
s moves with the samerepeatable
by adding the repetition amounts. Drop them if the amount becomes 0.repeated-unit
s with the samerepeatable
.For example: F R U U2' U R2 → F R R2 → F R3