Module Type PRACTICAL_CLIGHT_SEPARATION_HOARE_LOGIC.
Declare Module CSHL_MinimumLogic: MINIMUM_CLIGHT_SEPARATION_HOARE_LOGIC.
(*MOVED TO MINIMUM Axiom semax_Delta_subsumption: forall {CS: compspecs} {Espec: OracleKind}, forall Delta Delta' P c R, tycontext_sub Delta Delta' -> @semax CS Espec Delta P c R -> @semax CS Espec Delta' P c R.*)

Axiom semax_if_seq:
forall {CS: compspecs} {Espec: OracleKind} Delta P e c1 c2 c Q,
semax Delta P (Sifthenelse e (Ssequence c1 c) (Ssequence c2 c)) Q ->
semax Delta P (Ssequence (Sifthenelse e c1 c2) c) Q.