diff options
author | Bernhard Schommer <bernhardschommer@gmail.com> | 2016-03-21 08:48:20 +0100 |
---|---|---|
committer | Bernhard Schommer <bernhardschommer@gmail.com> | 2016-03-21 08:48:20 +0100 |
commit | 01e32a075023ce7b037d42d048b1904ba3d9a82b (patch) | |
tree | 2d01f3855234e6eb945b929e489232001c406592 /driver/Complements.v | |
parent | 093e0ea167fde39429bf4bd3fc693a232af0d093 (diff) | |
parent | 1fdca8371317e656cb08eaec3adb4596d6447e9b (diff) | |
download | compcert-01e32a075023ce7b037d42d048b1904ba3d9a82b.tar.gz compcert-01e32a075023ce7b037d42d048b1904ba3d9a82b.zip |
Merge branch 'master' into cleanup
Diffstat (limited to 'driver/Complements.v')
-rw-r--r-- | driver/Complements.v | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/driver/Complements.v b/driver/Complements.v index 8651f2ff..f7598758 100644 --- a/driver/Complements.v +++ b/driver/Complements.v @@ -80,17 +80,19 @@ Theorem transf_cstrategy_program_preservation: Proof. assert (WBT: forall p, well_behaved_traces (Cstrategy.semantics p)). intros. eapply ssr_well_behaved. apply Cstrategy.semantics_strongly_receptive. - intros. intuition. + intros. + assert (MATCH: match_prog p tp) by (apply transf_c_program_match; auto). + intuition auto. eapply forward_simulation_behavior_improves; eauto. - apply (fst (transf_cstrategy_program_correct _ _ H)). + apply (proj1 (cstrategy_semantic_preservation _ _ MATCH)). exploit backward_simulation_behavior_improves. - apply (snd (transf_cstrategy_program_correct _ _ H)). + apply (proj2 (cstrategy_semantic_preservation _ _ MATCH)). eauto. intros [beh1 [A B]]. exists beh1; split; auto. rewrite atomic_behaviors; auto. eapply forward_simulation_same_safe_behavior; eauto. - apply (fst (transf_cstrategy_program_correct _ _ H)). + apply (proj1 (cstrategy_semantic_preservation _ _ MATCH)). exploit backward_simulation_same_safe_behavior. - apply (snd (transf_cstrategy_program_correct _ _ H)). + apply (proj2 (cstrategy_semantic_preservation _ _ MATCH)). intros. rewrite <- atomic_behaviors in H2; eauto. eauto. intros. rewrite atomic_behaviors; auto. Qed. |