proposition: Lemma hasPx : forall s, has_spec s (has p s).
proof: Proof. elim=>[|x s IH] /=; first by apply: has_false. rewrite orbC; case: IH=>/=. - by move=>k H1; apply: has_true; rewrite inE H1 orbT. case E: (p x)=>H; last by apply: has_false; rewrite /= E H. by apply: has_true E; rewrite inE eq_refl. Qed.
imports: mathcomp(ssreflect ssrbool eqtype ssrfun seq) Eqdep ClassicalFacts