Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • Iris Iris
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 171
    • Issues 171
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 14
    • Merge requests 14
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Iris
  • IrisIris
  • Merge requests
  • !383

Derive WP lifting and array rules from TWP rules

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Robbert Krebbers requested to merge robbert/twp_wp into master Feb 23, 2020
  • Overview 31
  • Commits 5
  • Pipelines 0
  • Changes 6

It's silly that the proofs of the WP lifting and array rules were pretty much exactly the same for TWP and WP.

This MR improves on this situation by deriving the WP rules from the TWP rules. For this, it makes use of the following lemma:

Lemma twp_wp_step s E e P Φ :
  TCEq (to_val e) None →
  ▷ P -∗
  WP e @ s; E [{ v, P ={E}=∗ Φ v }] -∗ WP e @ s; E {{ Φ }}.

Note the premise TCEq (to_val e) None; this way non-valueness can be derived using TC search. I have also ported the WP step lemmas in the same way.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: robbert/twp_wp