fact: Definition to2a l c l1 n := match l, c with | O1 :: l2, TO2 m m0 m1 => TO2 (to1a l2 m l1 n) m0 m1 | O2 :: l2, TO2 m0 m m1 => TO2 m0 (to1a l2 m l1 n) m1 | O3 :: l2, TO2 m0 m1 m => TO2 m0 m1 (to1a l2 m l1 n) | O1 :: l2, OTO2 => TO2 (to1a l2 OTO1 l1 n) OTO1 OTO1 | O2 :: l2, OTO2 => TO2 OTO1 (to1a l2 OTO1 l1 n) OTO1 | O3 :: l2, OTO2 => TO2 OTO1 OTO1 (to1a l2 OTO1 l1 n) | _, _ => c end.
imports: PrimInt63 Cyclic63 List BasicRubik