1. 13 Sep, 2019 1 commit
    • Jacques-Henri Jourdan's avatar
      Reorder Requires so that we do not depend of Export bugs. · 43a1a90f
      Jacques-Henri Jourdan authored
      The general idea is to first import/export modules which are further
      than the current one, and then import/export modules which are close
      dependencies.
      
      This commit tries to use the same order of imports for every file, and
      describes the convention in ProofGuide.md. There is one exception,
      where we do not follow said convention: in program_logic/weakestpre.v,
      using that order would break printing of texan triples (??).
      43a1a90f
  2. 12 Jun, 2019 1 commit
  3. 03 Jun, 2019 1 commit
  4. 19 Mar, 2019 1 commit
  5. 05 Mar, 2019 1 commit
  6. 18 Oct, 2018 3 commits
  7. 05 Oct, 2018 3 commits
  8. 03 Oct, 2018 1 commit
  9. 01 Mar, 2018 1 commit
  10. 30 Nov, 2017 1 commit
  11. 09 Nov, 2017 3 commits
  12. 08 Nov, 2017 3 commits
  13. 30 Oct, 2017 1 commit
  14. 26 Sep, 2017 1 commit
    • Robbert Krebbers's avatar
      Fix issue #98. · e17ac4ad
      Robbert Krebbers authored
      We used to normalize the goal, and then checked whether it was of
      a certain shape. Since `uPred_valid P` normalized to `True ⊢ P`,
      there was no way of making a distinction between the two, hence
      `True ⊢ P` was treated as `uPred_valid P`.
      
      In this commit, I use type classes to check whether the goal is of
      a certain shape. Since we declared `uPred_valid` as `Typeclasses
      Opaque`, we can now make a distinction between `True ⊢ P` and
      `uPred_valid P`.
      e17ac4ad
  15. 09 Jan, 2017 1 commit
  16. 05 Jan, 2017 1 commit
  17. 03 Jan, 2017 1 commit
  18. 22 Dec, 2016 1 commit
  19. 12 Dec, 2016 1 commit
  20. 09 Dec, 2016 5 commits
  21. 22 Nov, 2016 1 commit
  22. 28 Oct, 2016 2 commits
  23. 25 Oct, 2016 2 commits
    • Robbert Krebbers's avatar
      Generalize update tactics into iMod and iModIntro for modalities. · fc30ca08
      Robbert Krebbers authored
      There are now two proof mode tactics for dealing with modalities:
      
      - `iModIntro` : introduction of a modality
      - `iMod pm_trm as (x1 ... xn) "ipat"` : eliminate a modality
      
      The behavior of these tactics can be controlled by instances of the `IntroModal`
      and `ElimModal` type class. We have declared instances for later, except 0,
      basic updates and fancy updates. The tactic `iMod` is flexible enough that it
      can also eliminate an updates around a weakest pre, and so forth.
      
      The corresponding introduction patterns of these tactics are `!>` and `>`.
      
      These tactics replace the tactics `iUpdIntro`, `iUpd` and `iTimeless`.
      
      Source of backwards incompatability: the introduction pattern `!>` is used for
      introduction of arbitrary modalities. It used to introduce laters by stripping
      of a later of each hypotheses.
      fc30ca08
    • Robbert Krebbers's avatar
      Rename rvs -> bupd (basic update), pvs -> fupd (fancy update). · 1b85d654
      Robbert Krebbers authored
      And also rename the corresponding proof mode tactics.
      1b85d654
  24. 12 Oct, 2016 3 commits