Proof with auto with arith.
induction l...
simpl.
destruct (filter SimplyProfiled p l).
destruct (filter SimplyProfiled q l).
destruct s.
destruct s0.
simpl in *.
destruct (ex a); [destruct (p a) | destruct (q a)]; simpl in H; subst; simpl; [destruct (q a) | destruct (p a)]; destruct b; simpl; omega.
Qed.

(* Specifications: *)
Lemma counted_cmp_excl (n x: T):
result (counted_cmp n x) = false \/ result (gt _ counted_cmp n x) = false.
Lemma bind_eqq (M: Monad) (e: extMonad M) (A B: Set) (m n: M A) (f g: A -> M B): m = n -> ext_eq f g -> (m >>= f) = (n >>= g).
Hint Resolve SimplyProfiled_ext.