(** * No double elements modulo p. *)

Definition nodoubles (p : nat) (l : Zlist) : Prop :=
  forall x : Z,
  inlist Z x l -> forall y : Z, inlist Z y (zdrop x l) -> ~ Mod x y p.

Lemma nodoubles_drop : forall (p : nat) (l : Zlist) (x : Z), nodoubles p l -> nodoubles p (zdrop x l).