1. 07 Dec, 2017 1 commit
  2. 06 Dec, 2017 1 commit
  3. 27 Nov, 2017 2 commits
  4. 15 Nov, 2017 1 commit
  5. 11 Nov, 2017 2 commits
  6. 28 Oct, 2017 1 commit
  7. 27 Oct, 2017 1 commit
  8. 26 Oct, 2017 2 commits
  9. 25 Oct, 2017 3 commits
  10. 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
  11. 17 Sep, 2017 1 commit
  12. 07 Aug, 2017 1 commit
  13. 06 Aug, 2017 1 commit
  14. 13 Jun, 2017 3 commits
  15. 09 Mar, 2017 1 commit
  16. 09 Feb, 2017 1 commit
  17. 27 Jan, 2017 1 commit
  18. 11 Jan, 2017 1 commit
  19. 05 Jan, 2017 1 commit
  20. 03 Jan, 2017 1 commit
  21. 13 Dec, 2016 1 commit
    • Robbert Krebbers's avatar
      Use different module structuring of uPred. · 766dbcd2
      Robbert Krebbers authored
      This fixes the following issue by JH Jourdan:
      
        The fact of including uPred_[...] in the module uPred (in base_logic.v),
        implies that typeclasses instances are declared twice. Once in module
        uPred and once in module uPred_[...]. This has the unfortunate
        consequence that it has to backtrack to both instances each time the
        first one fails, making failure of type class search for e.g.
        PersistentP potentially exponential.
      
        Goal ((□ ∀ (x1 x2 x3 x4 x5: nat), True -∗ True) -∗ True : iProp Σ).
          Time iIntros "#H".
          Undo.
          Remove Hints uPred_derived.forall_persistent : typeclass_instances.
          Time iIntros "#H".
      
      Thanks to Jason Gross @ Coq club for suggesting this fix.
      766dbcd2
  22. 09 Dec, 2016 1 commit
  23. 05 Dec, 2016 3 commits
  24. 02 Dec, 2016 1 commit
  25. 25 Nov, 2016 1 commit
  26. 24 Nov, 2016 1 commit
  27. 22 Nov, 2016 3 commits
  28. 03 Nov, 2016 1 commit
    • Robbert Krebbers's avatar
      Use symbol ∗ for separating conjunction. · cc31476d
      Robbert Krebbers authored
      The old choice for ★ was a arbitrary: the precedence of the ASCII asterisk *
      was fixed at a wrong level in Coq, so we had to pick another symbol. The ★ was
      a random choice from a unicode chart.
      
      The new symbol ∗ (as proposed by David Swasey) corresponds better to
      conventional practise and matches the symbol we use on paper.
      cc31476d
  29. 27 Oct, 2016 1 commit