Commit 32dcb05e authored by MARCHE Claude's avatar MARCHE Claude

blocking_semantics3 continued

parent 0fb80773
......@@ -713,10 +713,12 @@ predicate stmt_writes (s:stmt) (w:Set.set mident) =
(eval_fmla sigma pi (wp s p)) /\
(eval_fmla sigma pi (wp s q))
lemma monotonicity:
forall s:stmt, p q:fmla.
valid_fmla (Fimplies p q)
-> valid_fmla (Fimplies (wp s p) (wp s q) )
lemma wp_reduction:
forall sigma sigma':env, pi pi':stack, s s':stmt.
......@@ -693,9 +693,6 @@ Axiom distrib_conj : forall (sigma:(map mident value)) (pi:(list (ident*
value)%type)) (s:stmt) (p:fmla) (q:fmla), (eval_fmla sigma pi (wp s (Fand p
q))) <-> ((eval_fmla sigma pi (wp s p)) /\ (eval_fmla sigma pi (wp s q))).
Axiom monotonicity : forall (s:stmt) (p:fmla) (q:fmla),
(valid_fmla (Fimplies p q)) -> (valid_fmla (Fimplies (wp s p) (wp s q))).
(* Why3 goal *)
Theorem wp_reduction : forall (sigma:(map mident value)) (sigma':(map mident
value)) (pi:(list (ident* value)%type)) (pi':(list (ident* value)%type))
......@@ -705,8 +702,11 @@ induction 1; intros q Hq.
(* case Sassign *)
simpl in Hq.
rewrite eval_msubst in Hq.
(* TODO *)
(* case Sseq *)
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment