(* OK: USEFUL *)

Lemma distinct_last_darts:
forall(m:fmap)(l:list)(x x' xf xf':dart),
inv_hmap m ->
double_link_list m (cons x x' (cons xf xf' l)) ->
pre_ring0 m (cons x x' (cons xf xf' l)) ->
let (xl, xl') := last (cons xf xf' l) in
(x <> xl' /\ x' <> xl').