1. 14 Mar, 2014 1 commit
  2. 14 Jan, 2014 1 commit
  3. 01 Nov, 2013 1 commit
    • Andrei Paskevich's avatar
      Trans: do not memoize transformations of goals · 3cdc073f
      Andrei Paskevich authored
      the goal declarations are not shared and thus memoizing transformations
      on them is only interesting if we apply the same transformation on the
      same goal (which may happen when we launch several provers of the same
      family on the same goal). On the other hand, goal declarations are big
      (think WP) and numerous (think goal_split), and keeping them in memory
      is a bad idea.
      
      The same example from BWare can now be treated with 1/4 of memory:
      
      why3-replayer : full memoization
      106.81user 7.86system 1:59.32elapsed 96%CPU (0avgtext+0avgdata 1656908maxresident)k
      
      why3-replayer : no memoization on goals (this commit)
      74.14user 4.24system 1:24.93elapsed 92%CPU (0avgtext+0avgdata 429376maxresident)k
      
      why3-replayer : no memoization at all
      217.78user 6.25system 3:43.56elapsed 100%CPU (0avgtext+0avgdata 615204maxresident)k
      
      One side effect of this commit is that polymorphism encoding
      transformations are likely to be memoized only for a short time.
      The transformations that select the type instances to discriminate
      and the types to preserve in encoding are full-task-dependent and
      therefore are not memoized anymore. Thus, as soon the the task that
      contains all the selection metas is GCed, the rest of the chain
      will go, too, and Why3 will have to re-monomorphize the same decls.
      We'll see if this is a problem in practice.
      3cdc073f
  4. 06 Mar, 2013 1 commit
  5. 29 Oct, 2012 2 commits
  6. 27 Oct, 2012 1 commit
  7. 26 Oct, 2012 1 commit
  8. 21 Oct, 2012 3 commits
  9. 20 Oct, 2012 1 commit
    • Andrei Paskevich's avatar
      simplify copyright headers · 11598d2b
      Andrei Paskevich authored
      + create AUTHORS file
      + fix the linking exception in LICENSE
      + update the "About" in IDE
      + remove the trailing whitespace
      + inflate my scores at Ohloh
      11598d2b
  10. 20 Aug, 2012 1 commit
    • François Bobot's avatar
      stdlib: remove polymorphic hashtbl · 068ddc7b
      François Bobot authored
         - add functions to Hashtbl.S
         - without ocaml 3.12 its not possible to do that for Hashtbl without
           copying the signature
         - "open Stdlib" hides the polymorphic hashtbl, perhaps a good idea
           since that avoid errors.
      068ddc7b
  11. 04 Aug, 2012 1 commit
  12. 03 Aug, 2012 1 commit
    • François Bobot's avatar
      Documentation: add description to all the registration functions · 29201f7c
      François Bobot authored
       (metas, debug flags, transformations, formats) except for label.
      
      This description is used in --list-*. The description can use any of
      the formatting markup of Format "@ " "@[",...
      
      Transformations can also specify from which metas and labels they
      depend, and add informations about how they are interpreted.
      
      TODO:
        - complete and correct the documentation
        - when a transformation use Trans.on_meta, it should be possible to
          add an interpretation of the metas in the documentation.
        - recover a summary version of --list-* ?
        - be able to export in latex?
      29201f7c
  13. 09 Apr, 2012 1 commit
  14. 03 Jan, 2012 1 commit
    • François Bobot's avatar
      new session · 49c19a38
      François Bobot authored
      Split session in two :
      Session : an API for managing session without running provers
      Session_scheduler : an API for running provers asynchronously
      
      All the global states have been removed.
      
      A session must be first read, which give a session without task.
      Afterward it must be updated to the current state of the files with
      some environnement and configuration.
      
      printer and iterator are provided for session.
      
      Session_tools : some useful functions on session.
      
      Smoke detector : not anymore integrated to session. Just add the
            transformation "smoke_detector_top" or "smoke_detector_deep" to
            all the valid proof attempt.
      
      prover_id are not yet removed but all is in place in session for that.
      49c19a38
  15. 18 Sep, 2011 2 commits
  16. 01 Jul, 2011 1 commit
  17. 07 Jun, 2011 1 commit
  18. 03 Jun, 2011 1 commit
  19. 24 May, 2011 1 commit
  20. 16 May, 2011 1 commit
  21. 15 May, 2011 1 commit
  22. 29 Apr, 2011 1 commit
  23. 27 Apr, 2011 1 commit
  24. 22 Apr, 2011 1 commit
  25. 31 Mar, 2011 2 commits
  26. 03 Feb, 2011 1 commit
  27. 26 Dec, 2010 2 commits
  28. 13 Dec, 2010 1 commit
  29. 04 Dec, 2010 1 commit
  30. 17 Nov, 2010 3 commits
  31. 04 Oct, 2010 1 commit
  32. 02 Oct, 2010 1 commit
    • Andrei Paskevich's avatar
      Yes the order is important. · d81cbb5d
      Andrei Paskevich authored
      We try to preserve the order of tasks returned by splitting
      transformations.
      
      Revert "Use map_rev instead of map, is the order important?"
      d81cbb5d