1. 05 Mar, 2019 1 commit
  2. 24 Jan, 2019 1 commit
  3. 10 Dec, 2018 1 commit
  4. 29 Nov, 2017 1 commit
  5. 14 Nov, 2017 1 commit
  6. 31 Oct, 2017 1 commit
  7. 30 Oct, 2017 1 commit
  8. 25 Oct, 2017 4 commits
  9. 17 Sep, 2017 1 commit
  10. 17 Aug, 2017 2 commits
  11. 08 Jun, 2017 2 commits
  12. 07 Apr, 2017 1 commit
  13. 24 Mar, 2017 1 commit
    • Robbert Krebbers's avatar
      Generic big operators that are no longer tied to CMRAs. · 6fbff46e
      Robbert Krebbers authored
      Instead, I have introduced a type class `Monoid` that is used by the big operators:
      
          Class Monoid {M : ofeT} (o : M → M → M) := {
            monoid_unit : M;
            monoid_ne : NonExpansive2 o;
            monoid_assoc : Assoc (≡) o;
            monoid_comm : Comm (≡) o;
            monoid_left_id : LeftId (≡) monoid_unit o;
            monoid_right_id : RightId (≡) monoid_unit o;
          }.
      
      Note that the operation is an argument because we want to have multiple monoids over
      the same type (for example, on `uPred`s we have monoids for `∗`, `∧`, and `∨`). However,
      we do bundle the unit because:
      
      - If we would not, the unit would appear explicitly in an implicit argument of the
        big operators, which confuses rewrite. By bundling the unit in the `Monoid` class
        it is hidden, and hence rewrite won't even see it.
      - The unit is unique.
      
      We could in principle have big ops over setoids instead of OFEs. However, since we do
      not have a canonical structure for bundled setoids, I did not go that way.
      6fbff46e
  14. 09 Feb, 2017 3 commits
  15. 27 Jan, 2017 1 commit
  16. 05 Jan, 2017 1 commit
  17. 03 Jan, 2017 1 commit
  18. 09 Dec, 2016 2 commits
  19. 29 Nov, 2016 2 commits
  20. 28 Nov, 2016 2 commits
    • Robbert Krebbers's avatar
      Simplify proof of auth_local_update. · ce32b224
      Robbert Krebbers authored
      Also, use explicit unfolding lemmas for auth_valid and auth_validN.
      The `Arguments valid _ _ !_ /` hack did not really work when one
      has to deal with the valid instance of the cmra, which underneath also
      includes a `cmra_valid`. Declaring a similar Arguments for `cmra_valid`
      is a bad idea, it will also end up unfold stuff for the exclusive and
      option CMRA.
      ce32b224
    • Ralf Jung's avatar
      Add a local update for auth (needed for nested auth) · 692b8570
      Ralf Jung authored
      Proof was done by Hai & me
      692b8570
  21. 25 Nov, 2016 1 commit
  22. 22 Nov, 2016 1 commit
  23. 25 Oct, 2016 1 commit
  24. 06 Oct, 2016 1 commit
  25. 05 Oct, 2016 1 commit
  26. 03 Oct, 2016 1 commit
  27. 28 Sep, 2016 1 commit
  28. 20 Sep, 2016 1 commit
  29. 09 Sep, 2016 1 commit
  30. 01 Sep, 2016 1 commit