Definition conseq A (s : spec A) (p : pre) (q : post A) :=
  forall i, p i -> verify s i (fun y m => q y i m).Local Notation conseq1 :=
  (fun A (s1 s2 : spec A) =>
     conseq s1 (let 'pair x _ := s2 in x)
               (let 'pair _ x := s2 in x)).

Lemma conseq_refl A (s : spec A) : conseq1 A s s.