Commit bfd313b7 authored by Robbert Krebbers's avatar Robbert Krebbers

Move the symbolic executor to its own file, and do some renaming to be consistent with the paper.

parent 6e625cb3
......@@ -12,7 +12,8 @@ theories/c_translation/proofmode.v
theories/c_translation/translation.v
theories/vcgen/dcexpr.v
theories/vcgen/denv.v
theories/vcgen/vcgen.v
theories/vcgen/vcg.v
theories/vcgen/forward.v
theories/vcgen/proofmode.v
theories/vcgen/reification.v
theories/tests/basics.v
......
This diff is collapsed.
From iris_c.c_translation Require Export translation.
From iris_c.vcgen Require Import vcgen denv reification.
From iris_c.vcgen Require Import vcg denv reification.
From iris.proofmode Require Import environments coq_tactics.
Import env_notations.
......@@ -88,7 +88,7 @@ Section tactics.
Lemma tac_vcg E1 E2 Γp Γs_in Γs_out m c e de R Φ :
IntoDEnv [] E1 Γs_in Γs_out m
IntoDCExpr E1 E2 e de
envs_entails (Envs Γp Γs_out c) (vcg_wp_while E2 (dcexpr_size de) m de R
envs_entails (Envs Γp Γs_out c) (vcg_while E2 (dcexpr_size de) m de R
(λ E3 m dv, wand_denv_interp E3 m (Φ (dval_interp E3 dv))))
envs_entails (Envs Γp Γs_in c) (AWP e @ R {{ Φ }}).
Proof.
......@@ -99,9 +99,9 @@ Section tactics.
iDestruct (Hentails with "[$HΓs $HΓp]") as "HΓs".
{ iPureIntro; constructor; naive_solver. }
iApply (awp_wand with "[-]").
{ iApply (vcg_wp_while_correct with "[Hm] HΓs"); eauto using denv_wf_mono.
{ iApply (vcg_while_correct with "[Hm] HΓs"); eauto using denv_wf_mono.
iApply (denv_interp_mono with "Hm"); eauto. }
rewrite /vcg_wp_continuation. iIntros (v) "H".
rewrite /vcg_continuation. iIntros (v) "H".
iDestruct "H" as (E3 dv m' -> ???) "[Hm HΦ]".
by iApply (wand_denv_interp_spec with "HΦ").
Qed.
......@@ -110,7 +110,7 @@ Section tactics.
IntoDEnv E1 E2 Γs_in Γs_out m
IntoDVal E2 E3 v dv
envs_entails (Envs Γp Γs_out c) (Φ E3 m dv)
envs_entails (Envs Γp Γs_in c) (vcg_wp_continuation E1 Φ v).
envs_entails (Envs Γp Γs_in c) (vcg_continuation E1 Φ v).
Proof.
intros [HΓ ????] [-> ??]; rewrite !envs_entails_eq /= /of_envs.
iIntros (Hentails) "(Hwf & #HΓp & HΓs)".
......@@ -124,7 +124,7 @@ Section tactics.
End tactics.
(* Make sure users do not see auxiliary junk *)
Arguments vcg_wp_continuation {_ _ _ _}.
Arguments vcg_continuation {_ _ _ _}.
Ltac vcg :=
iStartProof;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment