1. 25 Apr, 2019 1 commit
  2. 16 Mar, 2019 1 commit
    • Jakob Botsch Nielsen's avatar
      More efficient list encoding for Countable · 9b209c98
      Jakob Botsch Nielsen authored
      This changes the encoding used for finite lists of values of countable
      types to be linear instead of exponential. The encoding works by
      duplicating bits of each element so that 0 -> 00 and 1 -> 11, and then
      separating each element with 10. The top 1-bits are not kept since we
      know a 10 is starting a new element which ends with a 1.
      
      Fix #28
      9b209c98
  3. 29 Jan, 2019 1 commit
  4. 27 Apr, 2018 1 commit
  5. 08 Mar, 2018 1 commit
  6. 21 Sep, 2017 1 commit
  7. 18 Sep, 2017 3 commits
  8. 02 Aug, 2017 1 commit
  9. 05 Jul, 2017 1 commit
  10. 15 Mar, 2017 1 commit
  11. 31 Jan, 2017 4 commits
  12. 20 Sep, 2016 1 commit
  13. 31 May, 2016 1 commit
  14. 17 Feb, 2016 1 commit
    • Robbert Krebbers's avatar
      Rename simplify_equality like tactics. · 20690605
      Robbert Krebbers authored
      simplify_equality        => simplify_eq
      simplify_equality'       => simplify_eq/=
      simplify_map_equality    => simplify_map_eq
      simplify_map_equality'   => simplify_map_eq/=
      simplify_option_equality => simplify_option_eq
      simplify_list_equality   => simplify_list_eq
      f_equal'                 => f_equal/=
      
      The /= suffixes (meaning: do simpl) are inspired by ssreflect.
      20690605
  15. 16 Feb, 2016 2 commits
  16. 13 Feb, 2016 1 commit
  17. 11 Feb, 2016 1 commit
  18. 12 Jan, 2016 1 commit
  19. 11 Dec, 2015 1 commit
  20. 04 Dec, 2015 1 commit
  21. 16 Nov, 2015 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. 08 Feb, 2015 1 commit
  24. 07 Oct, 2014 1 commit
  25. 16 Jun, 2014 1 commit
    • Robbert Krebbers's avatar
      Changes in preparation of the C type system and C front-end language · 3503a91f
      Robbert Krebbers authored
      Major changes:
      * Make void a base type, and include a proper void base value. This is necessary
        because expressions (free, functions without return value) can yield a void.
        We now also allow void casts conforming to the C standard.
      * Various missing lemmas about typing, weakening, decidability, ...
      * The operations "free" and "alloc" now operate on l-values instead of r-values.
        This removes some duplication.
      * Improve notations of expressions and statements. Change the presence of the
        operators conforming to the C standard.
      
      Small changes:
      * Use the classes "Typed" and "TypeCheck" for validity of indexes in memory.
        This gives more uniform notations.
      * New tactic "typed_inversion" performs inversion on an inductive predicate
        of type "Typed" and folds the premises.
      * Remove a horrible hack in the definitions of the classes "FMap", "MBind",
        "OMap", "Alter" that was used to let "simpl" behave better. Instead, we have
        defined a tactic "csimpl" that folds the results after performing an
        ordinary "simpl".
      * Fast operation to remove duplicates from lists using hashsets.
      * Make various type constructors (mainly finite map implementations) universe
        polymorphic by packing them into an inductive. This way, the whole C syntax
        can live in type, avoiding the need for (slow) universe checks.
      3503a91f
  26. 02 May, 2014 1 commit
  27. 17 Jun, 2013 1 commit