fact: Definition move {n} : rel (configuration n) := [rel c1 c2 | [exists d1 : disk n, [&& r ((c1 : configuration n) d1) (c2 d1), [forall d2, (d1 != d2) ==> (c1 d2 == c2 d2)], on_top d1 c1 & on_top d1 c2]]].
imports: mathcomp(all_ssreflect finmap) hanoi(extra gdist)