(* Lemma typecheck_environ_join_switch2: forall sl Delta rho, typecheck_environ Delta rho -> typecheck_environ (join_tycon_labeled sl Delta) rho.  Lemma typecheck_environ_join_switch1: forall n sl rho Delta, typecheck_environ (update_tycon Delta (seq_of_labeled_statement (select_switch n sl))) rho -> typecheck_environ (join_tycon_labeled sl Delta) rho. *)

Lemma prop_imp_right: forall A (agA: ageable A) (P: Prop) (Q R: pred A),
(P -> (Q |-- R)) ->
Q |-- !! P --> R.