Skip to content
Snippets Groups Projects
  1. May 24, 2014
  2. May 22, 2014
    • Robbert Krebbers's avatar
      Various changes. · bb9d75d9
      Robbert Krebbers authored
      * Parametrize refinements with memories. This way, refinements imply typing,
        for example [w1 ⊑{Γ,f@m1↦m2} w2 : τ → (Γ,m1) ⊢ w1 : τ]. This relieves us from
        various hacks.
      * Use addresses instead of index/references pairs for lookup and alter
        operations on memories.
      * Prove various disjointness properties.
      bb9d75d9
  3. May 04, 2014
  4. May 02, 2014
  5. Sep 09, 2013
  6. Aug 27, 2013
  7. Aug 21, 2013
  8. Aug 15, 2013
  9. Aug 14, 2013
  10. Aug 12, 2013
    • Robbert Krebbers's avatar
      Finite maps and sets using ordered association lists. · bc659ba4
      Robbert Krebbers authored
      This commit includes the following changes:
      * More theorems about pre-, partial and total orders.
      * Define the lexicographic order on various commonly used data types.
      * Mergesort and its correctness proof.
      * Implement finite maps and sets using ordered association lists.
      bc659ba4
  11. Jun 24, 2013
  12. Jun 17, 2013
  13. May 21, 2013
  14. May 15, 2013
  15. May 12, 2013
  16. May 11, 2013
  17. May 07, 2013
    • Robbert Krebbers's avatar
      Lots of refactoring. and new results on permutations and list containment. · 361308c7
      Robbert Krebbers authored
      The refactoring includes:
      * Use infix notations for the various list relations
      * More consistent naming
      * Put lemmas on one line whenever possible
      * Change proofs into one-liners when possible
      * Make better use of the "Implicit Types" command
      * Improve the order of the list module by placing all definitions at the start,
        then the proofs, and finally the tactics.
      
      Besides, there is some new machinery for proofs by reflection on lists. It is
      used for a decision procedure for permutations and list containment.
      361308c7
  18. Apr 02, 2013
  19. Mar 25, 2013
  20. Mar 14, 2013
  21. Feb 24, 2013
  22. Feb 22, 2013
  23. Feb 19, 2013
    • Robbert Krebbers's avatar
      Support sequence point, add permissions, and update prelude. · 415a4f1c
      Robbert Krebbers authored
      Both the operational and axiomatic semantics are extended with sequence points
      and a permission system based on fractional permissions. In order to achieve
      this, the memory model has been completely revised, and is now built on top
      of an abstract interface for permissions.
      
      Apart from these changed, the library on lists and sets has been heavily
      extended, and minor changed have been made to other parts of the prelude.
      415a4f1c
  24. Feb 01, 2013
  25. Jan 09, 2013
  26. Jan 05, 2013
    • Robbert Krebbers's avatar
      Add missing notations on Z. · 6c89f5de
      Robbert Krebbers authored
      6c89f5de
    • Robbert Krebbers's avatar
    • Robbert Krebbers's avatar
      Various small changes. · 507a150a
      Robbert Krebbers authored
      * Define the standard strict order on pre orders.
      * Prove that this strict order is well founded for finite sets and finite maps.
        We also provide some utilities to compute with well founded recursion.
      * Improve the "simplify_option_equality" tactic to handle more cases.
      * Axiomatize finiteness of finite maps by translation to lists, instead of by
        them having a finite domain.
      * Prove many additional properties of finite maps.
      * Add many functions and theorems on lists, including: permutations, resize,
        filter, ...
      507a150a
  27. Nov 12, 2012
    • Robbert Krebbers's avatar
      Many relatively small changes. · 50dfc148
      Robbert Krebbers authored
      Most interestingly:
      * Use [lia] instead of [omega] everywhere
      * More many generic lemmas on the memory to the theory on finite maps.
      * Many additional list lemmas.
      * A new interface for a monad for collections, which is now also used by the
        collection tactics.
      * Provide an additional finite collection implementation using unordered lists
        without duplicates removed. This implementation forms a monad (just the list
        monad in disguise).
      50dfc148
Loading