Proof with auto.
unfold flt.
intros.
intro.
destruct (proj1_conj (filter_In _ _ _) H). clear H.
simpl in H0.
simpl in H2.
destruct (Ecmp ee (subscript k) (subscript (vec.nth v pi))); destruct dr; auto; simpl in H2; try discriminate...
Qed.

(* Specifications: *)
Lemma ndi_flt: forall x0 cr, NoDup (flt x0 cr).
Hint Immediate ndi_flt.
Lemma partition_0: nb_val (vec.nth v pi) <> i -> nb_val (vec.nth v pi) <> j ->
U.ijcount i j (map (fun i0: Index ee ol => U.unordered_nat_pair i0 (vec.nth v pi)) (vec.remove v pi)) = 0%nat.