(** Below, a little tactic to decompose a pair in hypothesis [H]
    by giving the name [n] to the first component. 
 *)
Ltac dec2 n H := case H; clear H; intros n H.

(* Specifications: *)
Lemma synt_wp_conj: forall (p: ImpProg) (post1 post2: Pred) e, (synt_wp p post1 e) -> (synt_wp p post2 e) -> (synt_wp p (fun e => post1 e /\ post2 e) e).