1. 26 Feb, 2012 1 commit
  2. 22 Feb, 2012 1 commit
    • Andrei Paskevich's avatar
      make api of maps/sets more consistent · 33bb423f
      Andrei Paskevich authored
      - change takes function as the first argument
      - add_new takes exception as the first argument
      - find_default is renamed to find_def and takes the default value
        as the first argument
      - find_option is renamed to find_opt (to align with find_exn and find_def)
      - default_option is renamed def_option
      33bb423f
  3. 10 Feb, 2012 1 commit
  4. 09 Aug, 2011 1 commit
  5. 01 Jul, 2011 1 commit
  6. 10 Jun, 2011 1 commit
  7. 04 Jun, 2011 1 commit
  8. 03 Jun, 2011 3 commits
  9. 02 Jun, 2011 1 commit
  10. 31 May, 2011 1 commit
  11. 24 May, 2011 1 commit
  12. 20 May, 2011 1 commit
  13. 16 May, 2011 1 commit
  14. 15 May, 2011 5 commits
  15. 27 Apr, 2011 1 commit
  16. 23 Feb, 2011 2 commits
    • Andrei Paskevich's avatar
    • Andrei Paskevich's avatar
      be more stricte in accepting inductives and algebraics · efaf0dc2
      Andrei Paskevich authored
      1. We only accept an algebraic type declaration
      
          T 'a1 ... 'aN
      
      whenever every constructor has ls_value = Some (T 'a1 ... 'aN),
      no type variable renaming is allowed.
      
      2. We only accept an inductive predicate declaration
      
          P (_x1 : T1) ... (_xN : TN)
      
      whenever every inductive clause has a conclusion of the form
      (P (t1 : T1) ... (tN : TN)), no type variable renaming is allowed.
      
      3. To this purpose, we must typecheck the whole (mutual) inductive
      declaration group in the same denv. This must be ok, since user-named
      type variables cannot be destructively instantiated anyway. However,
      I'd like Jean-Christoph to check my changes in Typing.add_inductives.
      efaf0dc2
  17. 12 Jan, 2011 1 commit
  18. 26 Dec, 2010 1 commit
  19. 25 Dec, 2010 1 commit
  20. 13 Dec, 2010 1 commit
  21. 09 Dec, 2010 1 commit
    • Andrei Paskevich's avatar
      add inline_goal to transform/inlining · 349a0eb4
      Andrei Paskevich authored
      + change inline_trivial: now we only inline right-linear
      definitions where no variable occurs deeper than level 1.
      
      Attention: this inlines definitions with arbitrarily complex
      ground terms on the right-hand side - which might be a BAD IDEA,
      but I still want to give it a try.
      
      + add find_logic_definition to Decl
      349a0eb4
  22. 26 Nov, 2010 1 commit
  23. 16 Nov, 2010 3 commits
  24. 10 Nov, 2010 1 commit
  25. 09 Nov, 2010 1 commit
  26. 29 Oct, 2010 1 commit
  27. 26 Oct, 2010 1 commit
    • Andrei Paskevich's avatar
      verify termination (à la Fixpoint) of recursive logic definitions · f92739a1
      Andrei Paskevich authored
      the verification algorithm must always terminate and be reasonably
      performant in practice, but its worst-case complexity is unknown
      and probably exponential. What is quite easy when there is only
      one recursive definition, becomes difficult when there is a group
      of mutually recursive definitions. An educated discussion would
      be highly appreciated.
      
      BTW, I had to convert a couple of recursive "logic"s on integers
      into an abstract "logic" + axiom. Pretty much all of them supposed
      that the argument was non-negative, and thus were non-terminating!
      f92739a1
  28. 27 Sep, 2010 1 commit
  29. 25 Aug, 2010 1 commit
  30. 18 Aug, 2010 1 commit
  31. 17 Aug, 2010 1 commit