1. 13 Aug, 2019 1 commit
    • Sylvain Dailler's avatar
      why3execute: Add execution for floats and reals (depends from mpfr) · ae5ddf91
      Sylvain Dailler authored
      This adds an optional dependency on MPFR to run why3execute for floats. It
      is also used for reals (represented as intervals of floats).
      This commit does the following changes:
      - update the configure/Makefile to allow MPFR dependency
      - adds a MPFR wrapper so that why3execute can still be compiled if MPFR is
        not installed. In this case, an exception is raised when executing on
        real/float.
      - some updates are made to the standard library so that real/float
        functions are part of the program world (and can be executed).
      - pinterp changes to make elementary functions from real and float
        executable.
      - add some tests under bench/interp for manual testing of this feature
      
      Note that the correctness of the results given for reals depends on the
      precision. A too low precision may give unexpected results.
      ae5ddf91
  2. 01 Aug, 2019 3 commits
  3. 31 Jul, 2019 2 commits
  4. 30 Jul, 2019 2 commits
  5. 26 Jul, 2019 3 commits
  6. 23 Jul, 2019 2 commits
  7. 16 Jul, 2019 6 commits
  8. 15 Jul, 2019 1 commit
  9. 13 Jul, 2019 2 commits
    • Guillaume Melquiond's avatar
      Fix sessions. · fb28ab2f
      Guillaume Melquiond authored
      All the changes are due to equality "x = x" now being properly detected
      as being trivially true.
      fb28ab2f
    • Guillaume Melquiond's avatar
      Weaken t_equal so that it is modulo attributes, triggers, and locations. · 1843ff78
      Guillaume Melquiond authored
      This makes t_equal_nt_na redundant. Functions t_compare and t_hash are
      changed accordingly. Modules Hterm, Sterm, and Mterm are changed too.
      Strict functions and modules are introduced: t_equal_strict,
      t_compare_strict, t_hash_strict, Hterm_strict, Sterm_strict, Mterm_strict.
      
      Most of the calls to t_equal (and similarly for other symbols) are kept
      unchanged, which means that transformations are now a lot more lenient
      with respect to equality. Only hashconsing of declarations is made to use
      the strict symbols.
      1843ff78
  10. 12 Jul, 2019 1 commit
  11. 11 Jul, 2019 5 commits
  12. 10 Jul, 2019 6 commits
  13. 08 Jul, 2019 2 commits
  14. 06 Jul, 2019 4 commits