fact: Definition to4a l c l1 n := match l, c with | O1 :: l2, TO4 m m0 m1 => TO4 (to3a l2 m l1 n) m0 m1 | O2 :: l2, TO4 m0 m m1 => TO4 m0 (to3a l2 m l1 n) m1 | O3 :: l2, TO4 m0 m1 m => TO4 m0 m1 (to3a l2 m l1 n) | O1 :: l2, OTO4 => TO4 (to3a l2 OTO3 l1 n) OTO3 OTO3 | O2 :: l2, OTO4 => TO4 OTO3 (to3a l2 OTO3 l1 n) OTO3 | O3 :: l2, OTO4 => TO4 OTO3 OTO3 (to3a l2 OTO3 l1 n) | _, _ => c end.
imports: PrimInt63 Cyclic63 List BasicRubik