proposition: Lemma NoDup_filter : forall A (p : A -> bool) ls, NoDup ls -> NoDup (filter p ls).
proof: Proof. induction 1; simpl; eauto. destruct (p x); eauto. constructor; eauto. intro. apply filter_In in H1; tauto. Qed.
imports: Coq(FunctionalExtensionality Arith Lia) Coq(Arith.Peano_dec Arith.Compare_dec) Coq(Relations.Relation_Operators) Coq(List) Chapar(Predefs)