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.*)
(**************** END OF stuff from semax_rules ***********)

Axiom semax_extract_prop:
forall {CS: compspecs} {Espec: OracleKind},
forall Delta (PP: Prop) P c Q,
(PP -> @semax CS Espec Delta P c Q) ->
@semax CS Espec Delta (!!PP && P) c Q.