proposition: Lemma gdist_size_rpeg n (c1 : _ _ n) p : `d[c1, `c[p]]_rmove = size_rpeg c1 p.
proof: Proof. apply/eqP; rewrite eqn_leq [size_rpeg _ _]size_rpegE. rewrite gdist_path_le; last 2 first. - by apply: path_rpeg. - by rewrite last_rpeg. have /gpath_connect [p1 p1H] : connect rmove c1 `c[p]. by apply: move_connect_rpeg. rewrite -size_rpegE (gpath_dist p1H) /=. apply: (rpeg_min (gpath_path p1H)) => //. by apply: gpath_last p1H. Qed.
imports: mathcomp(all_ssreflect) hanoi(extra gdist ghanoi ghanoi3)