-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enlarge the trace monad rule set for RG logic #721
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Happy with that.
We probably should do that, at least if the lemma rename is not too intrusive and it doesn't take too long. It's easiest to do when the cache is still hot, but priority would be the refinement rules.
Agreed. |
6d32667
to
ee3b75c
Compare
5e9fe9e
to
b459ad3
Compare
Signed-off-by: Corey Lewis <[email protected]>
Signed-off-by: Corey Lewis <[email protected]>
Signed-off-by: Corey Lewis <[email protected]>
Signed-off-by: Corey Lewis <[email protected]>
This generally follows the structure and naming conventions of the existing rule set for Hoare logic, in
Trace_VCG.thy
andTrace_More_VCG.thy
(and the very similar ruleset and files in the nondet directory).I took the opportunity to make some changes as I went along. In particular:
validIE_R
andvalidIE_L
are abbreviations instead of definitions.It would be good to propagate the last two back to the Hoare versions, to keep things consistent and allow us to update the rest of the proofs now. The first one might not be worth it however, as it would require too many other changes to work.
Lemmas for lifting over combinators in the guarantee have been left out for now as it is unclear if they would be useful. They shouldn't be too hard to add if we come across a use case.