1. 27 Oct, 2017 1 commit
  2. 21 Sep, 2017 1 commit
  3. 17 Sep, 2017 1 commit
    • Robbert Krebbers's avatar
      Set Hint Mode for all classes in `base.v`. · 7d7c9871
      Robbert Krebbers authored
      This provides significant robustness against looping type class search.
      
      As a consequence, at many places throughout the library we had to add
      additional typing information to lemmas. This was to be expected, since
      most of the old lemmas were ambiguous. For example:
      
        Section fin_collection.
          Context `{FinCollection A C}.
      
          size_singleton (x : A) : size {[ x ]} = 1.
      
      In this case, the lemma does not tell us which `FinCollection` with
      elements `A` we are talking about. So, `{[ x ]}` could not only refer to
      the singleton operation of the `FinCollection A C` in the section, but
      also to any other `FinCollection` in the development. To make this lemma
      unambigious, it should be written as:
      
        Lemma size_singleton (x : A) : size ({[ x ]} : C) = 1.
      
      In similar spirit, lemmas like the one below were also ambiguous:
      
        Lemma lookup_alter_None {A} (f : A → A) m i j :
          alter f i m !! j = None  m !! j = None.
      
      It is not clear which finite map implementation we are talking about.
      To make this lemma unambigious, it should be written as:
      
        Lemma lookup_alter_None {A} (f : A → A) (m : M A) i j :
          alter f i m !! j = None  m !! j = None.
      
      That is, we have to specify the type of `m`.
      7d7c9871
  4. 15 Mar, 2017 1 commit
  5. 31 Jan, 2017 4 commits
  6. 23 Nov, 2016 1 commit
  7. 22 Nov, 2016 1 commit
  8. 21 Nov, 2016 3 commits
  9. 20 Nov, 2016 1 commit
  10. 28 Sep, 2016 1 commit
  11. 27 Sep, 2016 1 commit
  12. 22 Jul, 2016 3 commits
  13. 23 Mar, 2016 1 commit
  14. 17 Feb, 2016 4 commits
  15. 13 Feb, 2016 1 commit
  16. 11 Feb, 2016 1 commit
  17. 16 Jan, 2016 1 commit
    • Robbert Krebbers's avatar
      Remove elem_of_tactic that uses intuition. · 4b4e270e
      Robbert Krebbers authored
      This one (previously solve_elem_of) was hardly used. The tactic that uses
      naive_solver (previously esolve_elem_of, now solve_elem_of) has been
      extended with flags to say which hypotheses should be cleared/kept.
      4b4e270e
  18. 12 Jan, 2016 1 commit
  19. 11 Dec, 2015 1 commit
  20. 18 Nov, 2015 1 commit
  21. 16 Nov, 2015 1 commit
  22. 03 Feb, 2017 1 commit
  23. 08 Feb, 2015 1 commit
  24. 30 Sep, 2014 1 commit
  25. 05 Jun, 2014 1 commit
    • Robbert Krebbers's avatar
      Preparation to port the master branch · d60affc0
      Robbert Krebbers authored
      Major changes:
      * A data structure to collect locked addresses in memory.
      * Operations to lock and unlock addresses.
      * Remove [ctree_Forall] and express it using [Forall] and [ctree_flatten]. This
        saves a lot of lines of code.
      * Add a [void] value. This value cannot be typed, but will be used as a dummy
        return value for functions with return type [void].
      
      Minor changes:
      * Various deciders in preparation of the executable semantics.
      * Improve naming and notations.
      * Remove obsolete stuff.
      d60affc0
  26. 02 May, 2014 2 commits
  27. 21 Aug, 2013 1 commit
  28. 12 Aug, 2013 1 commit
    • 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
  29. 17 Jun, 2013 1 commit