1. 11 Jul, 2016 1 commit
    • Robbert Krebbers's avatar
      Remove CollectionOps class. · 8a431343
      Robbert Krebbers authored
      This class whose name is horrible and purpose is arbitrary seems to be a
      leftover of some experiment with ch2o, a long time a ago.
      8a431343
  2. 05 Jul, 2016 1 commit
  3. 31 May, 2016 1 commit
  4. 23 Mar, 2016 2 commits
  5. 05 Mar, 2016 2 commits
  6. 04 Mar, 2016 2 commits
  7. 03 Mar, 2016 1 commit
  8. 24 Feb, 2016 3 commits
  9. 22 Feb, 2016 2 commits
    • Robbert Krebbers's avatar
      Let set_solver not use eauto by default. · d719e001
      Robbert Krebbers authored
      In most cases there is a lot of duplicate proof search performed by
      both naive_solver and eauto. Especially since naive_solver calls its
      tactic (in the case of set_solver this used to be eauto) quite eagerly
      this made it very slow.
      
      Note that set_solver is this too slow and should be improved.
      d719e001
    • Robbert Krebbers's avatar
      Let set_solver not use eauto by default. · 060c2b8f
      Robbert Krebbers authored
      In most cases there is a lot of duplicate proof search performed by
      both naive_solver and eauto. Especially since naive_solver calls its
      tactic (in the case of set_solver this used to be eauto) quite eagerly
      this made it very slow.
      
      Note that set_solver is this too slow and should be improved.
      060c2b8f
  10. 17 Feb, 2016 3 commits
  11. 16 Feb, 2016 1 commit
  12. 15 Feb, 2016 2 commits
  13. 13 Feb, 2016 1 commit
  14. 16 Jan, 2016 2 commits
  15. 04 Jan, 2016 1 commit
  16. 11 Dec, 2015 1 commit
  17. 20 Nov, 2015 1 commit
    • Robbert Krebbers's avatar
      Step-indexed order on CMRAs · 58096261
      Robbert Krebbers authored
      * Remove the order from RAs, it is now defined in terms of the ⋅ operation.
      * Define ownership using the step-indexed order.
      * Remove the order also from DRAs and change STS accordingly. While doing
        that, I changed STS to no longer use decidable token sets, which removes the
        requirement of decidable equality on tokens.
      58096261
  18. 18 Nov, 2015 1 commit
  19. 17 Nov, 2015 1 commit
  20. 16 Nov, 2015 2 commits
  21. 03 Feb, 2017 1 commit
  22. 01 Feb, 2017 1 commit
    • Robbert Krebbers's avatar
      Port to Coq 8.5 beta 2. · 02f213ce
      Robbert Krebbers authored
      The port makes the following notable changes:
      
      * The carrier types of separation algebras and integer environments are no
        longer in Set. Now they have a type at a fixed type level above Set. This
        both works better in 8.5 and makes the formalization more general.
        I have tried putting them at polymorphic type levels, but that increased the
        compilation time by an order of magnitude.
      * I am using a custom f_equal tactic written in Ltac to circumvent bug #4069.
        That bug has been fixed, so this custom tactic can be removed when the next
        beta of 8.5 is out.
      02f213ce
  23. 04 Jun, 2015 1 commit
  24. 02 Jun, 2015 1 commit
  25. 22 Apr, 2015 1 commit
  26. 16 Apr, 2015 1 commit
  27. 02 Mar, 2015 1 commit
  28. 08 Feb, 2015 2 commits
    • Robbert Krebbers's avatar
      Update copyright headers. · 5a73c4ed
      Robbert Krebbers authored
      5a73c4ed
    • Robbert Krebbers's avatar
      Support function pointers and use a state monad in the frontend. · b2109c25
      Robbert Krebbers authored
      Important changes in the core semantics:
      * Types extended with function types. Since function types are a special kind
        of pointer types, types now have an additional mutual part called "ptr_type".
      * Pointers extended with function pointers. Theses are just names that refer
        to an actual function in the function environment.
      * Typing environments extended to assign argument and return types to function
        names. Before we used a separate environment for these, but since the
        argument and return types are already needed to type function pointers, this
        environment would appear in pretty much every typing judgment.
      
      As a side-effect, the frontend has been rewritten entirely. The important
      changes are:
      
      * Type checking of expressions is more involved: there is a special kind of
        expression type corresponding to a function designator.
      * To handle things like block scoped extern function, more state-fullness was
        needed. To prepare for future extensions, the entire frontend now uses a
        state monad.
      b2109c25