1. 23 Mar, 2013 1 commit
  2. 03 Feb, 2013 1 commit
  3. 30 Jan, 2013 2 commits
    • Andrei Paskevich's avatar
      minor fix to the previous commit · fd0729a6
      Andrei Paskevich authored
      fd0729a6
    • Andrei Paskevich's avatar
      reorganize examples/ · 4b1bc2b0
      Andrei Paskevich authored
      - all programs with sessions are in examples/
      - all programs without sessions are in examples/in_progress/
        (if you have private sessions for those, just move them there)
      - all pure logical problems are in logic/
        (to simplify bench scripts and gallery building; they are few anyway)
      - all OCaml programs are in examples/use_api/
      - all strange stuff is in examples/misc/
        (most of it should probably go)
      - Claude's solutions for Foveoos 2011 are in examples/foveoos11-cm/
        (why do we need two sets of solutions for quite simple problems?)
      - hoare_logic, bitvectors, vacid_0_binary_heaps are in examples/
      
      Bench scripts and documentation are updated.
      Also, bench/bench is simplified a little bit.
      4b1bc2b0
  4. 30 Oct, 2012 1 commit
  5. 16 Aug, 2012 1 commit
  6. 03 Aug, 2012 2 commits
    • Jean-Christophe Filliâtre's avatar
      no more why3ml executable · 56c1047c
      Jean-Christophe Filliâtre authored
      56c1047c
    • 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
  7. 23 Jul, 2012 2 commits
    • François Bobot's avatar
      prover identification: use shortcuts · 92165a83
      François Bobot authored
         shortcuts are defined in why3.conf. They are automatically
         generated using two mechanism:
         - a shortcut section in prover-detection-data.conf creates a shortcut
         for the first prover that match the regexp
      
         - the identifier used as family argument for the prover section in
         prover-detection-data.conf is used as shortcut for the prover. If
         different sections use the same argument the first one that match an
         existing prover is used for the shortcut.
      92165a83
    • François Bobot's avatar
      new prover identification: remove id · 5a3641ec
      François Bobot authored
             Remove the id in prover that is used only for command-line, use
             instead the name,version,alternative of the prover. One can
             also use regular expression (start with ^).
      
             "Alt-Ergo,0.92,with arrays" corresponds only to one prover
             "Alt-Ergo,^0\.9.*,with arrays" correspond to all the Alt-Ergo prover with arrays which version match "0\.9.*"
             "Alt-Ergo" is the same thing than "Alt-Ergo,^,^"
             "Alt-Ergo,0.92," corresponds only to one prover with the alternate fields empty
             "Alt-Ergo,,with arrays" corresponds to "Alt-Ergo,^,with arrays" since the version is never empty.
      
             Provers identification are case sensitive even if it is
             currently more complicated for the user because
             case-insensitiveness is not sufficient. Specifiying "alt-ergo"
             for "Alt-Ergo,^,^" is great, but not if there is more than one
             match. A more general system of shortcut would be more
             appropriate.
      5a3641ec
  8. 14 Apr, 2012 1 commit
  9. 11 Aug, 2011 1 commit
  10. 23 May, 2011 2 commits
  11. 17 May, 2011 1 commit
  12. 16 May, 2011 1 commit
  13. 21 Jan, 2011 1 commit
  14. 11 Jan, 2011 2 commits
  15. 06 Jan, 2011 1 commit
  16. 02 Jan, 2011 1 commit
  17. 30 Dec, 2010 1 commit
  18. 17 Dec, 2010 1 commit
  19. 24 Nov, 2010 1 commit
  20. 12 Nov, 2010 1 commit
  21. 06 Oct, 2010 1 commit
  22. 29 Sep, 2010 1 commit
  23. 02 Sep, 2010 1 commit
  24. 25 Jun, 2010 1 commit
  25. 15 Jun, 2010 1 commit
  26. 01 Jun, 2010 1 commit
  27. 21 May, 2010 1 commit
  28. 10 May, 2010 2 commits
  29. 05 May, 2010 1 commit
  30. 17 Apr, 2010 1 commit
    • Andrei Paskevich's avatar
      rework configure: · b3d1d542
      Andrei Paskevich authored
      - no more version.sh, use config.ml.in and version.tex.in instead
      - dynlink compatibility is moved to config.ml
      - comment out unused sections in Makefile
      - provide the explicit --enable-ide option
      - provide the explicit --enable-plugins option
      - require at least Ocaml 3.10
      - remove *-yes and *-no targets from Makefile,
        use ifeq() instead
      b3d1d542
  31. 05 Apr, 2010 1 commit
    • Andrei Paskevich's avatar
      rewrite the command line treatment to provide reasonable · 77f29212
      Andrei Paskevich authored
      default actions in case explicit options are missing.
      
      The command line has the following structure:
          
          why [options] [[file|-] [-t <theory> [-g <goal>]...]...]...
      
      Summary:
          
          Qualified theories come from the library, not from file.
          When the driver is not specified, pretty-print theories.
          When neither --prove nor --output are given, print tasks.
          When no theory is specified for a file, use every theory.
          When no goal is specified for a theory, use every goal.
      
      Examples:
      
          % why.opt
          [shows usage information]
      
          % why.opt test.why
          [prints the contents of test.why]
      
          % why.opt -t int.Int
          [prints the library theory int.Int]
      
          % why.opt -D drivers/z3.drv test.why
          [sends every task from test.why to stdout]
      
          % why.opt -D drivers/z3.drv -o directory test.why
          [creates ./directory/ if it's does not exist and
           sends every task to a separate file in ./directory/]
      
          % why.opt -D drivers/z3.drv --prove test.why -t ThA
          [calls the prover for every goal from theory ThA in test.why]
      
          % why.opt -D drivers/z3.drv --prove test.why -t ThA -g G1 -g G2
          [calls the prover for G1 and G2 from theory ThA in test.why]
      
          % why.opt -D drivers/z3.drv -t int.Abs -g G1 test.why -t ThA
          [prints G1 from int.Abs and every goal from ThA in test.why]
      
      77f29212
  32. 25 Mar, 2010 1 commit
  33. 24 Mar, 2010 1 commit
  34. 23 Mar, 2010 1 commit