aboutsummaryrefslogtreecommitdiffstats
path: root/common/Determinism.v
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2014-11-26 15:28:39 +0100
committerXavier Leroy <xavier.leroy@inria.fr>2014-11-26 15:28:39 +0100
commitf1db887befa816f70f64aaffa2ce4d92c4bebc55 (patch)
tree9ad9628154160b3d217c6aeda2f08d7df3c0421a /common/Determinism.v
parentb279716c76c387c6c5eec96388c0c35629858b4c (diff)
downloadcompcert-f1db887befa816f70f64aaffa2ce4d92c4bebc55.tar.gz
compcert-f1db887befa816f70f64aaffa2ce4d92c4bebc55.zip
Make small-step semantics more parametric w.r.t. the type of global environments. Use symbol environments for the part of semantics that deals with observable events.
Diffstat (limited to 'common/Determinism.v')
-rw-r--r--common/Determinism.v10
1 files changed, 5 insertions, 5 deletions
diff --git a/common/Determinism.v b/common/Determinism.v
index 26a13ab2..d0099ba9 100644
--- a/common/Determinism.v
+++ b/common/Determinism.v
@@ -105,7 +105,7 @@ Proof.
Qed.
Lemma match_possible_traces:
- forall (F V: Type) (ge: Genv.t F V) t1 t2 w0 w1 w2,
+ forall ge t1 t2 w0 w1 w2,
match_traces ge t1 t2 -> possible_trace w0 t1 w1 -> possible_trace w0 t2 w2 ->
t1 = t2 /\ w1 = w2.
Proof.
@@ -508,14 +508,14 @@ Notation "s #1" := (fst s) (at level 9, format "s '#1'") : pair_scope.
Notation "s #2" := (snd s) (at level 9, format "s '#2'") : pair_scope.
Local Open Scope pair_scope.
-Definition world_sem : semantics := @Semantics
+Definition world_sem : semantics := @Semantics_gen
(state L * world)%type
- (funtype L)
- (vartype L)
+ (genvtype L)
(fun ge s t s' => step L ge s#1 t s'#1 /\ possible_trace s#2 t s'#2)
(fun s => initial_state L s#1 /\ s#2 = initial_world)
(fun s r => final_state L s#1 r)
- (globalenv L).
+ (globalenv L)
+ (symbolenv L).
(** If the original semantics is determinate, the world-aware semantics is deterministic. *)