1. 23 Jan, 2019 1 commit
  2. 14 Jan, 2019 1 commit
  3. 11 Jan, 2019 2 commits
  4. 25 Dec, 2018 1 commit
  5. 30 May, 2018 1 commit
  6. 18 May, 2018 1 commit
  7. 04 Mar, 2018 1 commit
  8. 03 Mar, 2018 1 commit
  9. 28 Feb, 2018 1 commit
  10. 23 Feb, 2018 2 commits
  11. 19 Feb, 2018 1 commit
  12. 23 Jan, 2018 1 commit
  13. 27 Oct, 2017 3 commits
  14. 26 Oct, 2017 1 commit
  15. 04 Aug, 2017 1 commit
  16. 27 Apr, 2017 1 commit
  17. 28 Mar, 2017 1 commit
  18. 16 Mar, 2017 3 commits
  19. 14 Mar, 2017 3 commits
  20. 07 Mar, 2017 1 commit
  21. 17 Feb, 2017 1 commit
  22. 24 Jan, 2017 1 commit
  23. 23 Jan, 2017 4 commits
  24. 04 Jan, 2017 1 commit
  25. 28 Dec, 2016 1 commit
  26. 30 Nov, 2016 1 commit
  27. 27 Nov, 2016 1 commit
  28. 27 Oct, 2016 1 commit
  29. 25 Oct, 2016 1 commit
    • 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