diff --git a/Isabelle/Chi_Calculus/Communication.thy b/Isabelle/Chi_Calculus/Communication.thy index ae52f2c..e3c27ed 100644 --- a/Isabelle/Chi_Calculus/Communication.thy +++ b/Isabelle/Chi_Calculus/Communication.thy @@ -15,30 +15,51 @@ translations "a \\<^sup>\ x. p" \ "CONST multi_receive a (\x. p)" (* FIXME: - We should base the following on \natural_transition_system\, which would have to be extended with - support for simulation up to context to be able to prove the compatibility laws for \\\<^sup>\\. + We should base the proofs of the compatibility laws on \natural_transition_system\, which would + have to be extended with support for simulation up to context for that. *) + +lemma basic_multi_receive_preservation: + assumes "\x. P x \\<^sub>\ Q x" + shows "a \\<^sup>\ x. P x \\<^sub>\ a \\<^sup>\ x. Q x" + sorry + +lemma basic_weak_multi_receive_preservation: + assumes "\x. P x \\<^sub>\ Q x" + shows "a \\<^sup>\ x. P x \\<^sub>\ a \\<^sup>\ x. Q x" + sorry + +lemma proper_multi_receive_preservation: + assumes "\x. P x \\<^sub>\ Q x" + shows "a \\<^sup>\ x. P x \\<^sub>\ a \\<^sup>\ x. Q x" + sorry + +lemma proper_weak_multi_receive_preservation: + assumes "\x. P x \\<^sub>\ Q x" + shows "a \\<^sup>\ x. P x \\<^sub>\ a \\<^sup>\ x. Q x" + sorry + context begin private lift_definition basic_multi_receive :: "[chan, val \ basic_behavior] \ basic_behavior" is multi_receive - sorry + using basic_multi_receive_preservation . private lift_definition basic_weak_multi_receive :: "[chan, val \ basic_weak_behavior] \ basic_weak_behavior" is multi_receive - sorry + using basic_weak_multi_receive_preservation . private lift_definition proper_multi_receive :: "[chan, val \ proper_behavior] \ proper_behavior" is multi_receive - sorry + using proper_multi_receive_preservation . private lift_definition proper_weak_multi_receive :: "[chan, val \ proper_weak_behavior] \ proper_weak_behavior" is multi_receive - sorry + using proper_weak_multi_receive_preservation . lemmas [equivalence_transfer] = basic_multi_receive.abs_eq