Definition all_assertions_computable  :=
forall (Espec: OracleKind) psi tx vx (Q: assert),
exists k,  assert_safe Espec psi tx vx k = Q.
(* This is not generally true, but could be made true by adding an "assert" operator to the programming language *)

Lemma semax_extensionality1 {CS: compspecs} {Espec: OracleKind}:
forall Delta Delta' (P P': assert) c (R R': ret_assert) ,
tycontext_sub Delta Delta' ->
((ALL ek: exitkind, ALL  vl : option val, ALL rho: environ,
(proj_ret_assert R ek vl rho >=> proj_ret_assert R' ek vl rho))
&& (ALL rho:environ, P' rho >=> P rho)  && (semax' Espec Delta P c R) |-- semax' Espec Delta' P' c R').