(** * The simulation diagram *)

(* Specifications: *)
Theorem step_simulation:
forall S1 t S2, step ge S1 t S2 ->
forall S1', match_states S1 S1' -> sound_state prog S1 ->
exists S2', step tge S1' t S2' /\ match_states S2 S2'.
Lemma transf_initial_states:
forall st1, initial_state prog st1 ->
exists st2, initial_state tprog st2 /\ match_states st1 st2.
Lemma transf_final_states:
forall st1 st2 r,
match_states st1 st2 -> final_state st1 r -> final_state st2 r.