2011-02-27 Roberto Bagnara * PPL 0.11.2 released. 2011-02-27 Roberto Bagnara * NEWS, README, Watchdog/src/Makefile.am, configure.ac, demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_pips/ppl_pips.1, doc/libppl.3, doc/libppl_c.3, doc/ppl-config.1, doc/ppl-config_extra_man_text, src/Makefile.am: Preparation for the release of PPL 0.11.2. 2011-02-25 Enea Zaffanella * src/Row.defs.hh: Fixed a documentation problem in a \ref Doxygen command. 2011-02-23 Enea Zaffanella * src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh: Avoid (again) using the same macro name for different purposes. Doing it confuses both the reader and Doxygen. 2011-02-23 Enea Zaffanella * doc/devref-language-interface.tex, doc/devref.tex, doc/user-language-interface.tex, doc/user.tex: Get rid of LaTeX warnings related to package fancyhdr. 2011-02-23 Enea Zaffanella * doc/Makefile.am, doc/devref-language-interface.doxyconf.in, doc/user-language-interface.doxyconf.in, interfaces/C/C_interface.dox: Avoid duplicate PDF labels in the configured C interface manuals. 2011-02-23 Enea Zaffanella * doc/devref-language-interface.tex, doc/devref.tex, doc/user-language-interface.tex, doc/user.tex: Fixed a duplicate hypertarget error in the generated PDF documentation. 2011-02-23 Enea Zaffanella * src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh: Avoid using the same macro name for different purposes. Doing it confuses both the reader and Doxygen. 2011-02-23 Roberto Bagnara * NEWS: Two items added. 2011-02-23 Roberto Bagnara * m4/ac_check_gmp.m4: When cross-compiling, assume that GMP has been compiled with support for propagating exceptions. 2011-02-23 Roberto Bagnara * src/fpu-ia32.cc: Work around a bug showing up under mingw-w64. 2011-02-23 Enea Zaffanella * Watchdog/doc/devref.doxyconf-latex.in, doc/devref-language-interface.doxyconf.in, doc/devref.doxyconf-latex.in: Set INLINE_SOURCES = NO when producing LaTeX documentation. This change is a workaround to a pdftex + hyperref issue that may result in the following error \pdfendlink ended up in different nesting level than \pdfstartlink when using some versions of Doxygen (e.g., 1.7.3). According to http://tug.org/errors.html the error is triggered when a hyperlink is split across page boundaries and it can be generated even by valid LaTeX code. Disabling source inlining is a way to greatly decrease its likelihood. 2011-02-22 Enea Zaffanella * src/meta_programming.hh: Fixed a couple of Doxygen related problems. 2011-02-22 Roberto Bagnara * NEWS: Updated. 2011-02-22 Roberto Bagnara * src/fpu-ia32.cc: No longer overwrite the SIGILL handler. 2011-02-21 Roberto Bagnara * interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a: Never use `\c'; use instead (yes, uppercase). 2011-02-21 Roberto Bagnara * NEWS, README.configure, configure.ac, m4/ac_check_fpu_control.m4: The `--disable-fpmath' configure option now disables all floating point computations. 2011-02-20 Roberto Bagnara * PPL 0.11.1 released. 2011-02-20 Roberto Bagnara * configure.ac: Update version. 2011-02-20 Roberto Bagnara * ChangeLog: Mark ChangeLog. 2011-02-20 Roberto Bagnara * Watchdog/ChangeLog: Mark ChangeLog. 2011-02-20 Roberto Bagnara * ChangeLog: Updated. 2011-02-20 Roberto Bagnara * NEWS: Added missing news items. 2011-02-20 Roberto Bagnara * NEWS: Added missing news items. 2010-10-19 Enea Zaffanella * src/Octagonal_Shape.templates.hh, tests/Octagonal_Shape/affineimage1.cc: Improved precision of Octagonal_Shape::affine_image(). The method was rather imprecise on sign-symmetry affine transformations. Also noted that strong reduction is preserved in that case. 2011-02-19 Roberto Bagnara * ChangeLog, Watchdog/ChangeLog: Updated. 2011-02-19 Roberto Bagnara * doc/libppl.3, doc/libppl_c.3, doc/ppl-config_extra_man_text: Further changes for PPL 0.11.1. 2011-02-19 Roberto Bagnara * CREDITS: Added an entry for Marco Poletti. 2011-02-19 Roberto Bagnara * NEWS, README, Watchdog/config.guess, Watchdog/config.sub, config.guess, config.sub, demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_pips/ppl_pips.1, doc/libppl.3, doc/libppl_c.3, doc/ppl-config.1: Updated for the release of PPL 0.11.1. 2011-02-17 Enea Zaffanella * src/Bit_Matrix.cc, src/Linear_System.cc, src/Linear_System.defs.hh, src/Linear_System.inlines.hh, src/swapping_sort.icc: Replaced the algorithm used for sorting Linear_System and Bit_Matrix. The new algorithm, based on STL's std::sort and std::unique, is applied to a vector of rows' indices and implements indirect sort using function objects for the comparisons and swap operations. Apart from a (usually minor) decrease in the number of comparisons and swaps perfomed, the new algorithm should be better wrt the consumption of stack space, by getting rid of ad-hoc sort/unique functions, as well as the special-purpose iterator class Linear_System::With_Bit_Matrix_iterator. 2011-02-16 Roberto Bagnara * tests/Polyhedron/Makefile.am: Disabled the `memory1' test (at least for the time being). 2011-02-16 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: test06 no longer overflows when using 8-bit coefficients. 2011-02-14 Roberto Bagnara * .gitignore: Ignore *.lzma. 2011-02-14 Roberto Bagnara * Watchdog/tests/.gitignore, interfaces/C/tests/.gitignore, interfaces/Java/parma_polyhedra_library/.gitignore, interfaces/Prolog/GNU/.gitignore, tests/Grid/.gitignore, tests/PIP_Problem/.gitignore, tests/Partially_Reduced_Product/.gitignore, tests/Polyhedron/.gitignore: Updated. 2011-02-14 Roberto Bagnara * interfaces/Prolog/tests/clpq.pl, interfaces/Prolog/tests/clpq2.pl: Copyright notices updated. 2011-02-14 Roberto Bagnara * interfaces/Prolog/Ciao/Makefile.am, interfaces/Prolog/GNU/Makefile.am, interfaces/Prolog/SICStus/Makefile.am, interfaces/Prolog/SWI/Makefile.am, interfaces/Prolog/XSB/Makefile.am, interfaces/Prolog/YAP/Makefile.am: Fixed a number of wrong conditionals. 2011-02-14 Enea Zaffanella * demos/ppl_pips/expected_int16, demos/ppl_pips/expected_int16_a, demos/ppl_pips/expected_int32, demos/ppl_pips/expected_int32_a, demos/ppl_pips/expected_int64, demos/ppl_pips/expected_int64_a, demos/ppl_pips/expected_int8, demos/ppl_pips/expected_int8_a, tests/PIP_Problem/pipproblem1.cc: Updated expected results. 2011-02-14 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: The resolution process for PIP_Problem now better exploits the integrality of parameters to simplify the newly generated tautological constraints, the splitting constraints of decision nodes, and the expressions defining artificial parameters. 2011-02-14 Enea Zaffanella * src/PIP_Tree.defs.hh: Document parameter indent_level in PIP_Tree_Node::solve(). 2011-02-14 Roberto Bagnara * configure.ac: Version number bumped. 2011-02-14 Roberto Bagnara * Watchdog/tests/Makefile.am, demos/ppl_pips/Makefile.am, interfaces/C/tests/Makefile.am, interfaces/OCaml/tests/Makefile.am, interfaces/Prolog/SWI/Makefile.am, tests/Ask_Tell/Makefile.am, tests/BD_Shape/Makefile.am, tests/Box/Makefile.am, tests/Grid/Makefile.am, tests/MIP_Problem/Makefile.am, tests/Octagonal_Shape/Makefile.am, tests/PIP_Problem/Makefile.am, tests/Partially_Reduced_Product/Makefile.am, tests/Polyhedron/Makefile.am, tests/Powerset/Makefile.am: Reduce the argument of valgrind's --num-callers below the allowed maximum. 2011-02-14 Roberto Bagnara * interfaces/Prolog/tests/expected_clpq2_mpz, interfaces/Prolog/tests/expected_clpq_mpz: Copyright notices updated. 2011-02-11 Enea Zaffanella * tests/Polyhedron/numberinput1.cc: Fixed auxiliary function aux_test to perform proper comparisons. In the meanwhile, fixed another typo. 2011-02-11 Enea Zaffanella * demos/ppl_pips/expected_int16, demos/ppl_pips/expected_int16_a, demos/ppl_pips/expected_int32, demos/ppl_pips/expected_int32_a, demos/ppl_pips/expected_int64, demos/ppl_pips/expected_int64_a, demos/ppl_pips/expected_int8, demos/ppl_pips/expected_int8_a: Corrected expected results. 2011-02-10 Enea Zaffanella * demos/ppl_pips/expected_int16, demos/ppl_pips/expected_int16_a, demos/ppl_pips/expected_int32, demos/ppl_pips/expected_int32_a, demos/ppl_pips/expected_int64, demos/ppl_pips/expected_int64_a, demos/ppl_pips/expected_int8, demos/ppl_pips/expected_int8_a, demos/ppl_pips/expected_mpz, demos/ppl_pips/expected_mpz_a: Corrected expected results. 2011-02-10 Abramo Bagnara * src/checked.cc: Fixed stream state on checked input. 2011-02-11 Enea Zaffanella * src/PIP_Tree.cc: Fixed a bug in the simplification of the solution tree. We were too eager in merging a single true child with its parent: if the true child happened to be a decision node with both childs, the merging was causing the violation of a PIP_Decision_Node invariant. 2011-02-11 Enea Zaffanella * NEWS: Mentioned the correction of a few problems. 2011-02-05 Enea Zaffanella * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4: Fixed function ppl_Pointset_Powerset_*_get_disjunct in OCaml interface. 2011-02-05 Marco Poletti * src/Polyhedron_public.cc: Polyhedron: fix an invalid reference bug in generalized_affine_image(). 2011-02-05 Marco Poletti * src/Grid.templates.hh: Grid: avoid using an invalid reference in the constructor from a Box. 2011-02-04 Roberto Bagnara * configure.ac: Version number bumped. 2011-02-03 Abramo Bagnara * src/checked.inlines.hh: Added other plain char specializations. 2011-02-03 Roberto Bagnara * src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh, src/Interval.inlines.hh, src/checked_float.inlines.hh, src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh, src/checked_numeric_limits.hh, src/meta_programming.hh: Added missing specializations for plain char. 2011-02-03 Roberto Bagnara * configure.ac: Version number bumped. 2011-02-03 Roberto Bagnara * src/checked_float.inlines.hh: Do not use the deprecated function mpz_div_2exp. Use mpz_tdiv_q_2exp instead. 2011-02-03 Roberto Bagnara * src/C_Integer.hh: Specialize C_Integer for plain char. 2011-01-30 Roberto Bagnara * src/checked_int.inlines.hh: Added specializations for plain char. 2011-01-30 Roberto Bagnara * configure.ac: Version number bumped. 2011-01-30 Roberto Bagnara * m4/ac_cxx_plain_char_is_signed.m4: Copy-and-paste mistake fixed. 2011-01-30 Roberto Bagnara * configure.ac, m4/Makefile.am, m4/ac_cxx_plain_char_is_signed.m4: Detect whether the plain char type is signed. 2011-01-29 Roberto Bagnara * configure.ac: AC_PROG_OCAML only sets OCAMLOPT if OCAMLC is different from "no". 2011-01-28 Roberto Bagnara * interfaces/Prolog/tests/expected_clpq2_mpz, interfaces/Prolog/tests/expected_clpq_mpz: Copyright notices updated in expexted result files. 2011-01-25 Roberto Bagnara * NEWS, README, Watchdog/src/Makefile.am, configure.ac, src/Makefile.am: Prepare for release 0.11.1. 2011-01-24 Roberto Bagnara * Makefile.am, NEWS, README, README.configure, STANDARDS, Watchdog/Makefile.am, Watchdog/NEWS, Watchdog/README, Watchdog/configure.ac, Watchdog/doc/Makefile.am, Watchdog/doc/README.doc, Watchdog/doc/devref.tex, Watchdog/doc/pwl.sty, Watchdog/doc/user.tex, Watchdog/m4/Makefile.am, Watchdog/src/Doubly_Linked_Object.defs.hh, Watchdog/src/Doubly_Linked_Object.inlines.hh, Watchdog/src/Doubly_Linked_Object.types.hh, Watchdog/src/EList.defs.hh, Watchdog/src/EList.inlines.hh, Watchdog/src/EList.types.hh, Watchdog/src/EList_Iterator.defs.hh, Watchdog/src/EList_Iterator.inlines.hh, Watchdog/src/EList_Iterator.types.hh, Watchdog/src/Handler.defs.hh, Watchdog/src/Handler.inlines.hh, Watchdog/src/Handler.types.hh, Watchdog/src/Makefile.am, Watchdog/src/Pending_Element.defs.hh, Watchdog/src/Pending_Element.inlines.hh, Watchdog/src/Pending_Element.types.hh, Watchdog/src/Pending_List.defs.hh, Watchdog/src/Pending_List.inlines.hh, Watchdog/src/Pending_List.templates.hh, Watchdog/src/Pending_List.types.hh, Watchdog/src/Threshold_Watcher.cc, Watchdog/src/Threshold_Watcher.defs.hh, Watchdog/src/Threshold_Watcher.inlines.hh, Watchdog/src/Threshold_Watcher.templates.hh, Watchdog/src/Threshold_Watcher.types.hh, Watchdog/src/Time.cc, Watchdog/src/Time.defs.hh, Watchdog/src/Time.inlines.hh, Watchdog/src/Time.types.hh, Watchdog/src/Watchdog.cc, Watchdog/src/Watchdog.defs.hh, Watchdog/src/Watchdog.inlines.hh, Watchdog/src/Watchdog.types.hh, Watchdog/src/pwl_header.hh, Watchdog/tests/Makefile.am, Watchdog/tests/pwl_test.cc, Watchdog/tests/pwl_test.hh, Watchdog/tests/watchdog1.cc, Watchdog/utils/Makefile.am, Watchdog/utils/build_header.in, configure.ac, debian/libppl-pwl.copyright.in, debian/libppl.copyright.in, demos/Makefile.am, demos/ppl_lcdd/Makefile.am, demos/ppl_lcdd/examples/Makefile.am, demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lcdd/ppl_lcdd.cc, demos/ppl_lcdd/ppl_lcdd_extra_man_text, demos/ppl_lpsol/Makefile.am, demos/ppl_lpsol/dummy.cc, demos/ppl_lpsol/examples/Makefile.am, demos/ppl_lpsol/glpk_set_d_eps.c, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_lpsol/ppl_lpsol.c, demos/ppl_lpsol/ppl_lpsol_extra_man_text, demos/ppl_pips/Makefile.am, demos/ppl_pips/examples/Makefile.am, demos/ppl_pips/ppl_pips.1, demos/ppl_pips/ppl_pips.cc, demos/ppl_pips/ppl_pips_extra_man_text, devtools/bump_copyright_years, devtools/generate_dox_biblio, devtools/generate_dox_ci_prolog_manual, devtools/generate_man_pages, devtools/print_nonascii_lines, doc/Makefile.am, doc/README.doc, doc/definitions.dox, doc/devref-language-interface.tex, doc/devref.tex, doc/libppl.3, doc/libppl_c.3, doc/ppl-config.1, doc/ppl-config_extra_man_text, doc/ppl.sty, doc/user-language-interface.tex, doc/user.tex, fedora/ppl.hh, fedora/ppl_c.h, fedora/pwl.hh, instchk.hh, interfaces/C/C_interface.dox, interfaces/C/Makefile.am, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.defs.hh, interfaces/C/ppl_c_implementation_common.inlines.hh, interfaces/C/ppl_c_version.h.in, interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_cc_files.m4, interfaces/C/ppl_interface_generator_c_h.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/ppl_interface_generator_c_hh_files.m4, interfaces/C/ppl_interface_generator_c_procedure_generators.m4, interfaces/C/tests/Makefile.am, interfaces/C/tests/formatted_output.c, interfaces/C/tests/pip_test.c, interfaces/C/tests/ppl_c_test.cc, interfaces/C/tests/ppl_c_test.h, interfaces/C/tests/print_to_buffer.c, interfaces/C/tests/print_to_buffer.h, interfaces/C/tests/watchdog1.c, interfaces/C/tests/weightwatch1.c, interfaces/Java/Makefile.am, interfaces/Java/jni/Makefile.am, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_interface_generator_java_classes_cc_files.m 4, interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Artificial_Parameter.java, interfaces/Java/parma_polyhedra_library/Artificial_Parameter_Sequen ce.java, interfaces/Java/parma_polyhedra_library/Bounded_Integer_Type_Overfl ow.java, interfaces/Java/parma_polyhedra_library/Bounded_Integer_Type_Repres entation.java, interfaces/Java/parma_polyhedra_library/Bounded_Integer_Type_Width. java, interfaces/Java/parma_polyhedra_library/By_Reference.java, interfaces/Java/parma_polyhedra_library/Coefficient.java, interfaces/Java/parma_polyhedra_library/Complexity_Class.java, interfaces/Java/parma_polyhedra_library/Congruence.java, interfaces/Java/parma_polyhedra_library/Congruence_System.java, interfaces/Java/parma_polyhedra_library/Constraint.java, interfaces/Java/parma_polyhedra_library/Constraint_System.java, interfaces/Java/parma_polyhedra_library/Control_Parameter_Name.java , interfaces/Java/parma_polyhedra_library/Control_Parameter_Value.jav a, interfaces/Java/parma_polyhedra_library/Degenerate_Element.java, interfaces/Java/parma_polyhedra_library/Domain_Error_Exception.java , interfaces/Java/parma_polyhedra_library/Fake_Class_for_Doxygen.java , interfaces/Java/parma_polyhedra_library/Generator.java, interfaces/Java/parma_polyhedra_library/Generator_System.java, interfaces/Java/parma_polyhedra_library/Generator_Type.java, interfaces/Java/parma_polyhedra_library/Grid_Generator.java, interfaces/Java/parma_polyhedra_library/Grid_Generator_System.java, interfaces/Java/parma_polyhedra_library/Grid_Generator_Type.java, interfaces/Java/parma_polyhedra_library/IO.java, interfaces/Java/parma_polyhedra_library/Invalid_Argument_Exception. java, interfaces/Java/parma_polyhedra_library/Length_Error_Exception.java , interfaces/Java/parma_polyhedra_library/Linear_Expression.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Coefficie nt.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Differenc e.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Sum.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Times.jav a, interfaces/Java/parma_polyhedra_library/Linear_Expression_Unary_Min us.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Variable. java, interfaces/Java/parma_polyhedra_library/Logic_Error_Exception.java, interfaces/Java/parma_polyhedra_library/MIP_Problem.java, interfaces/Java/parma_polyhedra_library/MIP_Problem_Status.java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/Optimization_Mode.java, interfaces/Java/parma_polyhedra_library/Overflow_Error_Exception.ja va, interfaces/Java/parma_polyhedra_library/PIP_Decision_Node.java, interfaces/Java/parma_polyhedra_library/PIP_Problem.java, interfaces/Java/parma_polyhedra_library/PIP_Problem_Control_Paramet er_Name.java, interfaces/Java/parma_polyhedra_library/PIP_Problem_Control_Paramet er_Value.java, interfaces/Java/parma_polyhedra_library/PIP_Problem_Status.java, interfaces/Java/parma_polyhedra_library/PIP_Solution_Node.java, interfaces/Java/parma_polyhedra_library/PIP_Tree_Node.java, interfaces/Java/parma_polyhedra_library/PPL_Object.java, interfaces/Java/parma_polyhedra_library/Pair.java, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a, interfaces/Java/parma_polyhedra_library/Partial_Function.java, interfaces/Java/parma_polyhedra_library/Poly_Con_Relation.java, interfaces/Java/parma_polyhedra_library/Poly_Gen_Relation.java, interfaces/Java/parma_polyhedra_library/Relation_Symbol.java, interfaces/Java/parma_polyhedra_library/Timeout_Exception.java, interfaces/Java/parma_polyhedra_library/Variable.java, interfaces/Java/parma_polyhedra_library/Variables_Set.java, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java.m4, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/Java/ppl_interface_generator_java_procedure_generators.m 4, interfaces/Java/tests/C_Polyhedron_test1.java, interfaces/Java/tests/MIP_Problem_test1.java, interfaces/Java/tests/Makefile.am, interfaces/Java/tests/NNC_Polyhedron_test1.java, interfaces/Java/tests/PIP_Problem_test1.java, interfaces/Java/tests/PPL_Test.java, interfaces/Java/tests/Parma_Polyhedra_Library_test1.java, interfaces/Java/tests/Parma_Polyhedra_Library_test2.java, interfaces/Java/tests/Test_Executor.java, interfaces/Java/tests/ppl_interface_generator_java_test_java.m4, interfaces/Java/tests/ppl_interface_generator_java_test_java_code.m 4, interfaces/Java/tests/ppl_java_tests_common, interfaces/Makefile.am, interfaces/OCaml/Makefile.am, interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_cc_files.m4, interfaces/OCaml/ppl_interface_generator_ocaml_hh_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_hh_files.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_procedure_generators .m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_common.inlines.hh, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/Makefile.am, interfaces/OCaml/tests/ppl_interface_generator_ocaml_test_ml.m4, interfaces/OCaml/tests/ppl_interface_generator_ocaml_test_ml_code.m 4, interfaces/OCaml/tests/ppl_ocaml_tests_common, interfaces/OCaml/tests/test1.ml, interfaces/Prolog/Ciao/Makefile.am, interfaces/Prolog/Ciao/ciao_cfli.hh, interfaces/Prolog/Ciao/ciao_clpq.pl, interfaces/Prolog/Ciao/ciao_clpq2.pl, interfaces/Prolog/Ciao/ciao_efli.cc, interfaces/Prolog/Ciao/ciao_efli.hh, interfaces/Prolog/Ciao/ciao_pl_check.pl, interfaces/Prolog/Ciao/ppl_interface_generator_ciao_pl.m4, interfaces/Prolog/Ciao/ppl_interface_generator_ciao_prolog_generate d_test_pl.m4, interfaces/Prolog/Ciao/ppl_prolog_sysdep.hh, interfaces/Prolog/GNU/Makefile.am, interfaces/Prolog/GNU/gnu_pl_check.pl, interfaces/Prolog/GNU/gnu_prolog_generated_test.pl, interfaces/Prolog/GNU/gp_clpq.pl, interfaces/Prolog/GNU/gprolog_cfli.hh, interfaces/Prolog/GNU/gprolog_efli.cc, interfaces/Prolog/GNU/gprolog_efli.hh, interfaces/Prolog/GNU/ppl_interface_generator_gprolog_pl.m4, interfaces/Prolog/GNU/ppl_prolog_sysdep.hh, interfaces/Prolog/Makefile.am, interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/SICStus/Makefile.am, interfaces/Prolog/SICStus/ppl_interface_generator_sicstus_sd_cc.m4, interfaces/Prolog/SICStus/ppl_prolog_sysdep.hh, interfaces/Prolog/SICStus/ppl_sicstus.pl, interfaces/Prolog/SICStus/sicstus_cfli.cc, interfaces/Prolog/SICStus/sicstus_cfli.h, interfaces/Prolog/SICStus/sicstus_cfli.ic, interfaces/Prolog/SICStus/sicstus_efli.cc, interfaces/Prolog/SICStus/sicstus_efli.hh, interfaces/Prolog/SICStus/sp_clpq.pl, interfaces/Prolog/SICStus/sp_pl_check.pl, interfaces/Prolog/SICStus/sp_prolog_generated_test.pl, interfaces/Prolog/SWI/Makefile.am, interfaces/Prolog/SWI/pl_clpq.cc, interfaces/Prolog/SWI/pl_clpq.pl, interfaces/Prolog/SWI/ppl_interface_generator_swiprolog_cc.m4, interfaces/Prolog/SWI/ppl_pl.cc, interfaces/Prolog/SWI/ppl_prolog_sysdep.hh, interfaces/Prolog/SWI/ppl_swiprolog.pl, interfaces/Prolog/SWI/swi_cfli.hh, interfaces/Prolog/SWI/swi_efli.cc, interfaces/Prolog/SWI/swi_efli.hh, interfaces/Prolog/SWI/swi_pl_check.pl, interfaces/Prolog/SWI/swi_prolog_generated_test.pl, interfaces/Prolog/XSB/Makefile.am, interfaces/Prolog/XSB/ppl_interface_generator_xsb_H.m4, interfaces/Prolog/XSB/ppl_interface_generator_xsb_cc.m4, interfaces/Prolog/XSB/ppl_interface_generator_xsb_hh.m4, interfaces/Prolog/XSB/ppl_interface_generator_xsb_prolog_generated_ test_P.m4, interfaces/Prolog/XSB/ppl_prolog_sysdep.hh, interfaces/Prolog/XSB/xsb_cfli.hh, interfaces/Prolog/XSB/xsb_clpq.P, interfaces/Prolog/XSB/xsb_clpq2.P, interfaces/Prolog/XSB/xsb_efli.cc, interfaces/Prolog/XSB/xsb_efli.hh, interfaces/Prolog/XSB/xsb_pl_check.P, interfaces/Prolog/YAP/Makefile.am, interfaces/Prolog/YAP/ppl_interface_generator_yap_cc.m4, interfaces/Prolog/YAP/ppl_prolog_sysdep.hh, interfaces/Prolog/YAP/ppl_yap.pl, interfaces/Prolog/YAP/yap_cfli.hh, interfaces/Prolog/YAP/yap_clpq.pl, interfaces/Prolog/YAP/yap_clpq2.pl, interfaces/Prolog/YAP/yap_efli.cc, interfaces/Prolog/YAP/yap_efli.hh, interfaces/Prolog/YAP/yap_pl_check.pl, interfaces/Prolog/YAP/yap_prolog_generated_test.pl, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_files.m4, interfaces/Prolog/ppl_interface_generator_prolog_dox.m4, interfaces/Prolog/ppl_interface_generator_prolog_dox_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_files.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_interface_generator_prolog_systems.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/ppl_prolog_common.inlines.hh, interfaces/Prolog/ppl_prolog_sysdep_dox, interfaces/Prolog/ppl_prolog_sysindep_dox, interfaces/Prolog/tests/Makefile.am, interfaces/Prolog/tests/clpq.pl, interfaces/Prolog/tests/clpq2.pl, interfaces/Prolog/tests/expected_clpq2_int16, interfaces/Prolog/tests/expected_clpq2_int16_a, interfaces/Prolog/tests/expected_clpq2_int32, interfaces/Prolog/tests/expected_clpq2_int32_a, interfaces/Prolog/tests/expected_clpq2_int64, interfaces/Prolog/tests/expected_clpq2_int64_a, interfaces/Prolog/tests/expected_clpq2_int8, interfaces/Prolog/tests/expected_clpq2_int8_a, interfaces/Prolog/tests/expected_clpq2_mpz, interfaces/Prolog/tests/expected_clpq2_mpz_a, interfaces/Prolog/tests/expected_clpq_int16, interfaces/Prolog/tests/expected_clpq_int16_a, interfaces/Prolog/tests/expected_clpq_int32, interfaces/Prolog/tests/expected_clpq_int32_a, interfaces/Prolog/tests/expected_clpq_int64, interfaces/Prolog/tests/expected_clpq_int64_a, interfaces/Prolog/tests/expected_clpq_int8, interfaces/Prolog/tests/expected_clpq_int8_a, interfaces/Prolog/tests/expected_clpq_mpz, interfaces/Prolog/tests/expected_clpq_mpz_a, interfaces/Prolog/tests/pl_check.pl, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl.m4, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4, interfaces/Prolog/tests/ppl_prolog_generated_test_common.pl, interfaces/Python/ppl_py.cc, interfaces/Python/ppl_py.py, interfaces/interfaced_boxes.hh, interfaces/marked_pointers.hh, interfaces/ppl_interface_generator_common.m4, interfaces/ppl_interface_generator_common_dat.m4, interfaces/ppl_interface_generator_common_procedure_generators.m4, interfaces/ppl_interface_generator_copyright, m4/Makefile.am, m4/ac_check_ciao.m4, m4/ac_check_fpu_control.m4, m4/ac_check_gmp.m4, m4/ac_check_sicstus_prolog.m4, m4/ac_check_swi_prolog.m4, m4/ac_check_xsb_prolog.m4, m4/ac_check_yap.m4, m4/ac_cxx_attribute_weak.m4, m4/ac_cxx_double_binary_format.m4, m4/ac_cxx_double_exact_output.m4, m4/ac_cxx_flexible_arrays.m4, m4/ac_cxx_float_binary_format.m4, m4/ac_cxx_float_exact_output.m4, m4/ac_cxx_ieee_inexact_flag.m4, m4/ac_cxx_limit_memory.m4, m4/ac_cxx_long_double_binary_format.m4, m4/ac_cxx_long_double_exact_output.m4, m4/ac_cxx_proper_long_double.m4, m4/ac_cxx_remainder_bug.m4, m4/ac_prog_jar.m4, m4/ac_prog_java.m4, m4/ac_prog_javac.m4, m4/ac_prog_javah.m4, m4/ac_text_md5sum.m4, m4/ppl.m4, m4/ppl_c.m4, src/Affine_Space.cc, src/Affine_Space.defs.hh, src/Affine_Space.inlines.hh, src/Affine_Space.types.hh, src/Any_Pointset.defs.hh, src/Any_Pointset.inlines.hh, src/Any_Pointset.types.hh, src/Ask_Tell.defs.hh, src/Ask_Tell.inlines.hh, src/Ask_Tell.templates.hh, src/Ask_Tell.types.hh, src/BDS_Status.idefs.hh, src/BDS_Status.inlines.hh, src/BD_Shape.cc, src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh, src/BD_Shape.types.hh, src/BHRZ03_Certificate.cc, src/BHRZ03_Certificate.defs.hh, src/BHRZ03_Certificate.inlines.hh, src/BHRZ03_Certificate.types.hh, src/Bit_Matrix.cc, src/Bit_Matrix.defs.hh, src/Bit_Matrix.inlines.hh, src/Bit_Matrix.types.hh, src/Bit_Row.cc, src/Bit_Row.defs.hh, src/Bit_Row.inlines.hh, src/Bit_Row.types.hh, src/Boundary.defs.hh, src/Box.cc, src/Box.defs.hh, src/Box.inlines.hh, src/Box.templates.hh, src/Box.types.hh, src/Box_Status.idefs.hh, src/Box_Status.inlines.hh, src/C_Integer.hh, src/C_Polyhedron.cc, src/C_Polyhedron.defs.hh, src/C_Polyhedron.inlines.hh, src/C_Polyhedron.types.hh, src/Checked_Number.cc, src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh, src/Checked_Number.templates.hh, src/Checked_Number.types.hh, src/Coefficient.cc, src/Coefficient.defs.hh, src/Coefficient.inlines.hh, src/Coefficient.types.hh, src/Coefficient_traits_template.hh, src/Congruence.cc, src/Congruence.defs.hh, src/Congruence.inlines.hh, src/Congruence.types.hh, src/Congruence_System.cc, src/Congruence_System.defs.hh, src/Congruence_System.inlines.hh, src/Congruence_System.types.hh, src/Constraint.cc, src/Constraint.defs.hh, src/Constraint.inlines.hh, src/Constraint.types.hh, src/Constraint_System.cc, src/Constraint_System.defs.hh, src/Constraint_System.inlines.hh, src/Constraint_System.types.hh, src/DB_Matrix.defs.hh, src/DB_Matrix.inlines.hh, src/DB_Matrix.templates.hh, src/DB_Matrix.types.hh, src/DB_Row.defs.hh, src/DB_Row.inlines.hh, src/DB_Row.templates.hh, src/DB_Row.types.hh, src/Determinate.defs.hh, src/Determinate.inlines.hh, src/Determinate.types.hh, src/Float.cc, src/Float.defs.hh, src/Float.inlines.hh, src/GMP_Integer.defs.hh, src/GMP_Integer.inlines.hh, src/GMP_Integer.types.hh, src/Generator.cc, src/Generator.defs.hh, src/Generator.inlines.hh, src/Generator.types.hh, src/Generator_System.cc, src/Generator_System.defs.hh, src/Generator_System.inlines.hh, src/Generator_System.types.hh, src/Grid.defs.hh, src/Grid.inlines.hh, src/Grid.templates.hh, src/Grid.types.hh, src/Grid_Certificate.cc, src/Grid_Certificate.defs.hh, src/Grid_Certificate.inlines.hh, src/Grid_Certificate.types.hh, src/Grid_Generator.cc, src/Grid_Generator.defs.hh, src/Grid_Generator.inlines.hh, src/Grid_Generator.types.hh, src/Grid_Generator_System.cc, src/Grid_Generator_System.defs.hh, src/Grid_Generator_System.inlines.hh, src/Grid_Generator_System.types.hh, src/Grid_Status.cc, src/Grid_Status.idefs.hh, src/Grid_Status.inlines.hh, src/Grid_chdims.cc, src/Grid_conversion.cc, src/Grid_nonpublic.cc, src/Grid_public.cc, src/Grid_simplify.cc, src/Grid_widenings.cc, src/H79_Certificate.cc, src/H79_Certificate.defs.hh, src/H79_Certificate.inlines.hh, src/H79_Certificate.types.hh, src/Has_Assign_Or_Swap.hh, src/Init.cc, src/Init.defs.hh, src/Init.inlines.hh, src/Init.types.hh, src/Interval.defs.hh, src/Interval.inlines.hh, src/Interval.templates.hh, src/Interval.types.hh, src/Interval_Info.defs.hh, src/Interval_Info.inlines.hh, src/Interval_Info.types.hh, src/Interval_Restriction.defs.hh, src/Linear_Expression.cc, src/Linear_Expression.defs.hh, src/Linear_Expression.inlines.hh, src/Linear_Expression.types.hh, src/Linear_Row.cc, src/Linear_Row.defs.hh, src/Linear_Row.inlines.hh, src/Linear_Row.types.hh, src/Linear_System.cc, src/Linear_System.defs.hh, src/Linear_System.inlines.hh, src/Linear_System.types.hh, src/MIP_Problem.cc, src/MIP_Problem.defs.hh, src/MIP_Problem.inlines.hh, src/MIP_Problem.templates.hh, src/MIP_Problem.types.hh, src/Makefile.am, src/Matrix.defs.hh, src/Matrix.types.hh, src/NNC_Polyhedron.cc, src/NNC_Polyhedron.defs.hh, src/NNC_Polyhedron.inlines.hh, src/NNC_Polyhedron.types.hh, src/Numeric_Format.defs.hh, src/OR_Matrix.defs.hh, src/OR_Matrix.inlines.hh, src/OR_Matrix.templates.hh, src/OR_Matrix.types.hh, src/Octagonal_Shape.cc, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh, src/Octagonal_Shape.types.hh, src/Og_Status.idefs.hh, src/Og_Status.inlines.hh, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, src/PIP_Problem.types.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh, src/PIP_Tree.types.hh, src/Partial_Function.cc, src/Partial_Function.defs.hh, src/Partial_Function.inlines.hh, src/Partial_Function.types.hh, src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, src/Partially_Reduced_Product.templates.hh, src/Partially_Reduced_Product.types.hh, src/Ph_Status.cc, src/Ph_Status.idefs.hh, src/Ph_Status.inlines.hh, src/Pointset_Ask_Tell.cc, src/Pointset_Ask_Tell.defs.hh, src/Pointset_Ask_Tell.inlines.hh, src/Pointset_Ask_Tell.templates.hh, src/Pointset_Ask_Tell.types.hh, src/Pointset_Powerset.cc, src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.inlines.hh, src/Pointset_Powerset.templates.hh, src/Pointset_Powerset.types.hh, src/Poly_Con_Relation.cc, src/Poly_Con_Relation.defs.hh, src/Poly_Con_Relation.inlines.hh, src/Poly_Con_Relation.types.hh, src/Poly_Gen_Relation.cc, src/Poly_Gen_Relation.defs.hh, src/Poly_Gen_Relation.inlines.hh, src/Poly_Gen_Relation.types.hh, src/Polyhedron.defs.hh, src/Polyhedron.inlines.hh, src/Polyhedron.templates.hh, src/Polyhedron.types.hh, src/Polyhedron_chdims.cc, src/Polyhedron_nonpublic.cc, src/Polyhedron_public.cc, src/Polyhedron_widenings.cc, src/Powerset.defs.hh, src/Powerset.inlines.hh, src/Powerset.templates.hh, src/Powerset.types.hh, src/Ptr_Iterator.defs.hh, src/Ptr_Iterator.inlines.hh, src/Ptr_Iterator.types.hh, src/Rational_Box.hh, src/Rational_Interval.hh, src/Result.defs.hh, src/Result.inlines.hh, src/Rounding_Dir.defs.hh, src/Rounding_Dir.inlines.hh, src/Row.defs.hh, src/Row.types.hh, src/Scalar_Products.cc, src/Scalar_Products.defs.hh, src/Scalar_Products.inlines.hh, src/Scalar_Products.types.hh, src/Slow_Copy.hh, src/Temp.defs.hh, src/Temp.inlines.hh, src/Temp.templates.hh, src/Topology.hh, src/Variable.cc, src/Variable.defs.hh, src/Variable.inlines.hh, src/Variable.types.hh, src/Variables_Set.cc, src/Variables_Set.defs.hh, src/Variables_Set.inlines.hh, src/Variables_Set.types.hh, src/WRD_coefficient_types.defs.hh, src/WRD_coefficient_types.inlines.hh, src/Weight_Profiler.cc, src/Weight_Profiler.defs.hh, src/Widening_Function.defs.hh, src/Widening_Function.inlines.hh, src/Widening_Function.types.hh, src/algorithms.hh, src/assert.hh, src/assign_or_swap.hh, src/c_streambuf.cc, src/c_streambuf.defs.hh, src/c_streambuf.inlines.hh, src/c_streambuf.types.hh, src/checked.cc, src/checked.defs.hh, src/checked.inlines.hh, src/checked_ext.defs.hh, src/checked_ext.inlines.hh, src/checked_float.inlines.hh, src/checked_int.inlines.hh, src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh, src/checked_numeric_limits.hh, src/compiler.hh, src/conversion.cc, src/distances.defs.hh, src/distances.inlines.hh, src/distances.types.hh, src/fpu-c99.inlines.hh, src/fpu-ia32.cc, src/fpu-ia32.inlines.hh, src/fpu-none.inlines.hh, src/fpu-sparc.inlines.hh, src/fpu.defs.hh, src/fpu.types.hh, src/globals.cc, src/globals.defs.hh, src/globals.inlines.hh, src/globals.types.hh, src/initializer.hh, src/intervals.defs.hh, src/iterator_to_const.defs.hh, src/iterator_to_const.inlines.hh, src/iterator_to_const.types.hh, src/math_utilities.defs.hh, src/math_utilities.inlines.hh, src/max_space_dimension.hh, src/meta_programming.hh, src/minimize.cc, src/mp_std_bits.cc, src/mp_std_bits.defs.hh, src/mp_std_bits.inlines.hh, src/namespaces.hh, src/ppl-config.cc.in, src/ppl_header.hh, src/simplify.cc, src/stdiobuf.cc, src/stdiobuf.defs.hh, src/stdiobuf.inlines.hh, src/stdiobuf.types.hh, src/swapping_sort.icc, src/termination.cc, src/termination.defs.hh, src/termination.templates.hh, src/version.cc, src/version.hh.in, src/wrap_assign.hh, src/wrap_string.cc, src/wrap_string.hh, tests/Ask_Tell/Makefile.am, tests/Ask_Tell/append1.cc, tests/BD_Shape/Makefile.am, tests/BD_Shape/addconstraints1.cc, tests/BD_Shape/addspacedims1.cc, tests/BD_Shape/affinedimension1.cc, tests/BD_Shape/affineimage1.cc, tests/BD_Shape/affineimage2.cc, tests/BD_Shape/affinepreimage1.cc, tests/BD_Shape/ascii_dump_load1.cc, tests/BD_Shape/bgp99extrapolation1.cc, tests/BD_Shape/bhmz05widening1.cc, tests/BD_Shape/bhz03widening1.cc, tests/BD_Shape/bounded1.cc, tests/BD_Shape/boundedaffineimage1.cc, tests/BD_Shape/boundedaffinepreimage1.cc, tests/BD_Shape/bounds1.cc, tests/BD_Shape/cc76extrapolation1.cc, tests/BD_Shape/cc76narrowing1.cc, tests/BD_Shape/closure1.cc, tests/BD_Shape/concatenate1.cc, tests/BD_Shape/congruences1.cc, tests/BD_Shape/constrains1.cc, tests/BD_Shape/constraints1.cc, tests/BD_Shape/contains1.cc, tests/BD_Shape/containsintegerpoint1.cc, tests/BD_Shape/difference1.cc, tests/BD_Shape/discrete1.cc, tests/BD_Shape/disjoint1.cc, tests/BD_Shape/dropsomenonintegerpoints1.cc, tests/BD_Shape/empty1.cc, tests/BD_Shape/equality1.cc, tests/BD_Shape/expandspacedim1.cc, tests/BD_Shape/foldspacedims1.cc, tests/BD_Shape/frequency1.cc, tests/BD_Shape/frombdshape1.cc, tests/BD_Shape/frombox1.cc, tests/BD_Shape/fromgensys1.cc, tests/BD_Shape/fromgrid1.cc, tests/BD_Shape/fromoctagonalshape1.cc, tests/BD_Shape/frompolyhedron1.cc, tests/BD_Shape/fromspacedim1.cc, tests/BD_Shape/generalizedaffineimage1.cc, tests/BD_Shape/generalizedaffineimage2.cc, tests/BD_Shape/generalizedaffinepreimage1.cc, tests/BD_Shape/generalizedaffinepreimage2.cc, tests/BD_Shape/generalizedaffinepreimage3.cc, tests/BD_Shape/geomcovers1.cc, tests/BD_Shape/h79widening1.cc, tests/BD_Shape/integerupperboundifexact1.cc, tests/BD_Shape/intersection1.cc, tests/BD_Shape/limitedbhmz05extrapolation1.cc, tests/BD_Shape/limitedcc76extrapolation1.cc, tests/BD_Shape/limitedh79extrapolation1.cc, tests/BD_Shape/mapspacedims1.cc, tests/BD_Shape/max_min1.cc, tests/BD_Shape/max_min2.cc, tests/BD_Shape/maxspacedim1.cc, tests/BD_Shape/membytes1.cc, tests/BD_Shape/minconstraints1.cc, tests/BD_Shape/relations1.cc, tests/BD_Shape/relations2.cc, tests/BD_Shape/relations3.cc, tests/BD_Shape/relations4.cc, tests/BD_Shape/removespacedims1.cc, tests/BD_Shape/run_tests, tests/BD_Shape/simplifyusingcontext1.cc, tests/BD_Shape/timeelapse1.cc, tests/BD_Shape/unconstrain1.cc, tests/BD_Shape/universe1.cc, tests/BD_Shape/upperbound1.cc, tests/BD_Shape/upperboundifexact1.cc, tests/BD_Shape/wrap1.cc, tests/BD_Shape/writebdshape1.cc, tests/Box/Makefile.am, tests/Box/addconstraints1.cc, tests/Box/addspacedims1.cc, tests/Box/affinedimension1.cc, tests/Box/affineimage1.cc, tests/Box/affinepreimage1.cc, tests/Box/ascii_dump_load1.cc, tests/Box/bgp99extrapolation1.cc, tests/Box/bhz03widening1.cc, tests/Box/bounded1.cc, tests/Box/boundedaffineimage1.cc, tests/Box/boundedaffinepreimage1.cc, tests/Box/cc76narrowing1.cc, tests/Box/cc76widening.cc, tests/Box/concatenate1.cc, tests/Box/congruences1.cc, tests/Box/constrains1.cc, tests/Box/constraints1.cc, tests/Box/contains1.cc, tests/Box/containsintegerpoint1.cc, tests/Box/difference1.cc, tests/Box/discrete1.cc, tests/Box/disjoint1.cc, tests/Box/empty1.cc, tests/Box/equality1.cc, tests/Box/expandspacedim1.cc, tests/Box/foldspacedims1.cc, tests/Box/frequency1.cc, tests/Box/frombdshape1.cc, tests/Box/frombox1.cc, tests/Box/fromgensys1.cc, tests/Box/fromgrid1.cc, tests/Box/frompartiallyreducedproduct1.cc, tests/Box/frompolyhedron1.cc, tests/Box/frompolyhedron2.cc, tests/Box/fromspacedim1.cc, tests/Box/generalizedaffineimage1.cc, tests/Box/generalizedaffineimage2.cc, tests/Box/generalizedaffinepreimage1.cc, tests/Box/geomcovers1.cc, tests/Box/intersection1.cc, tests/Box/interval1.cc, tests/Box/limitedcc76extrapolation1.cc, tests/Box/mapspacedims1.cc, tests/Box/max_min1.cc, tests/Box/maxspacedim1.cc, tests/Box/membytes1.cc, tests/Box/minconstraints1.cc, tests/Box/propagateconstraints1.cc, tests/Box/propagateconstraints2.cc, tests/Box/refinewithcongruence1.cc, tests/Box/refinewithcongruences1.cc, tests/Box/refinewithconstraint1.cc, tests/Box/refinewithconstraint2.cc, tests/Box/refinewithconstraints1.cc, tests/Box/refinewithconstraints2.cc, tests/Box/relations1.cc, tests/Box/relations2.cc, tests/Box/relations3.cc, tests/Box/relations4.cc, tests/Box/removespacedims1.cc, tests/Box/run_tests, tests/Box/simplifyusingcontext1.cc, tests/Box/timeelapse1.cc, tests/Box/topclosed1.cc, tests/Box/unconstrain1.cc, tests/Box/universe1.cc, tests/Box/upperbound1.cc, tests/Box/upperboundifexact1.cc, tests/Box/wrap1.cc, tests/Box/writebox1.cc, tests/Grid/Makefile.am, tests/Grid/addcongruence1.cc, tests/Grid/addcongruences1.cc, tests/Grid/addconstraint1.cc, tests/Grid/addconstraints1.cc, tests/Grid/addgenerator1.cc, tests/Grid/addgenerators1.cc, tests/Grid/addspacedims1.cc, tests/Grid/affinedim1.cc, tests/Grid/affineimage1.cc, tests/Grid/affineimage2.cc, tests/Grid/affinepreimage1.cc, tests/Grid/affinepreimage2.cc, tests/Grid/approximatepartition1.cc, tests/Grid/asciidumpload1.cc, tests/Grid/asciidumpload2.cc, tests/Grid/asciidumpload3.cc, tests/Grid/asciidumpload4.cc, tests/Grid/asciidumpload5.cc, tests/Grid/asciidumpload6.cc, tests/Grid/bhz03widening1.cc, tests/Grid/bounded1.cc, tests/Grid/boundedaffineimage1.cc, tests/Grid/boundedaffinepreimage1.cc, tests/Grid/boundingbox1.cc, tests/Grid/bounds1.cc, tests/Grid/certificate1.cc, tests/Grid/concatenate1.cc, tests/Grid/congruence1.cc, tests/Grid/congruences1.cc, tests/Grid/congruences2.cc, tests/Grid/constraints1.cc, tests/Grid/contains1.cc, tests/Grid/containsintegerpoint1.cc, tests/Grid/discrete1.cc, tests/Grid/disjoint1.cc, tests/Grid/dropnonintegerpoints1.cc, tests/Grid/equals1.cc, tests/Grid/expandspacedim1.cc, tests/Grid/foldspacedims1.cc, tests/Grid/frequency1.cc, tests/Grid/frombdshape1.cc, tests/Grid/frombox1.cc, tests/Grid/fromgrid1.cc, tests/Grid/fromoctagonalshape1.cc, tests/Grid/frompolyhedron1.cc, tests/Grid/generalizedaffineimage1.cc, tests/Grid/generalizedaffineimage2.cc, tests/Grid/generalizedaffineimage3.cc, tests/Grid/generalizedaffinepreimage1.cc, tests/Grid/generalizedaffinepreimage2.cc, tests/Grid/generalizedaffinepreimage3.cc, tests/Grid/generator1.cc, tests/Grid/generators1.cc, tests/Grid/generators2.cc, tests/Grid/grid1.cc, tests/Grid/grid2.cc, tests/Grid/grid3.cc, tests/Grid/griddifference1.cc, tests/Grid/intersection1.cc, tests/Grid/isempty1.cc, tests/Grid/isuniverse1.cc, tests/Grid/limitedextrapolation1.cc, tests/Grid/limitedextrapolation2.cc, tests/Grid/limitedextrapolation3.cc, tests/Grid/mapspacedims1.cc, tests/Grid/maxmin1.cc, tests/Grid/membytes1.cc, tests/Grid/mincongruences1.cc, tests/Grid/mingenerators1.cc, tests/Grid/outputoperator1.cc, tests/Grid/outputoperator2.cc, tests/Grid/outputoperator3.cc, tests/Grid/partition1.cc, tests/Grid/powersetdifference1.cc, tests/Grid/powersetgeometricallycovers1.cc, tests/Grid/powersetgeometricallyequals1.cc, tests/Grid/refinewithcongruences1.cc, tests/Grid/refinewithconstraints1.cc, tests/Grid/relations1.cc, tests/Grid/relations2.cc, tests/Grid/relations3.cc, tests/Grid/removespacedims1.cc, tests/Grid/removespacedims2.cc, tests/Grid/simplifyusingcontext1.cc, tests/Grid/timeelapse1.cc, tests/Grid/topclosed1.cc, tests/Grid/topclosure1.cc, tests/Grid/unconstrain1.cc, tests/Grid/upperbound1.cc, tests/Grid/upperbound2.cc, tests/Grid/widening1.cc, tests/Grid/widening2.cc, tests/Grid/widening3.cc, tests/Grid/wrap1.cc, tests/Grid/writecongruencesystem.cc, tests/MIP_Problem/Makefile.am, tests/MIP_Problem/ascii_dump_load1.cc, tests/MIP_Problem/exceptions1.cc, tests/MIP_Problem/mipproblem1.cc, tests/MIP_Problem/mipproblem2.cc, tests/MIP_Problem/mipproblem3.cc, tests/Makefile.am, tests/Octagonal_Shape/Makefile.am, tests/Octagonal_Shape/addspacedims1.cc, tests/Octagonal_Shape/affinedimension1.cc, tests/Octagonal_Shape/affineimage1.cc, tests/Octagonal_Shape/affineimage2.cc, tests/Octagonal_Shape/affinepreimage1.cc, tests/Octagonal_Shape/affinepreimage2.cc, tests/Octagonal_Shape/ascii_dump_load1.cc, tests/Octagonal_Shape/bhmz05widening1.cc, tests/Octagonal_Shape/bhz03widening1.cc, tests/Octagonal_Shape/bounded1.cc, tests/Octagonal_Shape/boundedaffineimage1.cc, tests/Octagonal_Shape/boundedaffinepreimage1.cc, tests/Octagonal_Shape/bounds1.cc, tests/Octagonal_Shape/cc76extrapolation1.cc, tests/Octagonal_Shape/cc76narrowing1.cc, tests/Octagonal_Shape/chinainit.cc, tests/Octagonal_Shape/concatenate1.cc, tests/Octagonal_Shape/congruences1.cc, tests/Octagonal_Shape/constrains1.cc, tests/Octagonal_Shape/constraints1.cc, tests/Octagonal_Shape/contains1.cc, tests/Octagonal_Shape/containsintegerpoint1.cc, tests/Octagonal_Shape/difference1.cc, tests/Octagonal_Shape/discrete1.cc, tests/Octagonal_Shape/disjoint1.cc, tests/Octagonal_Shape/dropsomenonintegerpoints1.cc, tests/Octagonal_Shape/empty1.cc, tests/Octagonal_Shape/expandspacedim1.cc, tests/Octagonal_Shape/foldspacedims1.cc, tests/Octagonal_Shape/frequency1.cc, tests/Octagonal_Shape/frombdshape1.cc, tests/Octagonal_Shape/frombox1.cc, tests/Octagonal_Shape/fromgensys1.cc, tests/Octagonal_Shape/fromgrid1.cc, tests/Octagonal_Shape/fromoctagonalshape1.cc, tests/Octagonal_Shape/frompolyhedron1.cc, tests/Octagonal_Shape/fromspacedim1.cc, tests/Octagonal_Shape/generalizedaffineimage1.cc, tests/Octagonal_Shape/generalizedaffineimage2.cc, tests/Octagonal_Shape/generalizedaffineimage3.cc, tests/Octagonal_Shape/generalizedaffineimage4.cc, tests/Octagonal_Shape/generalizedaffineimage5.cc, tests/Octagonal_Shape/generalizedaffinepreimage1.cc, tests/Octagonal_Shape/generalizedaffinepreimage2.cc, tests/Octagonal_Shape/generalizedaffinepreimage3.cc, tests/Octagonal_Shape/generalizedaffinepreimage4.cc, tests/Octagonal_Shape/integerupperboundifexact1.cc, tests/Octagonal_Shape/intersection1.cc, tests/Octagonal_Shape/limitedbhmz05extrapolation1.cc, tests/Octagonal_Shape/limitedcc76extrapolation1.cc, tests/Octagonal_Shape/mapspacedims1.cc, tests/Octagonal_Shape/max_min1.cc, tests/Octagonal_Shape/max_min2.cc, tests/Octagonal_Shape/maxspacedim1.cc, tests/Octagonal_Shape/membytes1.cc, tests/Octagonal_Shape/minconstraints1.cc, tests/Octagonal_Shape/relatwithcons1.cc, tests/Octagonal_Shape/relatwithcons2.cc, tests/Octagonal_Shape/relatwithcons3.cc, tests/Octagonal_Shape/relatwithgen1.cc, tests/Octagonal_Shape/removespacedims1.cc, tests/Octagonal_Shape/run_tests, tests/Octagonal_Shape/simplifyusingcontext1.cc, tests/Octagonal_Shape/timeelapse1.cc, tests/Octagonal_Shape/unconstrain1.cc, tests/Octagonal_Shape/universe1.cc, tests/Octagonal_Shape/upperbound1.cc, tests/Octagonal_Shape/upperboundifexact1.cc, tests/Octagonal_Shape/wrap1.cc, tests/Octagonal_Shape/writeoctagon1.cc, tests/PIP_Problem/Makefile.am, tests/PIP_Problem/ascii_dump_load1.cc, tests/PIP_Problem/exceptions1.cc, tests/PIP_Problem/pipproblem1.cc, tests/PIP_Problem/pipproblem2.cc, tests/PIP_Problem/pipproblem3.cc, tests/Partially_Reduced_Product/Makefile.am, tests/Partially_Reduced_Product/addcongruences1.cc, tests/Partially_Reduced_Product/addconstraints1.cc, tests/Partially_Reduced_Product/affineimage1.cc, tests/Partially_Reduced_Product/asciidumpload1.cc, tests/Partially_Reduced_Product/bounded1.cc, tests/Partially_Reduced_Product/boundedaffineimage1.cc, tests/Partially_Reduced_Product/bounds1.cc, tests/Partially_Reduced_Product/concatenate1.cc, tests/Partially_Reduced_Product/congruences1.cc, tests/Partially_Reduced_Product/congruencesproduct1.cc, tests/Partially_Reduced_Product/constraints1.cc, tests/Partially_Reduced_Product/constraintsproduct1.cc, tests/Partially_Reduced_Product/contains1.cc, tests/Partially_Reduced_Product/difference1.cc, tests/Partially_Reduced_Product/dimension1.cc, tests/Partially_Reduced_Product/directproduct1.cc, tests/Partially_Reduced_Product/directproduct2.cc, tests/Partially_Reduced_Product/directproduct3.cc, tests/Partially_Reduced_Product/directproduct4.cc, tests/Partially_Reduced_Product/directproduct5.cc, tests/Partially_Reduced_Product/directproduct6.cc, tests/Partially_Reduced_Product/discrete1.cc, tests/Partially_Reduced_Product/disjoint1.cc, tests/Partially_Reduced_Product/dropsomenonintegerpoints1.cc, tests/Partially_Reduced_Product/equals1.cc, tests/Partially_Reduced_Product/frombdshape1.cc, tests/Partially_Reduced_Product/frombox1.cc, tests/Partially_Reduced_Product/fromgrid1.cc, tests/Partially_Reduced_Product/fromoctagonalshape1.cc, tests/Partially_Reduced_Product/frompolyhedron1.cc, tests/Partially_Reduced_Product/fromproduct1.cc, tests/Partially_Reduced_Product/generalizedaffineimage1.cc, tests/Partially_Reduced_Product/intersection1.cc, tests/Partially_Reduced_Product/isempty1.cc, tests/Partially_Reduced_Product/isuniverse1.cc, tests/Partially_Reduced_Product/maxmin1.cc, tests/Partially_Reduced_Product/partially_reduced_product_test.hh, tests/Partially_Reduced_Product/partiallyreducedproduct1.cc, tests/Partially_Reduced_Product/partiallyreducedproduct2.cc, tests/Partially_Reduced_Product/partiallyreducedproduct3.cc, tests/Partially_Reduced_Product/partiallyreducedproduct4.cc, tests/Partially_Reduced_Product/refinewithcongruences1.cc, tests/Partially_Reduced_Product/refinewithconstraints1.cc, tests/Partially_Reduced_Product/relations1.cc, tests/Partially_Reduced_Product/shapepreservingproduct1.cc, tests/Partially_Reduced_Product/smashproduct1.cc, tests/Partially_Reduced_Product/spacedims1.cc, tests/Partially_Reduced_Product/timeelapse1.cc, tests/Partially_Reduced_Product/topclosed1.cc, tests/Partially_Reduced_Product/topclosure1.cc, tests/Partially_Reduced_Product/upperbound1.cc, tests/Partially_Reduced_Product/widening1.cc, tests/Polyhedron/Makefile.am, tests/Polyhedron/addcongruence1.cc, tests/Polyhedron/addcongruences1.cc, tests/Polyhedron/addconstraint1.cc, tests/Polyhedron/addconstraints1.cc, tests/Polyhedron/addconstraints2.cc, tests/Polyhedron/addgenerator1.cc, tests/Polyhedron/addgenerator2.cc, tests/Polyhedron/addgenerators1.cc, tests/Polyhedron/addgenerators2.cc, tests/Polyhedron/addspacedims1.cc, tests/Polyhedron/addspacedims2.cc, tests/Polyhedron/affineimage1.cc, tests/Polyhedron/affineimage2.cc, tests/Polyhedron/affinepreimage1.cc, tests/Polyhedron/affinetrans.cc, tests/Polyhedron/append1.cc, tests/Polyhedron/append2.cc, tests/Polyhedron/ascii_dump_load1.cc, tests/Polyhedron/ascii_dump_load2.cc, tests/Polyhedron/ascii_dump_load3.cc, tests/Polyhedron/bgp99extrapolation1.cc, tests/Polyhedron/bgp99extrapolation2.cc, tests/Polyhedron/bhrz03widening1.cc, tests/Polyhedron/bhrz03widening2.cc, tests/Polyhedron/bhrz03widening3.cc, tests/Polyhedron/bhz03widening1.cc, tests/Polyhedron/bounded1.cc, tests/Polyhedron/boundedaffineimage1.cc, tests/Polyhedron/boundedaffinepreimage1.cc, tests/Polyhedron/boundedbhrz03extrapolation1.cc, tests/Polyhedron/boundedh79extrapolation1.cc, tests/Polyhedron/bounds1.cc, tests/Polyhedron/cnncconversion1.cc, tests/Polyhedron/concatenate1.cc, tests/Polyhedron/congruences1.cc, tests/Polyhedron/constrains1.cc, tests/Polyhedron/constraints1.cc, tests/Polyhedron/contains1.cc, tests/Polyhedron/contains2.cc, tests/Polyhedron/containsintegerpoint1.cc, tests/Polyhedron/disjoint1.cc, tests/Polyhedron/disjoint2.cc, tests/Polyhedron/dropsomenonintegerpoints1.cc, tests/Polyhedron/dropsomenonintegerpoints2.cc, tests/Polyhedron/dualhypercubes.cc, tests/Polyhedron/empty1.cc, tests/Polyhedron/equals1.cc, tests/Polyhedron/exceptions1.cc, tests/Polyhedron/exceptions2.cc, tests/Polyhedron/exceptions3.cc, tests/Polyhedron/expandspacedim1.cc, tests/Polyhedron/expandspacedim2.cc, tests/Polyhedron/foldspacedims1.cc, tests/Polyhedron/foldspacedims2.cc, tests/Polyhedron/frequency1.cc, tests/Polyhedron/frombdshape1.cc, tests/Polyhedron/frombox1.cc, tests/Polyhedron/frombox2.cc, tests/Polyhedron/fromgrid1.cc, tests/Polyhedron/fromoctagonalshape1.cc, tests/Polyhedron/generalizedaffineimage1.cc, tests/Polyhedron/generalizedaffineimage2.cc, tests/Polyhedron/generalizedaffinepreimage1.cc, tests/Polyhedron/generalizedaffinepreimage2.cc, tests/Polyhedron/generators1.cc, tests/Polyhedron/geomcovers1.cc, tests/Polyhedron/h79widening1.cc, tests/Polyhedron/h79widening2.cc, tests/Polyhedron/hybrid.cc, tests/Polyhedron/intersection1.cc, tests/Polyhedron/limitedbhrz03extrapolation1.cc, tests/Polyhedron/limitedh79extrapolation1.cc, tests/Polyhedron/linearexpression1.cc, tests/Polyhedron/linearpartition1.cc, tests/Polyhedron/linearsystem1.cc, tests/Polyhedron/mapspacedims1.cc, tests/Polyhedron/max_min1.cc, tests/Polyhedron/maxspacedim1.cc, tests/Polyhedron/mc91.cc, tests/Polyhedron/membytes1.cc, tests/Polyhedron/memory1.cc, tests/Polyhedron/memory2.cc, tests/Polyhedron/minconstraints1.cc, tests/Polyhedron/minconstraints2.cc, tests/Polyhedron/mingenerators1.cc, tests/Polyhedron/mingenerators2.cc, tests/Polyhedron/nncminimize1.cc, tests/Polyhedron/nncminimize2.cc, tests/Polyhedron/numberinput1.cc, tests/Polyhedron/onepoint.cc, tests/Polyhedron/permute.cc, tests/Polyhedron/polydifference1.cc, tests/Polyhedron/polydifference2.cc, tests/Polyhedron/polyhull1.cc, tests/Polyhedron/polyhull2.cc, tests/Polyhedron/polyhullifexact1.cc, tests/Polyhedron/polyhullifexact2.cc, tests/Polyhedron/randphull1.cc, tests/Polyhedron/refinewithcongruence1.cc, tests/Polyhedron/refinewithcongruences1.cc, tests/Polyhedron/refinewithconstraint1.cc, tests/Polyhedron/refinewithconstraints1.cc, tests/Polyhedron/relations1.cc, tests/Polyhedron/relations2.cc, tests/Polyhedron/relations3.cc, tests/Polyhedron/removespacedims1.cc, tests/Polyhedron/removespacedims2.cc, tests/Polyhedron/simplifyusingcontext1.cc, tests/Polyhedron/smm1.cc, tests/Polyhedron/termination1.cc, tests/Polyhedron/termination2.cc, tests/Polyhedron/timeelapse1.cc, tests/Polyhedron/timeelapse2.cc, tests/Polyhedron/topclosed1.cc, tests/Polyhedron/topclosure1.cc, tests/Polyhedron/unconstrain1.cc, tests/Polyhedron/universe1.cc, tests/Polyhedron/universe2.cc, tests/Polyhedron/variablesset1.cc, tests/Polyhedron/watchdog1.cc, tests/Polyhedron/weightwatch1.cc, tests/Polyhedron/wrap1.cc, tests/Polyhedron/wrap2.cc, tests/Polyhedron/writeconsys1.cc, tests/Polyhedron/writegensys1.cc, tests/Polyhedron/writepolyhedron1.cc, tests/Polyhedron/writepolyhedron2.cc, tests/Polyhedron/writerelation1.cc, tests/Polyhedron/writevariable1.cc, tests/Powerset/Makefile.am, tests/Powerset/addcongruences1.cc, tests/Powerset/addconstraints1.cc, tests/Powerset/affinedimension1.cc, tests/Powerset/affineimage1.cc, tests/Powerset/affinepreimage1.cc, tests/Powerset/bounded1.cc, tests/Powerset/bounds1.cc, tests/Powerset/closed1.cc, tests/Powerset/closure1.cc, tests/Powerset/collapse1.cc, tests/Powerset/concatenate1.cc, tests/Powerset/contains1.cc, tests/Powerset/containsintegerpoint1.cc, tests/Powerset/difference1.cc, tests/Powerset/discrete1.cc, tests/Powerset/disjoint1.cc, tests/Powerset/disjunct1.cc, tests/Powerset/empty1.cc, tests/Powerset/entails1.cc, tests/Powerset/equals1.cc, tests/Powerset/frombdshape1.cc, tests/Powerset/frombox1.cc, tests/Powerset/fromcongruences1.cc, tests/Powerset/fromconstraints1.cc, tests/Powerset/fromgrid1.cc, tests/Powerset/fromoctagonalshape1.cc, tests/Powerset/frompolyhedron1.cc, tests/Powerset/fromspacedimension1.cc, tests/Powerset/intersection1.cc, tests/Powerset/maxmin1.cc, tests/Powerset/meet1.cc, tests/Powerset/membytes1.cc, tests/Powerset/powerset1.cc, tests/Powerset/reduce1.cc, tests/Powerset/refinewith1.cc, tests/Powerset/relationwith1.cc, tests/Powerset/simplifyusingcontext1.cc, tests/Powerset/size1.cc, tests/Powerset/spacedims1.cc, tests/Powerset/universe1.cc, tests/Powerset/upperbound1.cc, tests/README, tests/Random_Number_Generator.defs.hh, tests/Random_Number_Generator.inlines.hh, tests/Random_Number_Generator.types.hh, tests/files.cc, tests/files.hh, tests/ppl_test.cc, tests/ppl_test.hh, utils/Makefile.am, utils/build_header.in, utils/cm_cleaner.sh, utils/cm_splitter.sh, utils/text2cxxarray.in, utils/timings.cc, utils/timings.hh: Copyright notices updated. 2011-01-09 Enea Zaffanella * src/Partially_Reduced_Product.inlines.hh: Replaced a call to PPL_ASSERT by PPL_ASSERT_HEAVY. 2011-01-07 Roberto Bagnara * src/globals.inlines.hh: Cyclic dependency avoided. 2011-01-06 Enea Zaffanella * src/MIP_Problem.defs.hh: Fixed documentation copy-and-paste error. 2011-01-06 Roberto Bagnara * src/Interval.templates.hh, src/Octagonal_Shape.templates.hh, src/PIP_Problem.inlines.hh, src/PIP_Tree.cc, src/Partially_Reduced_Product.inlines.hh, src/Partially_Reduced_Product.templates.hh, src/Polyhedron_public.cc, src/conversion.cc, src/globals.inlines.hh: Replaced several occurrences of assert() by PPL_ASSERT(). 2011-01-06 Roberto Bagnara * src/termination.cc: Added missing parameter documentation. 2011-01-06 Roberto Bagnara * src/MIP_Problem.defs.hh: Typo fixed. 2011-01-06 Roberto Bagnara * doc/Makefile.am: Do not build documentation for interfaces that are not enabled. 2011-01-05 Roberto Bagnara * interfaces/Prolog/YAP/yap_prolog_generated_test.pl: Added missing `use_module' directive. 2010-12-19 Roberto Bagnara * configure.ac: No longer include BD_Shape among the instantiations enabled by default. 2010-12-19 Roberto Bagnara * m4/ac_check_sicstus_prolog.m4, m4/ac_check_xsb_prolog.m4: Replaced $(cmd) with `cmd` in m4 autoconf files. Obsolete comment removed. 2010-12-19 Roberto Bagnara * configure.ac: Version number bumped. 2010-12-19 Roberto Bagnara * configure.ac: Version number bumped. 2010-12-19 Roberto Bagnara * doc/definitions.dox, instchk.hh, tests/Powerset/powerset1.cc: Avoid using identifier `PS', since Solaris has a macro with that name. 2010-10-21 Roberto Bagnara * tests/BD_Shape/Makefile.am, tests/Box/Makefile.am, tests/Octagonal_Shape/Makefile.am: Properly quote the assignment MAKE=$(MAKE). (Thanks to Volker Braun.) 2010-10-16 Roberto Bagnara * NEWS, src/BD_Shape.templates.hh, src/Box.inlines.hh, src/Grid_public.cc, src/Octagonal_Shape.templates.hh, src/Polyhedron_public.cc, tests/BD_Shape/unconstrain1.cc, tests/Box/unconstrain1.cc, tests/Grid/unconstrain1.cc, tests/Octagonal_Shape/unconstrain1.cc, tests/Polyhedron/unconstrain1.cc: Fixed a bug whereby the argument of all the methods unconstrain(Variable var) was not checked correctly for space dimension compatibility. (Thanks to Volker Braun.) 2010-09-17 Enea Zaffanella * demos/ppl_lpsol/ppl_lpsol.c: Do destroy the MIP object before returning from solve_with_simplex. Do destroy the Polyhedron object before returning from solve_with_generators. 2010-09-17 Enea Zaffanella * NEWS, interfaces/C/ppl_c_implementation_common.cc, src/MIP_Problem.cc, src/PIP_Tree.cc: Corrected efficiency bugs in the C interface and in MIP_Problem. 2010-09-09 Roberto Bagnara * README.alpha, tests/BD_Shape/disjoint1.cc, tests/Box/congruences1.cc, tests/Box/max_min1.cc, tests/Box/relations4.cc, tests/Grid/addcongruences1.cc, tests/MIP_Problem/exceptions1.cc, tests/Octagonal_Shape/affineimage1.cc, tests/Octagonal_Shape/boundedaffineimage1.cc, tests/Octagonal_Shape/cc76extrapolation1.cc, tests/Octagonal_Shape/difference1.cc, tests/Octagonal_Shape/disjoint1.cc, tests/Octagonal_Shape/generalizedaffineimage3.cc, tests/Octagonal_Shape/generalizedaffinepreimage2.cc, tests/Octagonal_Shape/generalizedaffinepreimage3.cc, tests/Octagonal_Shape/unconstrain1.cc, tests/Polyhedron/exceptions2.cc: Reflected the changes in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8966 Reflected the changes in gcc.gnu.org/bugzilla/show_bug.cgi?id=8966 2010-09-08 Roberto Bagnara * NEWS: Mentioned the fix to Interval::Interval(const char*). Mentioned the fix to Interval::Interval(const char*). 2010-09-07 Abramo Bagnara * src/Interval.templates.hh: Fixed interval construction from strings. Fixed interval construction from strings. 2010-09-07 Enea Zaffanella * NEWS: Mention bug corrected on the input routine for ppl_lpsol. 2010-09-01 Enea Zaffanella * src/Checked_Number.defs.hh, tests/Polyhedron/numberinput1.cc: Improved documentation for number input routine. Added another couple of tests. 2010-09-01 Enea Zaffanella * src/checked.cc, tests/Polyhedron/numberinput1.cc: Let the input routine accept floating-point syntax starting with ".". 2010-08-31 Enea Zaffanella * src/Checked_Number.defs.hh, src/checked.cc, tests/Polyhedron/numberinput1.cc: Let the input routine for checked numbers accepts C99 hexadecimal float syntax. 2010-08-30 Roberto Bagnara * demos/ppl_lpsol/Makefile.am: Use a convenience library to confine the compilation of glpk_set_d_eps.c. 2010-08-29 Roberto Bagnara * demos/ppl_lpsol/.gitignore, demos/ppl_lpsol/Makefile.am, demos/ppl_lpsol/expected_mpz, demos/ppl_lpsol/expected_mpz_a: Started revising the expected results. 2010-08-29 Roberto Bagnara * demos/ppl_lpsol/ppl_lpsol.c: For checking purposes, use the exact LP solver of GLPK. 2010-08-29 Roberto Bagnara * README, demos/ppl_lpsol/Makefile.am, demos/ppl_lpsol/glpk_set_d_eps.c, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_lpsol/ppl_lpsol.c, doc/ppl-config.1: When the `--check' option is used, input data is perturbed the same way as GLPK does. 2010-08-29 Enea Zaffanella * demos/ppl_lpsol/ppl_lpsol.c: Do also read the inhomogeneous term of the objective function. This should allow for a (almost) meaningful comparison with the optimizied value computed by glpk when using command line option -c. Also corrected a minor bug in the output routine for the objective function (an open parenthesis was sometimes missing). 2010-08-28 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.cc, demos/ppl_lpsol/ppl_lpsol.c, demos/ppl_pips/ppl_pips.cc: Tightened the implementation of the `--max-memory' option. 2010-08-28 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.cc, demos/ppl_pips/ppl_pips.cc: Fixed the argument type of limit_virtual_memory(): should be unsigned long. 2010-08-28 Roberto Bagnara * demos/ppl_pips/.gitignore: Put under Git control. 2010-08-28 Roberto Bagnara * demos/ppl_lpsol/ppl_lpsol.c: Fixed the argument type of limit_virtual_memory(): should be unsigned long. 2010-08-28 Roberto Bagnara * demos/ppl_lpsol/ppl_lpsol.c: Augment the precision with which floating point numbers are printed in error messages. 2010-08-25 Roberto Bagnara * demos/ppl_lpsol/Makefile.am: Added $(top_builddir)/src/libppl.la to ppl_lpsol_LDADD. 2010-08-15 Enea Zaffanella * src/Matrix.defs.hh: Improved doxygen docs for Matrix::permute_columns(). 2010-08-13 Roberto Bagnara * NEWS, src/Interval.templates.hh, tests/Box/cc76widening.cc: Corrected a bug affecting Interval::CC76_widening_assign(const From&, Iterator, Iterator). This, in turn, affected Box::CC76_widening_assign(const T&, Iterator, Iterator): lower bound would not be computed correctly when the two iterators specify an empty list of stop points. Many thanks to Sagar Chaki and Arie Gurfinkel. 2010-08-05 Patricia Hill * src/Grid.templates.hh: Invalid case option in map_space_dimensions removed. 2010-08-05 Enea Zaffanella * interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java.m4: Added a space after :: to avoid Doxygen (incorrect) autolink generation. 2010-08-05 Enea Zaffanella * interfaces/Java/parma_polyhedra_library/PIP_Solution_Node.java: Corrected mismatch in parameter name (for documentation purposes only). 2010-08-05 Roberto Bagnara * : commit b68f8ff2bde57db64ec4439d8a2592da351742e4 Author: Roberto Bagnara Date: Thu Aug 5 09:08:44 2010 +0200 2010-08-05 Roberto Bagnara * configure.ac: Version number bumped. 2010-08-03 Patricia Hill * CREDITS: Updated and typo fixed. 2010-08-02 Roberto Bagnara * ChangeLog: Updated. 2010-08-02 Roberto Bagnara * src/checked_int.inlines.hh: Added missing conversions. 2010-08-02 Roberto Bagnara * ChangeLog, Watchdog/ChangeLog: Updated. 2010-08-02 Roberto Bagnara * Makefile.am, README, Watchdog/Makefile.am, Watchdog/README: Distribute all READMEs and ChangeLogs. 2010-08-02 Roberto Bagnara * ChangeLog: Updated. 2010-08-02 Roberto Bagnara * NEWS: Announce the new wrapping operator used to approximate machine arithmetic. 2010-08-02 Roberto Bagnara * CREDITS, NEWS, TODO, Watchdog/NEWS: Updated. 2010-08-02 Roberto Bagnara * NEWS: Updated. 2010-08-02 Roberto Bagnara * README, Watchdog/README: Updated. 2010-08-02 Roberto Bagnara * README.configure: Updated. 2010-08-02 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_pips/ppl_pips.1, doc/libppl.3, doc/libppl_c.3, doc/ppl-config.1: Updated. 2010-08-02 Roberto Bagnara * doc/definitions.dox: Missing sections added. 2010-08-02 Roberto Bagnara * Watchdog/config.guess, config.guess: Updated. 2010-08-02 Roberto Bagnara * src/Grid.defs.hh, src/Grid_public.cc: FIXMEs resolved. 2010-08-01 Roberto Bagnara * tests/Partially_Reduced_Product/constraintsproduct1.cc: Commented out code concerning affine spaces. 2010-08-01 Enea Zaffanella * demos/ppl_pips/ppl_pips.cc: Avoid variable length arrays: use a std::vector instead. 2010-08-01 Roberto Bagnara * tests/ppl_test.cc: Commented out code concerning affine spaces. 2010-08-01 Roberto Bagnara * tests/ppl_test.hh: Commented out code concerning affine spaces. 2010-08-01 Roberto Bagnara * TODO, src/Affine_Space.defs.hh, src/Makefile.am: Set aside the domain of affine spaces, for the time being. 2010-08-01 Roberto Bagnara * src/Affine_Space.cc, src/Affine_Space.defs.hh, src/Affine_Space.inlines.hh: Implemented the constructors from generator systems. 2010-08-01 Roberto Bagnara * src/Grid.defs.hh, src/Grid_public.cc: Inclusions fixed. 2010-08-01 Roberto Bagnara * src/Grid_public.cc: Useless assignment removed. 2010-08-01 Roberto Bagnara * src/Grid_Generator_System.defs.hh: Comment fixed. 2010-08-01 Abramo Bagnara * src/Interval_Restriction.defs.hh: Removed spurious semicolon. 2010-07-30 Abramo Bagnara * src/Interval.defs.hh, src/Interval.templates.hh: Moved two methods in the right place. 2010-07-29 Roberto Bagnara * src/DB_Row.templates.hh: Unwanted assertions removed. 2010-07-29 Roberto Bagnara * src/DB_Row.templates.hh: Fixed a bug in DB_Row_Impl_Handler::Impl::expand_within_capacity(dimension_type).This affected only compilers not supporting flexible arrays. 2010-07-29 Roberto Bagnara * src/DB_Row.templates.hh: Fixed a bug in DB_Row_Impl_Handler::Impl::construct_upward_approximation(const U&). This prevented compilation with compilers not supporting flexible arrays. 2010-07-27 Roberto Bagnara * src/termination.templates.hh: Added missing inclusion. 2010-07-03 Roberto Bagnara * configure.ac: Version number bumped. 2010-06-28 Enea Zaffanella * src/MIP_Problem.cc, src/MIP_Problem.defs.hh: Improved specification and implementation of erase_artificials(). 2010-06-28 Enea Zaffanella * src/MIP_Problem.cc: Use PPL_ASSERT() instead of plain assert(). 2010-06-26 Enea Zaffanella * src/MIP_Problem.cc, src/MIP_Problem.defs.hh: Improved MIP_Problem preprocessing phase and solved an efficiency bug. Rewritten private methods parse_constraints(), merge_split_variable() and process_pending_constraints(): specification clarified and implementation improved to avoid allocating more tableau rows and columns than needed. This results in an overall speedup, in particular when solving problems incrementally. 2010-06-17 Roberto Bagnara * Watchdog/config.guess, Watchdog/config.sub, Watchdog/install-sh, Watchdog/ltmain.sh, Watchdog/m4/libtool.m4, Watchdog/m4/ltoptions.m4, Watchdog/m4/ltversion.m4, Watchdog/m4/lt~obsolete.m4, config.guess, config.sub, install-sh, ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltversion.m4, m4/lt~obsolete.m4: Updated from Libtool 2.2.10. 2010-06-17 Roberto Bagnara * src/Box.defs.hh: Added missing argument names. 2010-06-15 Enea Zaffanella * configure.ac, doc/definitions.dox, doc/devref.doxyconf-html.in, doc/devref.doxyconf-latex.in, src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh, src/Box.defs.hh, src/Box.templates.hh, src/Cast_Floating_Point_Expression.defs.hh, src/Cast_Floating_Point_Expression.inlines.hh, src/Cast_Floating_Point_Expression.templates.hh, src/Cast_Floating_Point_Expression.types.hh, src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Constant_Floating_Point_Expression.types.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Difference_Floating_Point_Expression.types.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.inlines.hh, src/Division_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.types.hh, src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.inlines.hh, src/Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.types.hh, src/Linear_Form.cc, src/Linear_Form.defs.hh, src/Linear_Form.inlines.hh, src/Linear_Form.templates.hh, src/Linear_Form.types.hh, src/Makefile.am, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.inlines.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.types.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Opposite_Floating_Point_Expression.types.hh, src/Polyhedron.defs.hh, src/Polyhedron.inlines.hh, src/Polyhedron.templates.hh, src/Polyhedron_nonpublic.cc, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.templates.hh, src/Sum_Floating_Point_Expression.types.hh, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh, src/Variable_Floating_Point_Expression.types.hh, tests/Floating_Point_Expression/.gitignore, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/bdshape1.cc, tests/Floating_Point_Expression/bdshape2.cc, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/linearform1.cc, tests/Floating_Point_Expression/octagonalshape1.cc, tests/Floating_Point_Expression/octagonalshape2.cc, tests/Floating_Point_Expression/polyhedron1.cc, tests/Floating_Point_Expression/polyhedron2.cc, tests/Floating_Point_Expression/run_tests, tests/Makefile.am, tests/ppl_test.hh: Put aside changes related to Floating_Point and Linear_Form classes. These will not enter release 0.11. 2010-05-10 Roberto Bagnara * CREDITS: Moved Katy Dobson to the list of past contributors. 2010-05-07 Abramo Bagnara * src/compiler.hh: Fixed comment. 2010-05-07 Abramo Bagnara * src/checked.inlines.hh: Removed current implementation of PPL_{LT,GT}_SILENT: the cure was worse than the disease. 2010-05-07 Abramo Bagnara * src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh: Avoid temporary in smod_2exp. 2010-05-07 Abramo Bagnara * src/compiler.hh: Better/canonical way to avoid gcc warning. 2010-05-04 Abramo Bagnara * src/checked_int.inlines.hh: Revert "Optimized smod_2exp_signed_int." This reverts commit 21d120a07448821720acd415213f9b08a9a14338. 2010-05-04 Abramo Bagnara * src/checked_int.inlines.hh: Optimized smod_2exp_signed_int. 2010-04-17 Abramo Bagnara * src/checked_int.inlines.hh: Refuse to compile on (very obsolete) architectures that are not using two's complement. 2010-04-23 Roberto Bagnara * configure.ac: Version number bumped. 2010-04-23 Enea Zaffanella * src/Partial_Function.cc, src/Partial_Function.defs.hh, src/Partial_Function.inlines.hh, src/Partial_Function.types.hh: Put under git control. 2010-04-22 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_common.inlines.hh, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl, src/Affine_Space.defs.hh, src/Any_Pointset.defs.hh, src/BD_Shape.defs.hh, src/Box.defs.hh, src/Grid.defs.hh, src/Makefile.am, src/Octagonal_Shape.defs.hh, src/Polyhedron.defs.hh, tests/Makefile.am, tests/Partial_Function.cc, tests/Partial_Function.defs.hh, tests/Partial_Function.inlines.hh, tests/Partial_Function.types.hh, tests/ppl_test.cc, tests/ppl_test.hh: Added class Partial_Function to the PPL library. Java, Prolog and OCaml interfaces now use an object of this Partial_Function class when mapping the space dimensions of teh vector space. Some of the consistency checks that were performed by other variants of Partial_Function are now only done when in debugging mode. 2010-04-22 Enea Zaffanella * tests/Octagonal_Shape/writeoctagon1.cc: Fixed expected results for tests/Octagonal_Shape/writeoctagon1.cc 2010-04-22 Enea Zaffanella * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/Partial_Function.java, interfaces/Java/tests/C_Polyhedron_test1.java, interfaces/Java/tests/Makefile.am, interfaces/Java/tests/Test_Partial_Function.java, interfaces/Java/tests/ppl_java_tests_common: Use a C++ object to encode a Partial_Function in the Java interface. Current implementation is based on a copy of the Partial_Function type used in C++ tests: we should consider whether or not it would be appropriate to have this Partial_Function type as a first class PPL object. 2010-04-22 Roberto Bagnara * configure.ac: Version number bumped. 2010-04-22 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/parma_polyhedra_library/Partial_Function.java, interfaces/Java/tests/Test_Partial_Function.java: Modified signature of method maps() in Java Partial_Function interface. Modified test implementation in tests/Test_Partial_Function.java accordingly (note though that TreeMap still uses Long objects). 2010-04-21 Roberto Bagnara * configure.ac: Version number bumped. 2010-04-21 Roberto Bagnara * src/BD_Shape.templates.hh, src/Octagonal_Shape.templates.hh: Fixed the printing of equality constraints. 2010-04-19 Roberto Bagnara * configure.ac: Version number bumped. 2010-04-19 Roberto Bagnara * src/Makefile.am: Added $(noinst_HEADERS) to BUILT_SOURCES so as to build ppl.hh early when !BUILD_CXX_INTERFACE. (Thanks to Ralf Wildenhues who identified the problem and to Sebastian Pop who reported a parallel build failure due to it.) 2010-04-16 Enea Zaffanella * interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/XSB/xsb_pl_check.P, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_sysindep_dox: Properly document ppl_Coefficient_bits/1. 2010-04-16 Enea Zaffanella * interfaces/Prolog/XSB/xsb_pl_check.P: Corrected a few typos. 2010-04-16 Enea Zaffanella * interfaces/Prolog/XSB/ppl_interface_generator_xsb_cc.m4: Corrected typo causing a bug in the XSB Prolog interface. 2010-04-16 Enea Zaffanella * src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.templates.hh: Add method wrap_assign() to Pointset_Powerset. 2010-04-16 Enea Zaffanella * src/Grid_public.cc: A minor stylistic improvement and a typo corrected. 2010-04-16 Abramo Bagnara * src/intervals.defs.hh: Silenced warnings. 2010-04-15 Patricia Hill * interfaces/Prolog/tests/expected_pchk_int8, interfaces/Prolog/tests/expected_pchk_int8_a: A Prolog PIP_Problem test overflows positively for checked_int8 2010-04-15 Patricia Hill * interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4: Added tests in the Prolog interface for ppl_all_affine_quasi_ranking_functions_MS_* 2010-04-15 Patricia Hill * interfaces/Prolog/XSB/xsb_pl_check.P: Added PIP_Problem predicates to list of predicates tested in pl_check.pl. 2010-04-15 Roberto Bagnara * ChangeLog: Updated. 2010-04-15 Roberto Bagnara * configure.ac: Version number bumped. 2010-04-15 Roberto Bagnara * : commit e17e80c8940b435d646eaac97bba591ee744ef34 Author: Roberto Bagnara Date: Thu Apr 15 17:39:08 2010 +0200 2010-04-15 Enea Zaffanella * src/termination.defs.hh, src/termination.templates.hh, tests/Polyhedron/termination2.cc: Minor improvements to documentation. Deal with the special cse of an empty input pointset for methods all_affine_*. Adapted and improved test10 in termination2.cc. 2010-04-15 Enea Zaffanella * interfaces/OCaml/tests/test1.ml: Overflow is expected for PIP_Problem tests with 8 bits coefficients. 2010-04-15 Roberto Bagnara * interfaces/Prolog/GNU/Makefile.am: Increased GLOBALSZ for the execution of the automatically generated test. 2010-04-15 Enea Zaffanella * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Coefficient.java, interfaces/Java/tests/PIP_Problem_test1.java, interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh: Add ppl_Coefficient_bits to Prolog and OCaml interfaces. Renamed corresponding static method in Java interface. 2010-04-14 Patricia Hill * instchk.hh, interfaces/Prolog/Ciao/Makefile.am, interfaces/Prolog/GNU/Makefile.am, interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/SICStus/Makefile.am, interfaces/Prolog/SWI/Makefile.am, interfaces/Prolog/XSB/Makefile.am, interfaces/Prolog/YAP/Makefile.am, interfaces/ppl_interface_generator_common_dat.m4: Allow for the Shape_Preserving_Product to be generated in the interfaces. 2010-04-14 Patricia Hill * interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4: Fixed a bug in the all_affine_ranking_functions*_Grid* tests in Prolog interface. 2010-04-13 Enea Zaffanella * tests/Polyhedron/termination2.cc: Some tests now succeed even on initially empty polyhedra. 2010-04-13 Enea Zaffanella * src/termination.cc: Corrected typo in shift_unprimed_variables(). 2010-04-13 Patricia Hill * interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4, tests/Polyhedron/Makefile.am, tests/Polyhedron/termination1.cc, tests/Polyhedron/termination2.cc: Added further tests for the termination methods. 2010-04-13 Enea Zaffanella * src/termination.cc: Avoid assertion crash on universe polyhedra. 2010-04-13 Patricia Hill * interfaces/Prolog/tests/pl_check.pl, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4: Fixed some bugs in the tests for drop_some_non_integer_points() and added a test for termination_test_*. 2010-04-12 Patricia Hill * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/tests/ppl_interface_generator_ocaml_test_ml_code.m 4, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4, src/termination.cc, tests/Polyhedron/termination1.cc: Added tests to the OCaml interface for new functions wrap_assign(), drop_some_non_integer_points() and termination_test_*. Bug in termination_test_*. fixed and test showing these added to termination1.cc 2010-04-11 Enea Zaffanella * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Coefficient.java, interfaces/Java/parma_polyhedra_library/PIP_Tree_Node.java, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a, interfaces/Java/tests/PIP_Problem_test1.java: Added static method Coefficient.ppl_bits() to Java interface. test04 in PIP_Problem_test1.java overflows when using 8-bit checked integers. Fixed method PIP_TREE_Node.toString(). 2010-04-11 Roberto Bagnara * tests/Partially_Reduced_Product/dropsomenonintegerpoints1.cc: test01() and test03() always succeed. 2010-04-11 Roberto Bagnara * NEWS: Added an entry for the new functionality concerning the synthesis of linear (quasi-) ranking functions. 2010-04-11 Roberto Bagnara * doc/definitions.dox: Worked around a Doxygen bug. 2010-04-11 Roberto Bagnara * src/termination.defs.hh: Cite BMPZ10. 2010-04-11 Roberto Bagnara * doc/definitions.dox: Bibliography updated. 2010-04-10 Patricia Hill * interfaces/ppl_interface_generator_common_procedure_generators.m4, src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, tests/Partially_Reduced_Product/dropsomenonintegerpoints1.cc: Added drop_some_non_integer_points(const Variables_Set& vars, Complexity_Class complexity = ANY_COMPLEXITY) 2010-04-10 Patricia Hill * src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, tests/Partially_Reduced_Product/Makefile.am, tests/Partially_Reduced_Product/dropsomenonintegerpoints1.cc: Added drop_some_non_integer_points() to the product domain 2010-04-10 Roberto Bagnara * src/Float.inlines.hh: Trailing whitespace removed. 2010-04-10 Roberto Bagnara * src/Polyhedron_nonpublic.cc: Variable hiding avoided. 2010-04-10 Roberto Bagnara * NEWS: Added a point about the new drop_some_non_integer_points() methods. 2010-04-10 Roberto Bagnara * NEWS: Tentative release date is May 8, 2010. Reorganized and improved some news items. 2010-04-10 Roberto Bagnara * TODO, demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_pips/ppl_pips.1, doc/ppl-config.1: Man pages updated. 2010-04-09 Fabio Biselli * src/Cast_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Fixed Documentation. 2010-04-08 Roberto Bagnara * README.Solaris => README.solaris: Renamed. 2010-04-08 Roberto Bagnara * TODO: Pushed one item to PPL 0.12. We will not have 0.10.3 release. 2010-04-08 Roberto Bagnara * : Merge remote branch 'origin/master' Conflicts: TODO 2010-04-08 Patricia Hill * interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/test1.ml: Added ppl_PIP_Problem_has_big_parameter_dimension that returns true if and only if the pip problem has a big parameter set. 2010-04-08 Patricia Hill * interfaces/Prolog/Prolog_interface.dox: Added documentation for Prolog PPL_Problem 2010-04-08 Enea Zaffanella * TODO: Dealt with one of the items. 2010-04-08 Enea Zaffanella * src/Row.defs.hh: Better documentation for the two Row_Impl::Impl::operator delete(...). 2010-04-08 Patricia Hill * interfaces/OCaml/OCaml_interface.dox: Added documentation in the OCaml interface for the PIP_Problem. 2010-04-08 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.cc: ppl_PIP_Problem_get_big_parameter_dimension() now throws an exception if the big parameter has not been set. 2010-04-08 Patricia Hill * TODO: Removed a completed item: - Handle std::logic_error (now thrown in case watchdogs are not available) in all the interfaces. 2010-04-08 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/test1.ml: Simplify function names in PIP_Tree_Node, matching corresponding predicate names in Prolog interface. 2010-04-08 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl: Simplified Prolog interface for PIP_Tree_Node. 2010-04-08 Patricia Hill * interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/test1.ml: Removed artificial_parameter_sequence type. Added to the PIP_Problem tests. 2010-04-08 Patricia Hill * interfaces/Prolog/tests/pl_check.pl: Typo fixed. 2010-04-07 Enea Zaffanella * interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli: Restructured the OCaml interface to PIP_Tree_Node C++ classes. Also corrected several bugs related to object finalization. 2010-04-06 Enea Zaffanella * NEWS: Added a couple of entries. 2010-04-06 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl: ...get_big_parameter_dimension/2 changed to ...has_big_parameter_dimension/2 and now this fails if the "big dimension" == not_a_dimension(). 2010-04-06 Enea Zaffanella * README.Solaris: Solaris users should install GNU sed. 2010-04-06 Patricia Hill * interfaces/Prolog/tests/pl_check.pl: Check if the Prolog system supports unbounded integers before testing the big_parameter for PIP_Problem. 2010-04-06 Enea Zaffanella * src/PIP_Tree.cc: Added calls to WEIGHT macros. 2010-04-05 Enea Zaffanella * interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl: Corrected PIP_Problem test04 to properly call predicate ppl_*_artificials(). Applied a few renamings to the implementation of the predicate. 2010-04-05 Enea Zaffanella * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/PIP_Decision_Node.java, interfaces/Java/tests/PIP_Problem_test1.java: Fixed Java interface for PIP_Decision_Node::child_node(branch). New interface has a (unboxed) boolean parameter. 2010-04-05 Enea Zaffanella * tests/BD_Shape/dropsomenonintegerpoints1.cc: Added known results for a couple of tests. 2010-04-05 Enea Zaffanella * src/Octagonal_Shape.templates.hh, tests/Octagonal_Shape/dropsomenonintegerpoints1.cc: Fixed bugs in Octagonal_Shape:drop_some_on_integer_points(). 2010-04-05 Abramo Bagnara * src/checked_int.inlines.hh: Uniformed code and get rid of a warning. 2010-04-05 Enea Zaffanella * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4: Avoid useless boxing of builtins when interfacing the wrap_assign(). Got rid of buggy j_boolean_to_bool() helper. Helper bool_to_j_boolean() renamed to bool_to_j_boolean_class() for clarity, as it builds a boxed Java Boolean value. 2010-04-05 Enea Zaffanella * src/checked_float.inlines.hh: Corrected a couple of typos. 2010-04-05 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/test1.ml: Completed a draft implementation of PIP_Problem OCaml interface. A few tests added. 2010-04-02 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli: A start on the PIP_Problem interface for OCaml. 2010-04-02 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl: Completed a draft of the PIP_Problem interface for Prolog. Added tests. 2010-04-02 Patricia Hill * interfaces/Java/parma_polyhedra_library/Artificial_Parameter_Sequen ce.java: Type fixed. 2010-04-02 Patricia Hill * interfaces/Java/jni/ppl_java_globals.cc: Restored previously removed method PIP_Problem_constraints(). 2010-04-01 Patricia Hill * tests/BD_Shape/Makefile.am, tests/BD_Shape/dropsomenonintegerpoints1.cc, tests/Octagonal_Shape/Makefile.am, tests/Octagonal_Shape/dropsomenonintegerpoints1.cc: Tests added. Some tests marked as expected to fail indicating bug(s) in the code. 2010-04-01 Patricia Hill * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Artificial_Parameter_Sequen ce.java, interfaces/Java/parma_polyhedra_library/PIP_Decision_Node.java, interfaces/Java/parma_polyhedra_library/PIP_Solution_Node.java, interfaces/Java/parma_polyhedra_library/PIP_Tree_Node.java, interfaces/Java/tests/PIP_Problem_test1.java: Varios bug fixes and small improvements. A clone of test02 in pipproblem1.cc added to the Java tests. FIXME added to jni/ppl_java_common.cc 2010-04-01 Enea Zaffanella * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_procedure_generators .m4: Added "quasi ranking functions" generation procedures to OCaml interface. 2010-03-31 Enea Zaffanella * src/Box.templates.hh, src/Interval.defs.hh: Drafted drop_some_non_integer_points() for Interval and Box. 2010-03-31 Enea Zaffanella * src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh: Drafted drop_some_non_integer_points() for weakly relational shapes. 2010-03-31 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Artificial_Parameter.java, interfaces/Java/tests/PIP_Problem_test1.java: Fixed problems in the Artificial_Parameter(_Sequence) interface. 2010-03-31 Patricia Hill * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Artificial_Parameter.java, interfaces/Java/parma_polyhedra_library/Artificial_Parameter_Sequen ce.java, interfaces/Java/parma_polyhedra_library/Artificial_Parameter_Sequen ce_Iterator.java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/PIP_Tree_Node.java, interfaces/Java/tests/PIP_Problem_test1.java: Several improvements and bug fixes. Removed unwanted iterator class for Artificial_Parameter_Sequence. 2010-03-31 Patricia Hill * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/PIP_Decision_Node.java, interfaces/Java/parma_polyhedra_library/PIP_Solution_Node.java, interfaces/Java/tests/PIP_Problem_test1.java: Several improvements and bug fixes. More tests for the Java inmterface added. Commented lines in test indicate where code needs fixing. 2010-03-31 Patricia Hill * NEWS, TODO: Updated with news of the new reduction operator for partially reduced products and the new frequency operator. Removed a TODO item concerning the interfaces and termination methods. 2010-03-31 Roberto Bagnara * configure.ac: Version number bumped. 2010-03-31 Enea Zaffanella * interfaces/Java/jni/ppl_java_globals.cc: Completed removal of Constraint_System_Iterator. 2010-03-31 Enea Zaffanella * src/termination.cc, src/termination.templates.hh: Fixed assign_all_inequalities_approximation for shapes. 2010-03-31 Enea Zaffanella * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4: Interfaced quasi_ranking procedures to C. 2010-03-30 Patricia Hill * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Constraint_System_Iterator. java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/PIP_Problem.java, interfaces/Java/tests/PIP_Problem_test1.java: Fixed problem with PIP_Problem constructor from a sequence of constraints. Added code for testing this. As there is no need for the class Constraint_System_Iterator, Constraint_System_Iterator.java is removed. 2010-03-30 Patricia Hill * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Constraint_System_Iterator. java, interfaces/Java/parma_polyhedra_library/PIP_Problem.java, interfaces/Java/tests/Makefile.am, interfaces/Java/tests/PIP_Problem_test1.java: Some tests for some of the new PIP_Problem methods added. Various bugs fixed. 2010-03-30 Patricia Hill * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Constraint_System_Iterator. java: Completed draft Java interface for PIP_Problem (untested). 2010-03-30 Patricia Hill * interfaces/Java/tests/NNC_Polyhedron_test1.java, interfaces/Java/tests/ppl_interface_generator_java_test_java_code.m 4: Added Java interface tests for termination_test_MS, termination_test_PR, termination_test_MS_2 and termination_test_PR_2 2010-03-30 Enea Zaffanella * interfaces/Java/jni/Makefile.am, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/parma_polyhedra_library/Makefile.am: Enable Java interface for termination procedures (and corrected bugs). 2010-03-30 Patricia Hill * interfaces/Java/jni/ppl_java_common.cc: Whitespace bug fixed. 2010-03-30 Patricia Hill * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Artificial_Parameter.java, interfaces/Java/parma_polyhedra_library/Artificial_Parameter_Sequen ce.java, interfaces/Java/parma_polyhedra_library/Artificial_Parameter_Sequen ce_Iterator.java, interfaces/Java/parma_polyhedra_library/Constraint_System_Iterator. java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/PIP_Decision_Node.java, interfaces/Java/parma_polyhedra_library/PIP_Problem.java, interfaces/Java/parma_polyhedra_library/PIP_Problem_Control_Paramet er_Name.java, interfaces/Java/parma_polyhedra_library/PIP_Problem_Control_Paramet er_Value.java, interfaces/Java/parma_polyhedra_library/PIP_Problem_Status.java, interfaces/Java/parma_polyhedra_library/PIP_Solution_Node.java, interfaces/Java/parma_polyhedra_library/PIP_Tree_Node.java: Almost complete (but untested) Java interface to the PIP_Problem 2010-03-29 Enea Zaffanella * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/Java/ppl_interface_generator_java_procedure_generators.m 4, interfaces/Java/tests/ppl_interface_generator_java_test_java_code.m 4: Corrected several errors in Java interface for termination test procedures. 2010-03-29 Roberto Bagnara * configure.ac: Version number bumped. 2010-03-29 Enea Zaffanella * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4: Added to Prolog interface the predicates for quasi-ranking functions. 2010-03-29 Enea Zaffanella * src/termination.cc, src/termination.defs.hh, src/termination.templates.hh: Added procedures computing all the affine quasi-ranking functions. Corrected a few glitches in the documentation and in exception messages. 2010-03-27 Enea Zaffanella * src/termination.cc, src/termination.templates.hh: Factored away common code in the MS-based termination procedures. Improved PR-based termination procedures relying on MIP_Problem by mapping optimizations to satisfiability testing. 2010-03-27 Enea Zaffanella * src/BD_Shape.templates.hh, src/Box.templates.hh, src/Grid_public.cc, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron.inlines.hh: Avoid a few annoying warnings for unused parameters. Indentation fixed. Avoid using "return;" at the end of function body. 2010-03-27 Roberto Bagnara * src/termination.cc: Comma changed into full-stop. 2010-03-27 Enea Zaffanella * src/termination.cc, src/termination.templates.hh: Other minor improvements in assign_all_inequalities_approximation(). 2010-03-27 Enea Zaffanella * src/termination.cc: Apply more memory allocation improvements. 2010-03-26 Enea Zaffanella * src/termination.cc: A few optimizations applied to fill_constraint_systems_MS(). 2010-03-26 Enea Zaffanella * interfaces/Java/jni/Makefile.am, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_interface_generator_java_classes_cc_files.m 4: Rename Termination.cc in ppl_java_Termination.cc in Java interface. Add the generated file to CLEANFILES. 2010-03-25 Patricia Hill * interfaces/Java/jni/ppl_java_globals.cc: Fixed bugs leading to warning messages. 2010-03-25 Enea Zaffanella * src/termination.cc: Avoid nonpositivity constraints in the enhanced PR methods by changing sign. This is going to speed up the MIP_Problem based methods. 2010-03-25 Enea Zaffanella * src/termination.templates.hh: Use original PR method if a single pointset is provided. Prefer the enhanced method if two pointsets (before/after) are provided. 2010-03-25 Enea Zaffanella * src/termination.cc: Avoid the creation of many temporary linear expressions. 2010-03-25 Enea Zaffanella * src/Linear_Expression.cc, src/Linear_Expression.defs.hh: Added helper function sub_mul_assign() to Linear_Expression interface. 2010-03-25 Patricia Hill * tests/Grid/Makefile.am: Added missing sources line. 2010-03-25 Patricia Hill * interfaces/Prolog/tests/ppl_prolog_generated_test_common.pl: Expected test result corrected. 2010-03-25 Patricia Hill * src/Grid_public.cc, tests/Grid/wrap1.cc: Bug in Grid::wrap_assign() fixed. Test that showed the bug added to wrap1.cc. 2010-03-25 Roberto Bagnara * src/termination.cc: Fixed the all_affine_ranking_functions_PR*() functions to correctly deal with the case where the system is unsatisfiable. 2010-03-25 Roberto Bagnara * interfaces/ppl_interface_generator_common_procedure_generators.m4, src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.templates.hh: Implemented methods Pointset_Powerset::drop_some_non_integer_points(). 2010-03-25 Roberto Bagnara * tests/Polyhedron/Makefile.am, tests/Polyhedron/dropsomenonintegerpoints1.cc, tests/Polyhedron/dropsomenonintegerpoints2.cc: Test Polyhedron::drop_some_non_integer_points(). 2010-03-25 Roberto Bagnara * src/Polyhedron_nonpublic.cc: Fixed a couple of bugs in drop_some_non_integer_points(). 2010-03-24 Roberto Bagnara * src/Polyhedron_nonpublic.cc: Fixed a bug in drop_some_non_integer_points(). 2010-03-24 Roberto Bagnara * interfaces/ppl_interface_generator_common_procedure_generators.m4: Enable *drop_some_non_integer_points* for Polyhedron; disable it for Pointset_Powerset. 2010-03-24 Roberto Bagnara * src/Octagonal_Shape.defs.hh: Indentation corrected. 2010-03-24 Roberto Bagnara * src/Polyhedron.defs.hh, src/Polyhedron.inlines.hh, src/Polyhedron_nonpublic.cc: Drafted the implementation of methods drop_some_non_integer_points(). 2010-03-24 Patricia Hill * interfaces/ppl_interface_generator_common_procedure_generators.m4: Enable the interfaces procedures for Grid::drop_some_non_integer_points(). 2010-03-24 Patricia Hill * src/Grid_public.cc, tests/Grid/Makefile.am, tests/Grid/dropnonintegerpoints1.cc: Added a draft implementation for Grid::drop_some_non_integer_points(). 2010-03-24 Patricia Hill * interfaces/Java/parma_polyhedra_library/Makefile.am: Added the generated Termination files to make clean. 2010-03-24 Patricia Hill * interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4, src/Box.templates.hh, tests/BD_Shape/frequency1.cc, tests/Box/frequency1.cc, tests/Octagonal_Shape/frequency1.cc: In frequency(), deal properly with the case when a box is empty. Added tests for this case. Re-enable frequency test in the Prolog interface. 2010-03-24 Patricia Hill * interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4: Test disabled while problem is investigated. 2010-03-24 Patricia Hill * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/ppl_interface_generator_common_procedure_generators.m4: Added interface code for drop_some_non-integer_points() methods. Note that these are only enabled for BD_Shapes, Octagonal_Shapes and Boxes. 2010-03-24 Patricia Hill * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/Java/ppl_interface_generator_java_procedure_generators.m 4, interfaces/OCaml/ppl_interface_generator_ocaml_procedure_generators .m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/ppl_interface_generator_common_procedure_generators.m4: Added C interface for frequency(). Moved generator to language independent file. 2010-03-24 Patricia Hill * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/Java/ppl_interface_generator_java_procedure_generators.m 4: Added Java interface method for frequency(). 2010-03-24 Patricia Hill * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_procedure_generators .m4: Added Ocaml interface function for frequency(). 2010-03-24 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4, interfaces/Prolog/tests/ppl_prolog_generated_test_common.pl: Added interface predicate for frequency(). Generated test added. 2010-03-24 Patricia Hill * interfaces/Prolog/YAP/ppl_interface_generator_yap_cc.m4: Typo fixed. 2010-03-24 Patricia Hill * interfaces/Prolog/XSB/ppl_interface_generator_xsb_cc.m4, interfaces/Prolog/XSB/xsb_pl_check.P: Added stubs for 7 and 8 argument predicates. Missing predicate names added for pl_check test. 2010-03-24 Patricia Hill * interfaces/Prolog/YAP/ppl_interface_generator_yap_cc.m4: Added stubs for 7 and 8 argument predicates. 2010-03-24 Patricia Hill * interfaces/C/ppl_interface_generator_c_procedure_generators.m4, interfaces/Java/ppl_interface_generator_java_procedure_generators.m 4, interfaces/OCaml/ppl_interface_generator_ocaml_procedure_generators .m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/ppl_interface_generator_common_procedure_generators.m4: Move the wrap_assign generator to the language independent file. 2010-03-23 Patricia Hill * interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/ppl_interface_generator_prolog_dox_code.m4: Added documentation for prolog wrap_assign/8 predicate. 2010-03-23 Patricia Hill * interfaces/OCaml/OCaml_interface.dox: Added documentation for the OCaml wrap_assign function. 2010-03-24 Roberto Bagnara * doc/definitions.dox, doc/ppl.sty: The `|' character cannot be used to produce proper paired delimiters. 2010-03-23 Enea Zaffanella * src/termination.cc, src/termination.templates.hh: Added implementations for the original PR termination tests. These are activated when the preprocessor flag USE_ORIGINAL_PR_METHOD is set. The flag is now active. 2010-03-23 Patricia Hill * doc/definitions.dox: Improved documentation for frequency. 2010-03-23 Patricia Hill * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4: Type error fixed. 2010-03-23 Patricia Hill * interfaces/Prolog/SICStus/ppl_interface_generator_sicstus_sd_cc.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4: Added interface code for wrap_assign(). 2010-03-23 Patricia Hill * doc/definitions.dox: Typo fixed. 2010-03-23 Patricia Hill * doc/definitions.dox: Wrong latex fixed. 2010-03-23 Roberto Bagnara * tests/Polyhedron/termination1.cc: Added two new tests. 2010-03-23 Patricia Hill * doc/definitions.dox: Several errors in the documentation for frequency fixed. 2010-03-23 Roberto Bagnara * doc/definitions.dox: Fixed ill-positioned \f$. 2010-03-23 Patricia Hill * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_procedure_generators .m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli: Added interface code for wrap_assign(). 2010-03-23 Roberto Bagnara * tests/Polyhedron/termination1.cc: Fixed the expected result for test04(). 2010-03-23 Patricia Hill * doc/definitions.dox, src/BD_Shape.defs.hh, src/Box.defs.hh, src/Grid.defs.hh, src/Octagonal_Shape.defs.hh, src/Partially_Reduced_Product.defs.hh, src/Polyhedron.defs.hh: Added and improved documentation for the frequency operator. 2010-03-23 Roberto Bagnara * src/termination.templates.hh: Debugging output switched off. 2010-03-23 Roberto Bagnara * interfaces/Java/parma_polyhedra_library/Makefile.am: Fixed the handling of Termination.java. 2010-03-23 Roberto Bagnara * : commit ef1ccd4fea5bed38e73c23cd9a6e5879e7f281b3 Author: Enea Zaffanella Date: Mon Mar 22 13:54:43 2010 +0100 2010-03-22 Enea Zaffanella * tests/Polyhedron/exceptions1.cc: All test functions should be declared in the anonymous namespace. 2010-03-22 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh: Revised exceptions that can be thrown. 2010-03-22 Patricia Hill * interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl: Added missing C++ exceptions. 2010-03-22 Patricia Hill * interfaces/Prolog/tests/pl_check.pl: Revised to allow for for expected logic_error. 2010-03-21 Enea Zaffanella * tests/Octagonal_Shape/frequency1.cc: Let test13 compile. 2010-03-22 Patricia Hill * interfaces/Java/parma_polyhedra_library/Makefile.am: Code, unintensionally added by previous commit, removed.. 2010-03-22 Patricia Hill * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4: Finished adding code for the java interface to the termination methods. 2010-03-22 Patricia Hill * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_procedure_generators .m4: Added OCaml interface code for the 6 new termination methods. 2010-03-22 Enea Zaffanella * src/PIP_Tree.cc: Cut exponential execution paths by calls to maybe_abandon(). 2010-03-22 Enea Zaffanella * tests/Polyhedron/exceptions1.cc: All test functions should be declared in the anonymous namespace. 2010-03-22 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh: Revised exceptions that can be thrown. 2010-03-22 Patricia Hill * interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl: Added missing C++ exceptions. 2010-03-22 Patricia Hill * interfaces/Prolog/tests/pl_check.pl: Revised to allow for for expected logic_error. 2010-03-21 Enea Zaffanella * tests/Octagonal_Shape/frequency1.cc: Let test13 compile. 2010-03-21 Roberto Bagnara * : commit b43d29400ddc9823f5d08d4148adb804dcc8e321 Author: Roberto Bagnara Date: Sun Mar 21 07:32:40 2010 +0400 2010-03-21 Roberto Bagnara * : commit 0f40cc8d92d033ab5c78cdd2d4661f395603e8b5 Author: Patricia Hill Date: Sat Mar 20 22:00:34 2010 +0000 2010-03-20 Patricia Hill * interfaces/Prolog/ppl_prolog_common.defs.hh, tests/Grid/frequency1.cc, tests/Octagonal_Shape/frequency1.cc: Added missing code for logic_error exception. 2010-03-20 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.cc: Simplified OCaml code for all_zero() and all_homogeneous_terms_are_zero() 2010-03-20 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli: Added OCaml interface for Linear_Expression::is_zero() and all_homogeneous_terms_are_zero(). 2010-03-18 Patricia Hill * interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/Prolog/ppl_prolog_common.defs.hh: Added std::logic_error to the list of exceptions caught. 2010-03-20 Patricia Hill * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Linear_Expression.java: Added Java interface for Linear_Expression::is_zero() and Linear_Expression::all_homogeneous_terms_are_zero(). 2010-03-20 Patricia Hill * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_interface_generator_java_classes_cc_files.m 4, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java.m4, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4: Added some of the Java interface code needed for the termination methods. 2010-03-20 François Galea * tests/PIP_Problem/pipproblem1.cc: Added a test generating a solution node with two context constraints. 2010-03-20 Roberto Bagnara * configure.ac: Version number bumped. 2010-03-20 Roberto Bagnara * : commit 42a77adddb8e0a7223d6dd17b7b0916660411800 Merge: 367f75c b831a0b Author: Roberto Bagnara Date: Sat Mar 20 08:27:47 2010 +0400 2010-03-19 François Galea * src/PIP_Problem.defs.hh: Fixed a typo in the documentation. 2010-03-19 François Galea * src/PIP_Problem.defs.hh: Improved the documentation with examples for uses of the big parameter. 2010-03-19 François Galea * tests/PIP_Problem/pipproblem1.cc: Added a couple of tests using the big parameter. 2010-03-19 Marco Poletti * STANDARDS: Added formatting conventions to the STANDARDS file. 2010-03-19 Patricia Hill * TODO, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/Java/ppl_interface_generator_java_procedure_generators.m 4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh: Updated the first item for TODO and removed code for linear expression is_zero() and all_homogeneous_terms_are_zero() from the Prolog interface. 2010-03-19 Patricia Hill * src/BD_Shape.templates.hh: As in previous commit - ensure initialization of variables. 2010-03-19 Patricia Hill * src/Octagonal_Shape.templates.hh: Missing variable initialization added. 2010-03-19 Patricia Hill * src/Grid.defs.hh, src/Polyhedron.defs.hh: Improved documentation for frequency(). 2010-03-19 Enea Zaffanella * tests/BD_Shape/frequency1.cc: Corrected/improved a few tests in BD_Shape/frequency1.cc. 2010-03-18 Enea Zaffanella * tests/Partially_Reduced_Product/Makefile.am: Mention header file partially_reduced_product_test.hh. 2010-03-18 Enea Zaffanella * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4: Don't take the address of a temporary object. 2010-03-18 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/ppl_interface_generator_common_dat.m4: All_affine_ranking_functions_PR* functions, for the C and Prolog interfaces now take an NNC polyhedron as the last argument and not a C one. Interface Linear_Expression::is_zero() and Linear_Expression::all_homogeneous_terms_are_zero() added to the C and Prolog interfaces. 2010-03-18 Enea Zaffanella * tests/Partially_Reduced_Product/Makefile.am: Fixed tests/Partially_Reduced_Product/Makefile.am. 2010-03-18 Enea Zaffanella * Watchdog/src/Threshold_Watcher.defs.hh: Avoid a broken reference to another manual that is built later. 2010-03-18 Enea Zaffanella * tests/Partially_Reduced_Product/Makefile.am: Define the SOURCES for test concatenate1. 2010-03-18 Roberto Bagnara * src/termination.cc, src/termination.defs.hh, src/termination.templates.hh, tests/Polyhedron/termination1.cc: Completed the implementation of all_affine_ranking_functions_PR*(). 2010-03-18 Roberto Bagnara * NEWS, TODO, src/Linear_Expression.defs.hh, src/Linear_Expression.inlines.hh, src/Linear_Row.cc, src/Linear_Row.defs.hh: New Linear_Expression methods. Methods bool Linear_Expression::is_zero() const and bool Linear_Expression::all_homogeneous_terms_are_zero() const return true if and only if `*this' is 0, and if and only if all the homogeneous terms of `*this' are 0, respectively. 2010-03-18 Roberto Bagnara * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/ppl_interface_generator_c_procedure_generators.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4: Termination functions renamed in non-C++ interfaces. 2010-03-18 Patricia Hill * interfaces/Prolog/tests/pl_check.pl, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4: Avoid leakage when exiting a test. 2010-03-18 Patricia Hill * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4: Revised code neede for wrap assign wrap_assign in Java. 2010-03-18 Enea Zaffanella * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4: Let ppl_*_linear_partition/4 register its outputs to the allocator tracker. 2010-03-18 Enea Zaffanella * interfaces/Prolog/ppl_prolog_common.cc: Corrected typo: register the C++ pointer, not the Prolog term. 2010-03-18 Enea Zaffanella * demos/ppl_pips/expected_int64, demos/ppl_pips/expected_int64_a, demos/ppl_pips/expected_mpz: Corrected the expected results for test fimmel.pip. 2010-03-18 Enea Zaffanella * demos/ppl_pips/expected_int16, demos/ppl_pips/expected_int16_a, demos/ppl_pips/expected_int32, demos/ppl_pips/expected_int32_a, demos/ppl_pips/expected_int64, demos/ppl_pips/expected_int64_a, demos/ppl_pips/expected_int8, demos/ppl_pips/expected_int8_a, demos/ppl_pips/expected_mpz: Corrected expected result for test sor1d.pip. 2010-03-18 Enea Zaffanella * tests/Octagonal_Shape/frequency1.cc: Test 08 may does not overflow when using exact Octagonal_Shapes. 2010-03-18 Enea Zaffanella * demos/ppl_pips/examples/sor1d.pip: Fixed input file sor1d.pip. A line of blanks is not a valid comment line for the input reading routine. 2010-03-18 Enea Zaffanella * demos/ppl_pips/expected_mpz_a, demos/ppl_pips/ppl_pips.cc: Fixed xpected result for sor1d.pip. Minor improvements to ppl_pips.cc. 2010-03-18 Patricia Hill * interfaces/Prolog/tests/pl_check.pl: Delete objects before exiting code. 2010-03-18 Roberto Bagnara * : commit 7ededcd1147e0df879bdfaf92e9fa49c5482653d Author: Roberto Bagnara Date: Thu Mar 18 11:31:30 2010 +0400 2010-03-18 Roberto Bagnara * src/termination.cc, tests/Polyhedron/termination1.cc: Fixed one_affine_ranking_function_PR(). 2010-03-17 Enea Zaffanella * demos/ppl_pips/Makefile.am, demos/ppl_pips/expected_mpz_a, demos/ppl_pips/ppl_pips.cc: Fixed a few memory allocation problems in ppl_pips. Enabled the used of valgrind when running ppl_pips tests. Corrected the expected result for test fimmel.pip (unsatisfiable problem). 2010-03-17 Enea Zaffanella * src/PIP_Tree.cc: Fixed a couple of resource allocation problems (reported by Marco Poletti). 2010-03-18 Roberto Bagnara * interfaces/C/ppl_interface_generator_c_cc_code.m4: Several corrections. 2010-03-18 Roberto Bagnara * interfaces/Prolog/ppl_prolog_common.defs.hh, src/termination.templates.hh: Turn off debugging output. 2010-03-18 Roberto Bagnara * interfaces/Prolog/ppl_prolog_common.cc: Fixed two bogus invocations of PPL_WEAK_REGISTER. 2010-03-17 Roberto Bagnara * interfaces/Prolog/tests/pl_check.pl: Fixed several typos. 2010-03-17 Roberto Bagnara * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4: Fixed some invocations of PPL_CHECK. 2010-03-17 Roberto Bagnara * interfaces/Prolog/ppl_prolog_common.defs.hh: Define PROLOG_TRACK_ALLOCATION to 1 to make a few bugs evident. 2010-03-17 Roberto Bagnara * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/ppl_interface_generator_c_procedure_generators.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/tests/pl_check.pl: C and Prolog interfaces for the termination utility functions renamed and fixed. 2010-03-17 Roberto Bagnara * src/Polyhedron.defs.hh: Kludge removed. 2010-03-17 Roberto Bagnara * configure.ac: Version number bumped. 2010-03-17 Roberto Bagnara * src/termination.cc, src/termination.templates.hh, tests/Polyhedron/termination1.cc: Completed fill_constraint_system_PR(). 2010-03-17 Roberto Bagnara * src/Polyhedron.defs.hh, src/termination.templates.hh, tests/Polyhedron/termination1.cc: Kludge to allow the proof-of-concept implementation of the PR functions to compile. 2010-03-17 Patricia Hill * interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/parma_polyhedra_library/Makefile.am: Fixed some typos for code related to the wrap_assign java interface. 2010-03-16 Patricia Hill * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Bounded_Integer_Type_Width. java, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4: Added implementation code for Java interface for wrap_assign. 2010-03-17 Roberto Bagnara * src/termination.templates.hh, tests/Polyhedron/termination1.cc: Temporarily implemented termination_test_PR() in terms of termination_test_PR_2(). 2010-03-17 Roberto Bagnara * src/termination.cc, src/termination.templates.hh, tests/Polyhedron/termination1.cc: Implemented and fixed termination utilities with two input abstractions. 2010-03-17 Roberto Bagnara * src/assert.hh: Code formatting fixed. 2010-03-17 Patricia Hill * interfaces/Prolog/tests/pl_check.pl: Added a test (based on test10 in termination1.cc in the tests/Polyhedron directory) for termination_test_MS/1 and termination_test_PR/1. 2010-03-17 Patricia Hill * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/ppl_interface_generator_c_procedure_generators.m4: Added termination_test functions ending with "_2". 2010-03-17 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4: Fixed some cut and paste typos. 2010-03-17 Roberto Bagnara * interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4: Arities fixed. 2010-03-16 Patricia Hill * tests/Octagonal_Shape/frequency1.cc: Allow for the various numeric types in frequency1.cc 2010-03-16 Patricia Hill * interfaces/Java/parma_polyhedra_library/Bounded_Integer_Type_Overfl ow.java, interfaces/Java/parma_polyhedra_library/Bounded_Integer_Type_Repres entation.java, interfaces/Java/parma_polyhedra_library/Bounded_Integer_Type_Width. java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/Java/ppl_interface_generator_java_procedure_generators.m 4: Java interface for wrap asign added. 2010-03-16 Roberto Bagnara * src/termination.templates.hh: Printing of debug information suppressed. 2010-03-16 Roberto Bagnara * src/termination.cc, src/termination.templates.hh, tests/Polyhedron/termination1.cc: Implemented template termination_test_PR_2(). 2010-03-16 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4: Added more termination_test predicates to the Prolog interface. 2010-03-16 Roberto Bagnara * src/termination.cc, src/termination.defs.hh, src/termination.templates.hh, tests/Polyhedron/termination1.cc: New versions of the termination utility functions with two input parameters. The PR ones are only stubs for the time being. 2010-03-16 Roberto Bagnara * configure.ac: Add BD_Shape to the instantiations enabled by default. BD_Shape allows to efficiently encode monotonicity constraints. 2010-03-15 Patricia Hill * src/BD_Shape.defs.hh, src/Box.defs.hh, src/Octagonal_Shape.defs.hh, src/Polyhedron.defs.hh, tests/Box/frequency1.cc: Test changed so as to be meaningful for all integer types. Comment typos fixed. 2010-03-15 Patricia Hill * src/BD_Shape.defs.hh, src/Box.defs.hh, src/Octagonal_Shape.defs.hh, src/Polyhedron.defs.hh, tests/Box/frequency1.cc: Test changed so as to be meaningful for all integer types. Comment typos fixed. 2010-03-15 Roberto Bagnara * : commit 8760df47483200e17daf43df3c7ca4ec7aad9185 Author: Patricia Hill Date: Mon Mar 15 11:18:15 2010 +0000 2010-03-11 François Galea * src/PIP_Problem.defs.hh: Documentation fixes. Added a paragraph about optimizing a linear cost function. 2010-03-10 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.inlines.hh: Improved checks in PIP_Decision_Node::OK() method. There is no reason to have Artificial_Parameter::OK() inlined. Added a couple of comments on code that should be normally unreachable. 2010-03-10 Enea Zaffanella * interfaces/C/ppl_c_header.h: Fixed documentation reference. 2010-03-10 Enea Zaffanella * doc/devref.doxyconf-html.in, doc/devref.doxyconf-latex.in: Fixed the value of INPUT doxygen configuration variable. 2010-03-10 Patricia Hill * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4: Improved variable names. 2010-03-10 Roberto Bagnara * tests/Polyhedron/termination1.cc: test10() and test11() witness a bug in termination_test_PR(). 2010-03-10 Roberto Bagnara * : commit 65156364caa2da7235862998930736ca27c83236 Author: François Galea Date: Tue Mar 9 20:28:29 2010 +0100 2010-03-08 François Galea * src/PIP_Problem.defs.hh: Documentation fixes. 2010-03-09 Roberto Bagnara * src/termination.cc, src/termination.templates.hh, tests/Polyhedron/termination1.cc: Implemented the improved Podelski and Rybalchenko termination test. 2010-03-09 Roberto Bagnara * src/termination.cc, src/termination.templates.hh: Function renamed. Unwanted stuff removed from comment. 2010-03-09 Roberto Bagnara * src/termination.cc: LaTeX code fixed. 2010-03-09 Roberto Bagnara * : commit 114f0e38474584e74743f67fd1203487241b60e8 Author: Roberto Bagnara Date: Tue Mar 9 13:36:12 2010 +0400 2010-03-09 Roberto Bagnara * doc/devref.doxyconf-latex.in: Missing files added. 2010-03-09 Roberto Bagnara * src/termination.cc: Description of the PR method improved. 2010-03-09 Roberto Bagnara * : commit 4e2cacd9738634f10872d5e63f3fa9551d546a7e Author: Roberto Bagnara Date: Tue Mar 9 08:52:23 2010 +0400 2010-03-09 Roberto Bagnara * : commit f9fbde6765402ee509a03d952fdae02115c266fa Merge: 97bd553 a6b23fd Author: Roberto Bagnara Date: Tue Mar 9 07:04:15 2010 +0400 2010-03-09 Roberto Bagnara * configure.ac: Version number bumped. 2010-03-09 Roberto Bagnara * src/Pointset_Powerset.inlines.hh: Indentation fixed. 2010-03-08 Roberto Amadini * doc/definitions.dox, doc/devref.doxyconf-html.in: Fixed documentation files. 2010-03-08 Roberto Bagnara * : commit 276bf49a11da0443cc5b284cf880858a8911b48a Author: Roberto Bagnara Date: Mon Mar 8 21:52:26 2010 +0400 2010-03-08 Roberto Bagnara * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4: Fixed the implementation of the *_all_affine_ranking_functions_* predicates. 2010-03-08 Roberto Bagnara * src/termination.templates.hh: Fixed one_affine_ranking_function_MS(): it was not projecting the generator onto the mu variables. 2010-03-08 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4: Code for Polyhedron_all_affine_ranking_functions_PR and similar revised - but is buggy. m4 version needs fixing. 2010-03-08 Roberto Bagnara * interfaces/Prolog/SWI/Makefile.am, m4/ac_check_swi_prolog.m4: Support newer versions of SWI-Prolog. 2010-03-08 Roberto Bagnara * interfaces/Prolog/SWI/Makefile.am, m4/ac_check_swi_prolog.m4: Support newer versions of SWI-Prolog. 2010-03-08 Roberto Bagnara * src/termination.cc, src/termination.templates.hh: Fixed some copy-and-paste mistakes. 2010-03-08 Patricia Hill * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/ppl_interface_generator_c_procedure_generators.m4: Added the rest of the termination functions to the C interface. 2010-03-08 Patricia Hill * interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4: Fixed some bugs in the Prolog interface termination code. 2010-03-08 Patricia Hill * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/ppl_interface_generator_c_procedure_generators.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/ppl_interface_generator_common_dat.m4: Added the new termination functions to Prolog interface and the termination_test_MS only to the C interface. 2010-03-08 Roberto Bagnara * : commit 54bf68f9ee93822f8792c0d89d45ebd0b5823aee Author: Roberto Bagnara Date: Mon Mar 8 16:24:38 2010 +0400 2010-03-08 Roberto Bagnara * src/termination.cc: Comments improved. 2010-03-08 Roberto Bagnara * tests/Polyhedron/termination1.cc: Added a couple of missing constraints. 2010-03-08 Roberto Bagnara * tests/Polyhedron/termination1.cc: Fixed the input polyhedra for test01() and test02(). 2010-03-08 Roberto Bagnara * src/termination.templates.hh: Added stub implementations for one_affine_ranking_function_PR() and all_affine_ranking_functions_PR(). 2010-03-08 Roberto Bagnara * : commit 4684207ce34a88f9552f450faa6e019e475e4027 Author: Roberto Bagnara Date: Mon Mar 8 13:35:33 2010 +0400 2010-03-07 Enea Zaffanella * src/PIP_Tree.cc: Corrected an invalid reference bug in PIP_Solution_Node::update_tableau(). The addition of tableau rows invalidates previously computed references. Thanks to Marco Poletti for reporting this. 2010-03-07 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Eventually perform solution tree simplifications after incremental addition of parameter constraints. 2010-03-07 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Moved the compatibility_check static methods to PIP_Tree_Node. 2010-03-07 François Galea * tests/PIP_Problem/pipproblem1.cc: Added one more test for incremental solving. 2010-03-07 Roberto Bagnara * src/termination.cc: Still working on specifications. 2010-03-07 Roberto Bagnara * src/termination.cc: Completed a couple of comment blocks. 2010-03-07 Roberto Bagnara * doc/devref.doxyconf-html.in, doc/devref.doxyconf-latex.in, src/termination.cc, src/termination.defs.hh: Documented the interfaces of the termination analysis functions. 2010-03-07 Roberto Bagnara * doc/definitions.dox: LaTeX inconsistency removed. 2010-03-07 Roberto Bagnara * src/Makefile.am, src/termination.cc, src/termination.defs.hh, src/termination.templates.hh, tests/Polyhedron/termination1.cc: Moved the utilities for termination analysis to their final destination. 2010-03-07 Roberto Bagnara * tests/Polyhedron/termination1.cc: Several improvements. Changed the encoding of the input systems. Started drafting the implementation of the method of Podelski and Rybalchenko. 2010-03-06 Roberto Bagnara * tests/Polyhedron/Makefile.am, tests/Polyhedron/termination1.cc: Added functions for termination analysis following the approach of Mesnard and Serebrenik. 2010-03-05 Roberto Bagnara * src/Constraint_System.cc, src/Constraint_System.defs.hh: Added method bool Constraint_System::has_equalities() const. 2010-03-06 Enea Zaffanella * src/Octagonal_Shape.defs.hh: Corrected a couple of typos in the documentation. 2010-03-06 Enea Zaffanella * tests/Floating_Point_Expression/digitalfilters1.cc: Test 4 in digitalfilers1.cc overflows with 64-bits if assertions are on. 2010-03-05 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: Tests 20, 21 and 22 overflow on 8-bit coefficients (derived from test02). 2010-03-04 Enea Zaffanella * tests/Floating_Point_Expression/digitalfilters1.cc, tests/ppl_test.hh: Encoded custom overflow conditions for digitalfilters1.cc tests 5 and 6. 2010-03-04 François Galea * tests/PIP_Problem/pipproblem1.cc: Added a test for problem feasibility when incrementally adding parameter constraints. 2010-03-04 François Galea * tests/PIP_Problem/pipproblem1.cc: Added two tests for incremental addition of parametric constraints. Even though correct, the resulting solution trees can be simplified. 2010-03-04 Roberto Bagnara * src/globals.defs.hh: Replaced using directives by using declarations. 2010-03-03 Roberto Bagnara * Watchdog/src/Watchdog.cc: Apparently GNU Hurd only supports ITIMER_REAL. (Thanks to Michael Tautschnig: http://www.cs.unipr.it/pipermail/ppl-devel/2010-March/016072.html). 2010-03-03 Roberto Bagnara * Watchdog/src/Watchdog.cc: Proper spacing added to throw_syscall_error(). (Thanks to Michael Tautschnig.) 2010-03-02 Enea Zaffanella * tests/Floating_Point_Expression/digitalfilters1.cc: Detected several overflows in tests 5 and 6 of digitalfilters1.cc. 2010-03-02 Enea Zaffanella * tests/ppl_test.hh: Adopted a more flexible implementation for the DO_TEST* macros. (Based on a set of macros provided by Abramo Bagnara.) 2010-03-02 Enea Zaffanella * interfaces/C/ppl_c_header.h, src/PIP_Problem.defs.hh: Made a pass on the documentation of class PIP_Problem. 2010-03-01 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Method PIP_Tree_Node::solve() now checks context feasibility when needed. 2010-03-01 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: Corrected typo in test19(). 2010-03-01 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Several minor improvements to the PIP_Problem resolution process. Reorganized helper functions update_context() and compatibility_check(). 2010-03-01 Patricia Hill * interfaces/C/ppl_interface_generator_c_procedure_generators.m4, interfaces/ppl_interface_generator_common_procedure_generators.m4: The wrap_assign has only been added to the C interface so the procedure must be local to the C interface. 2010-03-01 Enea Zaffanella * src/Box.defs.hh, src/Box.templates.hh: Completed removal of support for circular intervals. Removed now ambiguous method CC76_narrowing_assign(). While at it, also wrapped a few long lines. 2010-03-01 Patricia Hill * doc/definitions.dox, interfaces/C/C_interface.dox, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.defs.hh, interfaces/C/ppl_c_implementation_common.inlines.hh, interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/ppl_interface_generator_common_procedure_generators.m4: Added C interface for wrap_assign. Minor NELS improvements to documentation describing Wrapping Operator (should be checked by the author of these notes). 2010-02-27 Roberto Bagnara * interfaces/C/ppl_c_header.h: Useless comma removed. 2010-02-27 Roberto Bagnara * src/Bool4.defs.hh, src/Box.defs.hh, src/Box.templates.hh, src/Makefile.am: Removed stuff that will not be included in PPL 0.11. 2010-02-27 Roberto Bagnara * interfaces/C/ppl_c_header.h: Missing comma added. 2010-02-27 Roberto Bagnara * src/Box.defs.hh, src/Box.templates.hh, src/Circular_Interval.defs.hh, src/Makefile.am: Temporarily removed the support for circular intervals. 2010-02-27 Roberto Bagnara * : commit 9005a4bc71b38b80205724ac2914731466e5b450 Author: Roberto Bagnara Date: Sat Feb 27 17:02:19 2010 +0100 2010-02-27 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: Increase code coverage for PIP_Tree_Node printing methods. 2010-02-27 Roberto Bagnara * interfaces/C/tests/Makefile.am: Force C++ linking for all the test programs. 2010-02-27 Roberto Bagnara * tests/Polyhedron/watchdog1.cc: Exception handling fixed. 2010-02-26 Roberto Bagnara * TODO, Watchdog/src/Watchdog.inlines.hh, Watchdog/tests/watchdog1.cc, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.defs.hh, interfaces/C/tests/watchdog1.c, tests/Polyhedron/watchdog1.cc: Throw std::logic_error in case the client asks for watchdogs on a system not supporting them. 2010-02-25 Roberto Bagnara * configure.ac: Version number bumped. 2010-02-26 Enea Zaffanella * Watchdog/src/Threshold_Watcher.defs.hh, interfaces/C/ppl_c_implementation_common.cc, interfaces/Java/jni/ppl_java_common.cc, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/Prolog/ppl_prolog_common.cc, tests/Polyhedron/weightwatch1.cc: Simplified initialization of Threshold_Watcher<> static data member. 2010-02-26 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc: Added printing functions for PIP tree nodes and improved documentation. 2010-02-26 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added operator<<() for class PIP_Tree_Node, printing the subtree. The output operator is based on public (non-virtual) method print(), which calls the protected (virtual) method print_tree() after properly setting up the needed arguments. 2010-02-26 Enea Zaffanella * src/Matrix.defs.hh, src/Matrix.inlines.hh: Improve definition of Matrix::const_iterator default constructor. 2010-02-24 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Modified return statements. 2010-02-24 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Several corrections in rate limiter tests. 2010-02-24 Roberto Bagnara * tests/PIP_Problem/pipproblem1.cc: Tests 1-18 restored. Test 19 is known to fail. 2010-02-23 François Galea * tests/PIP_Problem/pipproblem1.cc: Added a test illustrating a bug when incrementally inserting a parameter constraint. 2010-02-23 Fabio Bossi * tests/Floating_Point_Expression/digitalfilters1.cc: Fixed a test on BDShape. 2010-02-23 Enea Zaffanella * tests/PIP_Problem/exceptions1.cc: Tests 14 and 15 are known to overflow on 8-bit coefficients. 2010-02-22 Roberto Amadini * src/Variable_Floating_Point_Expression.inlines.hh: Removed whitespaces. 2010-02-22 Roberto Amadini * src/BD_Shape.templates.hh, src/Cast_Floating_Point_Expression.templates.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Octagonal_Shape.templates.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.templates.hh, src/Variable_Floating_Point_Expression.inlines.hh, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/floatingpointexpr1.cc: Fixed indentation. 2010-02-22 Enea Zaffanella * interfaces/C/tests/pip_test.c: Fixed call to ppl_PIP_Solution_Node_get_parametric_values(). 2010-02-22 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/pipproblem1.cc: Added tentative solution to bugs shown by pipproblem1 tests 16, 17 and 18. 2010-02-22 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Fixed digitalfilters1.cc 2010-02-22 Enea Zaffanella * src/PIP_Tree.cc, tests/PIP_Problem/exceptions1.cc, tests/PIP_Problem/pipproblem2.cc: Do set the `solution_valid' flag on exit from update_solution(). 2010-02-22 Roberto Bagnara * : commit 8ad05a7fa1293c23494ebd8c1a8222c8cc39dc0e Author: Enea Zaffanella Date: Mon Feb 22 14:22:26 2010 +0100 2010-02-22 Enea Zaffanella * demos/ppl_pips/ppl_pips.cc, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh, tests/PIP_Problem/pipproblem1.cc: Changed interface for public method PIP_Solution_Node::parametric_values(). The new interface no longer requires the set of problem parameters as an input argument (which was error prone): rather, the set of parameters of the PIP_Problem is now automatically retrieved. To this end, all PIP tree nodes are now provided by a pointer to the owning PIP_Problem object. Method PIP_Problem::OK() modified to check for well formedness of the solution tree and, in particular, check that all its nodes are marked as owned by the right PIP_Problem object. Removed the no longer useful method PIP_Tree_Node::insert_artificials(). Corrected a typo in PIP_Problem::operator<<(). Simplified interface of (internal) method PIP_Tree_Node::print_tree(). Added a FIXME regarding a potential exception safety issue. 2010-02-22 Roberto Bagnara * : commit 537a4928e00e2b811822089da4cf12a1dd4344cf Author: Roberto Bagnara Date: Mon Feb 22 09:16:36 2010 +0100 2010-02-22 Roberto Bagnara * interfaces/C/tests/pip_test.c: Avoid printing unless noisy or very-noisy mode was requested. 2010-02-21 Roberto Bagnara * tests/Polyhedron/watchdog1.cc: Be more informative in case something goes wrong. 2010-02-21 Roberto Bagnara * Watchdog/configure.ac: Use the C++ compiler to perform the tests meant for C++. 2010-02-21 Roberto Bagnara * Watchdog/src/Watchdog.cc, Watchdog/src/Watchdog.defs.hh, Watchdog/src/Watchdog.inlines.hh, Watchdog/src/pwl_header.hh: sigaction() is also needed, in addition to setitimer() in order to support Watchdog objects. We could check if signal() is available if there is request for such a feature. 2010-02-21 Roberto Bagnara * Watchdog/src/Watchdog.cc, Watchdog/src/Watchdog.defs.hh, Watchdog/src/Watchdog.inlines.hh, interfaces/C/tests/watchdog1.c, interfaces/C/tests/weightwatch1.c: If setitimer() is not available, no initialization is necessary. This also works around a linking bug in Mingw. C tests improved with error-handling code. 2010-02-20 Roberto Amadini * src/Cast_Floating_Point_Expression.templates.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Sum_Floating_Point_Expression.templates.hh, tests/Floating_Point_Expression/floatingpointexpr1.cc: Floating_Point_Expression::absolute_error is now a symmetric interval. 2010-02-20 Roberto Amadini * src/Cast_Floating_Point_Expression.templates.hh, src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Sum_Floating_Point_Expression.templates.hh, tests/Floating_Point_Expression/digitalfilters1.cc: Use build method instead of join_assign to build convex intervals. 2010-02-20 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/ascii_dump_load1.cc: Improved code coverage. Removed useless (and not accessible by user) Tableau::total_memory_in_bytes(). 2010-02-20 Enea Zaffanella * src/PIP_Tree.cc, tests/PIP_Problem/pipproblem3.cc: Invalidate current solution at the start of PIP_Solution_Node::solve(). This fixes the bug in pipproblem3 test03. 2010-02-20 Enea Zaffanella * src/PIP_Problem.cc, tests/PIP_Problem/pipproblem2.cc: Adding no space dims should not invalidate previously computed solution. 2010-02-20 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Got rid of non-const PIP_Tree_Node as_decision() and as_solution() methods. 2010-02-20 Enea Zaffanella * tests/PIP_Problem/pipproblem2.cc: Achieve full code coverage for the output operator. 2010-02-20 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, tests/PIP_Problem/exceptions1.cc: Document and test exception thrown by PIP_Problem::print_solution(). 2010-02-20 Enea Zaffanella * tests/PIP_Problem/ascii_dump_load1.cc: Test 09 overflows when using 8-bit coefficients. 2010-02-20 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: A couple of tests marked as known to fail. These shows a bug in the solver, which fails to detect an unfeasible initial context. 2010-02-20 Enea Zaffanella * tests/PIP_Problem/pipproblem3.cc: Put under git control. These test exercise the incremental PIP solver (still buggy). 2010-02-20 Enea Zaffanella * src/PIP_Tree.cc: Check fir and avoid space dimension mismatches in merge_assign(). 2010-02-19 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/Makefile.am: Started working on incrementality. Dealt with a FIXME in PIP_Solution_Node::update_tableau(): when adding new problem variables and parameters, the columns of the existing artificial parameters are moved to the right of the tableau.t matrix. 2010-02-19 Enea Zaffanella * tests/PIP_Problem/ascii_dump_load1.cc, tests/PIP_Problem/pipproblem2.cc: Little code coverage improvement. 2010-02-18 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh, tests/PIP_Problem/pipproblem1.cc, tests/PIP_Problem/pipproblem2.cc: Prefer denominator() to get_denominator(). In pipproblem1 test02(), add a lenghty check of the expected solution. 2010-02-18 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc: Simplified C interface to Artificial_Parameter. 2010-02-18 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc: Removed two PIP_Problem enum values that need not be interfaced. 2010-02-18 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.inlines.hh: Avoid parameter name hiding; mark unreachable code. 2010-02-18 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/tests/pip_test.c: Added some missing C interface methods and enum values for the new PIP classes. 2010-02-18 Roberto Amadini * src/Cast_Floating_Point_Expression.defs.hh, src/Cast_Floating_Point_Expression.templates.hh, src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.templates.hh, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/floatingpointexpr1.cc: Changed linearize method interface for Floating Point Expressions. Now, it has a bool return type which indicates if the linearization succeeded (or not). Thus, Linearization_Failed exception class has been removed. 2010-02-18 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc, tests/PIP_Problem/pipproblem1.cc: Corrected bug in th ehandling of trivially satisfiable PIP problems. Test 16 in pipproblem1.cc (currently disabled) shows a bug in the handling of trivially unfeasible PIP problems. 2010-02-18 Enea Zaffanella * src/PIP_Tree.cc: Dealt with a FIXME in PIP_Solution_Node::solve(). 2010-02-18 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/tests/pip_test.c: Added total_memory_in_bytes() and external_memory_in_bytes() to MIP_Problem and PIP_Problem in the C interface. 2010-02-18 Roberto Amadini * src/Multiplication_Floating_Point_Expression.templates.hh: Fixed comments. 2010-02-18 Roberto Amadini * src/Multiplication_Floating_Point_Expression.templates.hh: Improved comments. 2010-02-18 Roberto Bagnara * demos/ppl_pips/ppl_pips.1, demos/ppl_pips/ppl_pips_extra_man_text: Described the input formats. 2010-02-18 Roberto Bagnara * demos/ppl_pips/ppl_pips.cc: Cosmetic improvements. 2010-02-18 Roberto Amadini * src/Variable_Floating_Point_Expression.defs.hh: Added and fixed documentation for Var_FP_Expression. 2010-02-17 Roberto Bagnara * demos/ppl_pips/expected_int16, demos/ppl_pips/expected_int16_a, demos/ppl_pips/expected_int32, demos/ppl_pips/expected_int32_a, demos/ppl_pips/expected_int64, demos/ppl_pips/expected_int64_a, demos/ppl_pips/expected_int8, demos/ppl_pips/expected_int8_a: Updated expected results. 2010-02-17 Roberto Bagnara * demos/ppl_pips/Makefile.am, demos/ppl_pips/expected_mpz, demos/ppl_pips/expected_mpz_a: Test with all the examples. 2010-02-17 Roberto Bagnara * demos/ppl_pips/examples/Makefile.am, demos/ppl_pips/examples/README, demos/ppl_pips/examples/big.pip, demos/ppl_pips/examples/brisebarre.pip, demos/ppl_pips/examples/cg1.pip, demos/ppl_pips/examples/esced.pip, demos/ppl_pips/examples/ex2.pip, demos/ppl_pips/examples/fimmel.pip, demos/ppl_pips/examples/invert.dat, demos/ppl_pips/examples/linear.dat, demos/ppl_pips/examples/lineri.dat, demos/ppl_pips/examples/loz.dat, demos/ppl_pips/examples/max.dat, demos/ppl_pips/examples/max.pip, demos/ppl_pips/examples/maxb.dat, demos/ppl_pips/examples/pairi.dat, demos/ppl_pips/examples/petit.dat, demos/ppl_pips/examples/rairoi.dat, demos/ppl_pips/examples/sor1d.pip, demos/ppl_pips/examples/square.pip, demos/ppl_pips/examples/test12i.dat: Added examples from PipLib 1.4.0. 2010-02-17 Roberto Bagnara * interfaces/Prolog/Prolog_interface.dox: Typo fixed: we require SICStus at least version 3.9.1. 2010-02-17 Roberto Bagnara * Watchdog/tests/Makefile.am, Watchdog/tests/{simple1.cc => watchdog1.cc}: Test program renamed. 2010-02-17 Roberto Bagnara * tests/Polyhedron/watchdog1.cc, tests/Polyhedron/weightwatch1.cc: Cosmetic changes. 2010-02-17 Fabio Bossi * doc/definitions.dox, src/Polyhedron.defs.hh: Added "affine from relation" section into definitions.dox. Fixed a reference to "affine from relation". 2010-02-17 Enea Zaffanella * src/MIP_Problem.cc, src/PIP_Problem.cc: Drafted implementation for PIP_Problem's operator<<. 2010-02-17 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: Tests adapted to use the new method for printing a PIP problem solution. 2010-02-17 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added method PIP_Problem::print_solution(). The new method exploits added virtual method PIP_Tree_Node::print_tree(). Implementation is based on code from the many display_solution() helper functions that are currently spread in the tests. 2010-02-17 Roberto Bagnara * Watchdog/src/pwl_header.hh, Watchdog/tests/simple1.cc: Cater for systems where setitimer() is not provided (part 4). 2010-02-17 Roberto Bagnara * Watchdog/src/Watchdog.cc, Watchdog/src/Watchdog.inlines.hh: Cater for systems where setitimer() is not provided (part 3). 2010-02-17 Roberto Bagnara * TODO, Watchdog/pwl-config.sed, Watchdog/src/Watchdog.cc, Watchdog/src/Watchdog.defs.hh, Watchdog/src/Watchdog.inlines.hh: Cater for systems where setitimer() is not provided (part 2). 2010-02-17 Roberto Bagnara * Watchdog/src/Watchdog.defs.hh, Watchdog/src/Watchdog.inlines.hh: Cater for systems where setitimer() is not provided (part 1). 2010-02-17 Roberto Bagnara * Watchdog/configure.ac, configure.ac: Build the PWL unless not explicitly disabled at configuration time. 2010-02-17 Fabio Bossi * : commit 3c3188f08c10a1914cd545f35ba10a6ee464c3b9 Author: Roberto Bagnara Date: Wed Feb 17 10:16:43 2010 +0100 2010-02-17 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: Tests 2, 5, 7, 8, 9 and 10 do not overflow on 16 bit coefficients. 2010-02-17 Fabio Bossi * src/Float.inlines.hh: Fixed a type error. 2010-02-16 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: Solved other instances of test02, but using different cutting strategies. 2010-02-16 Enea Zaffanella * src/PIP_Tree.cc: Fixed bug introduced when improving coding style in PIP_Solution_Node::solve. Corrected wrong assertion in PIP_Solution_Node::generate_cut. 2010-02-16 Roberto Bagnara * TODO: Important item added. 2010-02-16 Roberto Bagnara * interfaces/C/ppl_c_implementation_common.cc: Unwanted inclusion removed. 2010-02-16 Roberto Bagnara * Watchdog/tests/pwl_test.cc, tests/ppl_test.cc: Use the right preprocessor conditionals for PPL_HAVE_DECL_SIGACTION. 2010-02-16 Roberto Bagnara * interfaces/C/ppl_c_implementation_common.cc: Warnings avoided. 2010-02-16 Roberto Bagnara * Watchdog/tests/pwl_test.cc, tests/ppl_test.cc: Corrected several problems. 2010-02-16 Enea Zaffanella * tests/Octagonal_Shape/upperboundifexact1.cc: Enable test12. 2010-02-16 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh: A few improvements to PIP_Problem documentation. 2010-02-16 Roberto Bagnara * interfaces/C/tests/pip_test.c: Make the test trivially succeed when coefficients are not large enough. 2010-02-16 Roberto Amadini * src/Cast_Floating_Point_Expression.inlines.hh, src/Makefile.am, tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/ppl_test.hh: Fixed Cast_Floating_Point_Expression.inlines.hh and added a test. 2010-02-16 Roberto Bagnara * interfaces/C/tests/pip_test.c: Improved error handling. Cosmetic improvements. 2010-02-16 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh, tests/PIP_Problem/ascii_dump_load1.cc, tests/PIP_Problem/exceptions1.cc, tests/PIP_Problem/pipproblem2.cc: Added unit tests for inner class PIP_Tree_Node::Artificial_Parameter. Added operator!=() and swap() methods: the last was necessary as we were inheriting it from Linear_Expression. 2010-02-16 Enea Zaffanella * tests/PIP_Problem/pipproblem2.cc: Added another test for code coverage purposes. 2010-02-16 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh: Got rid of unused Boolean flag PIP_Problem::initialized. 2010-02-16 Roberto Bagnara * demos/ppl_pips/ppl_pips_extra_man_text: Avoid non-ASCII characters. 2010-02-16 Roberto Bagnara * demos/ppl_pips/ppl_pips_extra_man_text: Trailing whitespace removed. 2010-02-16 Roberto Bagnara * demos/ppl_pips/Makefile.am: Install also ppl_pips.1. 2010-02-16 Enea Zaffanella * tests/PIP_Problem/pipproblem2.cc: Added a couple of tests to improve code coverage. 2010-02-15 Roberto Amadini * src/Cast_Floating_Point_Expression.defs.hh, src/Cast_Floating_Point_Expression.inlines.hh, src/Cast_Floating_Point_Expression.templates.hh, src/Cast_Floating_Point_Expression.types.hh: Added classes. 2010-02-15 Roberto Amadini * doc/devref.doxyconf-html.in: Added a first implementation of Cast_Floating_Point_Expression classes. 2010-02-15 Roberto Bagnara * demos/ppl_pips/ppl_pips_extra_man_text: Put under Git control. 2010-02-15 Roberto Bagnara * CREDITS: Avoid non-ASCII characters. 2010-02-15 Roberto Bagnara * TODO, demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_pips/ppl_pips.1, devtools/generate_man_pages, doc/ppl-config.1: Added a draft man page for `ppl_pips'. Other man pages updated. 2010-02-15 Roberto Bagnara * demos/ppl_pips/Makefile.am: Missing backslash added. 2010-02-15 Roberto Bagnara * demos/ppl_pips/Makefile.am, demos/ppl_pips/expected_int16, demos/ppl_pips/expected_int16_a, demos/ppl_pips/expected_int32, demos/ppl_pips/expected_int32_a, demos/ppl_pips/expected_int64, demos/ppl_pips/expected_int64_a, demos/ppl_pips/expected_int8, demos/ppl_pips/expected_int8_a, demos/ppl_pips/expected_mpz_a: Added missing expected results. 2010-02-15 Roberto Bagnara * Watchdog/configure.ac, Watchdog/src/pwl_header.hh: Improved the NDEBUG machinery. 2010-02-15 Roberto Bagnara * tests/PIP_Problem/pipproblem1.cc: Mark expected overflows. 2010-02-15 Roberto Bagnara * Watchdog/configure.ac, Watchdog/pwl-config.sed, Watchdog/tests/pwl_test.cc, configure.ac, ppl-config.sed, tests/ppl_test.cc: Improve portability to systems that do not (fully) support Posix signal handling. 2010-02-15 Roberto Bagnara * configure.ac: Version number bumped. 2010-02-15 Roberto Bagnara * : commit 05cdf3ade39391ba25dc992cabe93a7758e23dac Author: Enea Zaffanella Date: Mon Feb 15 11:18:23 2010 +0100 2010-02-08 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/ascii_dump_load1.cc: Drafted PIP_Problem methods {total,external}_memory_in_bytes(). 2010-02-07 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.types.hh, tests/PIP_Problem/ascii_dump_load1.cc, tests/PIP_Problem/pipproblem1.cc: PIP_Problem ascii dump&load methods now also dump/load problem solution. Fixed error in PIP_Tree_Node::ascii_load(). Added ascii dump&load methods to PIP_Decision_Node. 2010-02-06 Enea Zaffanella * src/PIP_Problem.cc, tests/PIP_Problem/ascii_dump_load1.cc: In ascii dump and load methods, also print pivot row strategy info. 2010-02-06 Enea Zaffanella * tests/PIP_Problem/ascii_dump_load1.cc, tests/PIP_Problem/exceptions1.cc, tests/PIP_Problem/pipproblem1.cc: Improving test coverage ratio. 2010-02-06 Enea Zaffanella * src/PIP_Tree.cc: Improved exception safety in method PIP_Solution_Node::solve(). 2010-02-05 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Clarified proper usage of PIP_Solution_Node alternative copy constructor. The Boolean argument replaced by a tag struct type, since it was only used for overloading resolution purposes. 2010-02-05 Enea Zaffanella * src/Linear_Expression.cc, src/Linear_Expression.defs.hh, src/PIP_Tree.cc: Add new friend function add_mul_assign() for Linear_Expression. Used new function to optimize a couple of computations in PIP_Tree.cc. 2010-02-05 Enea Zaffanella * src/PIP_Tree.cc: Helper function negate_assign() rnamed as complement_assign(). 2010-02-05 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Simplified interface for virtual method PIP_Tree_Node::solve(). No longer using the PIP_Tree_Node*& parent_ref argument and direclty returning the solution PIP_Tree_Node* instead of a status flag. 2010-02-04 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Improved class PIP_Tree_Node::Artificial_Parameter. 2010-02-04 Enea Zaffanella * src/PIP_Problem.cc: Some improvements to method PIP_Problem::solve(). 2010-02-03 Enea Zaffanella * src/PIP_Tree.cc: Improved the last part of method PIP_Solution_Node::solve(). 2010-02-03 Enea Zaffanella * src/PIP_Tree.cc: More progress on PIP_Solution_Node::solve(). Identified places where the current implementation is not exception safe. 2010-02-03 Enea Zaffanella * src/PIP_Tree.cc: Further improved (huge) method PIP_Solution_Node::solve(). Added a couple of comments regarding parts where comments or code in unclear. 2010-02-03 Enea Zaffanella * src/PIP_Tree.cc: Improved method Tableau::is_better_pivot(). 2010-02-02 Enea Zaffanella * src/PIP_Tree.cc: Started improving method PIP_Solution_Node::solve(): - limit scope of variables; - try to use meaningful variable names. 2010-02-01 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Minor improvements to PIP_Problem documentation and C interface. 2010-02-01 Enea Zaffanella * src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Got rid of error-prone Tableau::s_capacity() and Tableau::t_capacity(). 2010-02-01 Enea Zaffanella * src/PIP_Tree.cc: Improved method PIP_Solution_Node::update_tableau(). 2010-02-01 Enea Zaffanella * src/PIP_Tree.cc: Improved implementation of PIP_Solution_Node::compatibility_check(). Besides readability and stylistic changes, the change should also immprove robustness and (to a lesser extent) performance. 2010-01-31 Enea Zaffanella * src/PIP_Tree.cc: Improved method PIP_Solution_Node::::parametric_values(). 2010-01-31 Enea Zaffanella * src/PIP_Tree.cc: Stylistic improvements to Tableau methods normalize() and scale(). 2010-01-31 Enea Zaffanella * src/PIP_Tree.cc: A few more stylistic improvements. 2010-01-31 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Several improvements to PIP_Solution_Node::generate_cut(). Added method OK() to Artificial_Parameter. 2010-01-31 Enea Zaffanella * src/PIP_Tree.cc: Further optimization to helper function column_lower(). 2010-01-31 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Several minor stylistic improvements. 2010-01-30 Enea Zaffanella * src/PIP_Tree.cc: Prefer C++ named casts to C style casts. 2010-01-30 Enea Zaffanella * src/PIP_Tree.cc: Minor readability improvements to row_normalize. 2010-01-30 Enea Zaffanella * src/PIP_Tree.cc: Optimized some computation in helper function column_lower(). 2010-01-30 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Tree.cc: Improved helper function merge_assign(): add all new rows at once. 2010-01-30 Enea Zaffanella * src/PIP_Tree.cc: Corrected capacity mismatch bug in PIP_Solution_Node::solve(). 2010-01-30 Enea Zaffanella * src/PIP_Tree.cc: Improved consistency checks in method PIP_Decision_Node::OK(). 2010-01-30 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Improved consistency checks in method PIP_Solution_Node::Tableau::OK(). Prefer using Coefficient_traits::const_reference in parameter passing. 2010-01-30 Enea Zaffanella * src/PIP_Tree.defs.hh: The Pip_Tree_Node:OK() method is now virtual. When overriding a virtual method in derived classes, prefer repeating the virtual keyword for clarity. 2010-01-30 Enea Zaffanella * src/PIP_Tree.defs.hh, src/PIP_Tree.types.hh: Typedef for PIP_Tree moved to PIP_Tree.types.hh. 2010-01-30 Enea Zaffanella * src/PIP_Problem.inlines.hh: Everyting else equal, prefer downward iteration in for loop. 2010-01-30 Enea Zaffanella * src/PIP_Problem.cc: No need to check for null pointers before deleting them. 2010-01-25 Enea Zaffanella * src/Congruence_System.defs.hh, src/Generator_System.defs.hh, src/Grid_Generator_System.defs.hh: Forward declare classes before making them friends. Included Grid.types.hh in Congruence_/Grid_Generator_ System.defs.hh. Do not uselessly include Grid.types.hh in Generator_system.defs.hh. 2010-01-22 François Galea * tests/PIP_Problem/pipproblem1.cc: Added a not working incremental solve test. 2010-01-20 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc: Fixed bugs. Now test07 in pipproblem2.cc is successful. 2010-01-09 Roberto Bagnara * interfaces/Prolog/XSB/xsb_clpq.P, interfaces/Prolog/XSB/xsb_clpq2.P: Fixed the omissions of ppl_Polyhedron_is_empty/1 and ppl_Polyhedron_add_constraints/2. 2010-01-09 Roberto Bagnara * interfaces/Prolog/XSB/xsb_pl_check.P: Fixed the omission of ppl_set_irrational_precision/1 and ppl_irrational_precision/1. 2010-01-09 Roberto Bagnara * : commit 9c19bc2b318a35016e0189f9552c98910be37f53 Author: Roberto Bagnara Date: Sat Jan 9 16:32:08 2010 +0100 2010-01-09 Roberto Bagnara * : commit 56ee86b9ccf001c8dc2ab1558332e9691b2eff3f Author: Roberto Bagnara Date: Sat Jan 9 14:38:37 2010 +0100 2010-01-09 Roberto Bagnara * src/Temp.inlines.hh: Generate nicer identifiers for the temporaries. 2010-01-09 Roberto Bagnara * demos/ppl_lpsol/examples/ex1.mps: Adapted to follow the IBM OSL conventions for the MPS format. 2010-01-05 François Galea * src/PIP_Tree.cc: Fixed a bug. Now test08 and test09 in pipproblem2.cc are successful. 2010-01-04 François Galea * demos/ppl_pips/ppl_pips.cc, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented an optional pivot row strategy for difficult problems. It is deactivated by default as it is more compute intensive. 2009-12-16 François Galea * demos/ppl_pips/ppl_pips.cc, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc: Added a more aggressive cutting strategy which generates all possible cuts. 2009-12-16 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Moved out the cut generation code into a separate method. 2009-12-16 François Galea * src/PIP_Tree.cc: Moved huge block of code out of useless 'else' block. Code reindentation. 2010-01-04 Enea Zaffanella * src/MIP_Problem.cc: Do not include if PPL_NOISY_SIMPLEX is defined to 0. 2010-01-01 Roberto Bagnara * devtools/bump_copyright_years: Extended copyright years. 2010-01-01 Roberto Bagnara * : commit 4d6c6db0470eb60cecbbed0a43a2b08d8539e95f Author: Roberto Bagnara Date: Fri Jan 1 16:36:10 2010 +0100 2010-01-01 Roberto Bagnara * demos/ppl_pips/Makefile.am, demos/ppl_pips/examples/Makefile.am, demos/ppl_pips/ppl_pips.cc, devtools/bump_copyright_years, interfaces/C/tests/pip_test.c, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, src/PIP_Problem.types.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh, src/PIP_Tree.types.hh, tests/PIP_Problem/Makefile.am, tests/PIP_Problem/ascii_dump_load1.cc, tests/PIP_Problem/exceptions1.cc, tests/PIP_Problem/pipproblem1.cc, tests/PIP_Problem/pipproblem2.cc: Extended copyright years. 2010-01-01 Roberto Bagnara * : commit 488f55fbe874c4f3a85c0c0db8c59f7e83d615e0 Author: Roberto Bagnara Date: Fri Jan 1 16:28:45 2010 +0100 2009-12-30 Roberto Bagnara * : commit 99a040ae53ddf2e369340274eb34d5211b1c642a Author: Roberto Bagnara Date: Wed Dec 30 17:43:41 2009 +0100 2009-12-30 Roberto Bagnara * interfaces/Java/jni/Makefile.am: Support building the Java interface on MinGW. 2009-12-30 Roberto Bagnara * src/Makefile.am: Document conditionals. 2009-12-30 Roberto Bagnara * configure.ac: Restore the use of the `win32-dll' Libtool option. Use -no-undefined on all variants of Cygwin and MinGW. 2009-12-30 Roberto Bagnara * tests/Floating_Point_Expression/Makefile.am: Correction for platforms where not all floating point types are supported. 2009-12-30 Roberto Bagnara * tests/Floating_Point_Expression/digitalfilters1.cc: Use the right assignment operator. 2009-12-29 Roberto Bagnara * tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/polyhedron1.cc, tests/Floating_Point_Expression/polyhedron2.cc: Expected failures revised. 2009-12-29 Roberto Bagnara * tests/Floating_Point_Expression/polyhedron1.cc, tests/Floating_Point_Expression/polyhedron2.cc: Expected failured revised. 2009-12-29 Roberto Bagnara * tests/Floating_Point_Expression/digitalfilters1.cc: Typo fixed. 2009-12-29 Roberto Amadini * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, src/Box.defs.hh, src/Box.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron.templates.hh, tests/Floating_Point_Expression/bdshape1.cc, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/octagonalshape1.cc, tests/Floating_Point_Expression/polyhedron1.cc, tests/Floating_Point_Expression/polyhedron2.cc: Renamed affine_image on Linear Forms into affine_form_image. 2009-12-29 Roberto Bagnara * tests/Floating_Point_Expression/digitalfilters1.cc: Use the general assignment and comparison functions. 2009-12-28 Roberto Bagnara * : commit e86e2471429982e8141789e4adeb6ddd0cc1e326 Author: Roberto Bagnara Date: Mon Dec 28 20:26:04 2009 +0100 2009-12-28 Roberto Amadini * src/Multiplication_Floating_Point_Expression.templates.hh: Improved Multiplication_Floating_Point_Expression::linearize. 2009-12-26 Roberto Amadini * src/Box.defs.hh, src/Box.templates.hh, src/Octagonal_Shape.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/floatingpointexpr1.cc: Implemented Box::affine_image on Interval Linear Forms. Tests in tests/Floating_Point_Expression actually use only IEEE754 floating point format. 2009-12-22 Roberto Bagnara * configure.ac: Version number bumped. 2009-12-22 Roberto Bagnara * INSTALL, Watchdog/INSTALL, Watchdog/compile, Watchdog/config.guess, Watchdog/config.sub, compile, config.guess, config.sub: Updated. 2009-12-22 Roberto Bagnara * : commit 4e2145f8d498bc3ea055a06a1244de677b7bbab5 Author: Roberto Bagnara Date: Tue Dec 22 09:30:55 2009 +0100 2009-12-21 Roberto Bagnara * src/BD_Shape.templates.hh, src/Boundary.defs.hh, src/Circular_Interval.defs.hh, src/Interval.defs.hh, src/Interval.inlines.hh, src/Octagonal_Shape.templates.hh, src/checked_float.inlines.hh, src/globals.defs.hh: Never leave operators at end of line. 2009-12-21 Roberto Bagnara * src/Boundary.defs.hh, src/Circular_Interval.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.templates.hh, src/Interval.defs.hh, src/Interval.inlines.hh, src/MIP_Problem.cc, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/checked_float.inlines.hh, src/wrap_assign.hh: Never leave operators at end of line. 2009-12-20 Roberto Amadini * src/Float.defs.hh, src/Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/bdshape1.cc, tests/Floating_Point_Expression/bdshape2.cc, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/linearform1.cc, tests/Floating_Point_Expression/octagonalshape1.cc, tests/Floating_Point_Expression/octagonalshape2.cc, tests/Floating_Point_Expression/polyhedron1.cc, tests/Floating_Point_Expression/polyhedron2.cc: Several corrections in tests and source code. Now, in all tests of tests/Floating_Point_Expression/ we assume that analyzer format must be less precise or equal than analyzed format. 2009-12-19 Roberto Bagnara * : commit 9784b8165b6cb1dea5eb6d20b4cebca7ecc780fd Author: Roberto Bagnara Date: Sat Dec 19 11:46:22 2009 +0100 2009-12-14 Roberto Amadini * src/Floating_Point_Expression.templates.hh, tests/Floating_Point_Expression/digitalfilters1.cc: Added Linear Form Intervalization on rate limiter test. 2009-12-11 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Improved test01, ..., test04. 2009-12-07 Roberto Amadini * tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/ratelimiter.cc: Removed redundant code. 2009-12-02 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Fixed comments. 2009-11-30 François Galea * src/PIP_Problem.defs.hh: Improved the documentation of the PIP solver. 2009-11-30 François Galea * demos/ppl_pips/ppl_pips.cc, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/tests/pip_test.c, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/pipproblem1.cc: Simplified the solution tree exploration method. Including, the PIP_Tree_Node::insert_artificials method has been removed. 2009-11-29 Fabio Biselli * tests/Floating_Point_Expression/Makefile.am: Fixed a typo. 2009-11-29 Fabio Biselli * tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/ratelimiter.cc: Added a rate limiter test that pass without intersection between the two domain. 2009-11-28 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Improved tests on rate limiter. They all pass now. 2009-11-27 François Galea * src/PIP_Problem.defs.hh: Modified the documentation of the PIP_Problem class. 2009-11-27 François Galea * src/PIP_Tree.cc: Fixed a regression. 2009-11-26 Enea Zaffanella * tests/PIP_Problem/pipproblem2.cc: Test test10() in pipproblem2.cc seems to show another bug. 2009-11-26 Enea Zaffanella * tests/PIP_Problem/Makefile.am, tests/PIP_Problem/ascii_dump_load1.cc: Added a few tests for the PIP_Problem ascii_dump/load methods. 2009-11-26 Enea Zaffanella * src/PIP_Problem.cc: Properly set status flags when solving a PIP_Problem having no constraints. Minor correction to ascii_dump method. 2009-11-26 Roberto Bagnara * TODO: One item added. 2009-11-26 François Galea * src/PIP_Tree.cc: Changed the cut generation strategy in compatibility_check. Now several cuts may be generated in a single pass. 2009-11-26 François Galea * src/PIP_Tree.cc: Changed the pivot row selection algorithm in compatibility_check. It now selects the row which maximizes the lexico-minimal pivot column. 2009-11-26 François Galea * src/PIP_Tree.cc: Minor cosmetic code fixes. 2009-11-26 François Galea * src/PIP_Tree.cc: Moved the lexico-minimum column search algorithm to a separate function. 2009-11-25 François Galea * src/PIP_Tree.cc: Removed useless utility function. 2009-11-26 François Galea * src/PIP_Problem.cc: Fixed a regression. 2009-11-24 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.templates.hh, tests/PIP_Problem/exceptions1.cc, tests/PIP_Problem/pipproblem2.cc: PIP_Problem can handle strict inequalities: corresponding checks removed. Got rid of internal status SATISFIABLE, which was unused. Corrected several minor typos (missing spaces) in exception messages. Added a new test (pipproblem2.cc, test09) showing what seems to be a bug. 2009-11-24 Enea Zaffanella * tests/PIP_Problem/pipproblem2.cc: Test test07() in pipproblem2.cc shows a bug in PIP_Problem. Apparently, we cannot incrementally add new constraints to a PIP_Problem taht was already solved. 2009-11-24 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/pipproblem2.cc: Prefer not_a_dimension() as a marker if the big parameter is not set. 2009-11-24 Enea Zaffanella * tests/PIP_Problem/Makefile.am, tests/PIP_Problem/exceptions1.cc: Started adding tests checking for the right PIP_Problem exceptions are thrown. 2009-11-24 Enea Zaffanella * tests/PIP_Problem/Makefile.am, tests/PIP_Problem/pipproblem2.cc: Started adding tests to increase coverage. 2009-11-23 Enea Zaffanella * tests/PIP_Problem/pipproblem1.cc: Minor improvements to avoid assertion failures on iterators. 2009-11-23 Enea Zaffanella * interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh: Started drafting a Prolog interface for PIP_Problem. 2009-11-23 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.cc: In PIP_Problem::clear(), do also reset the big parameter dimension. Added C language functions for getting/setting the big parameter dimension. 2009-11-23 Enea Zaffanella * demos/ppl_pips/Makefile.am, demos/ppl_pips/ppl_pips.cc, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.types.hh, src/PIP_Tree.cc: Enumerations for control parameters put inside class PIP_Problem. Interfaced methods for getting/setting control parameters (in C). Other minor stylistic improvements here and there. 2009-11-23 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, src/PIP_Problem.types.hh: Corrected a bug in method swap. Several minor stylistic improvements. 2009-11-23 Roberto Bagnara * TODO: Item added. 2009-11-22 Roberto Amadini * src/Variable_Floating_Point_Expression.inlines.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/digitalfilters1.cc: Modified tests on rate limiter. Removed useless comments. 2009-11-20 François Galea * src/PIP_Tree.cc: Optimized the solver main loop using PPL_DIRTY_TEMP_COEFFICIENT's. 2009-11-19 François Galea * src/PIP_Tree.cc: Added a rule to the cut methods to always choose the simplest parametric part. This tends to provide simpler solution trees on some problems. 2009-11-19 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added a mechanism to avoid generating the same Artificial_Parameter twice. 2009-11-19 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Added a pointer to parent node in PIP_Tree_Node. 2009-11-19 François Galea * src/PIP_Tree.cc: Improved the deepest row selection cut strategy. 2009-11-19 François Galea * src/PIP_Tree.cc: Correctly rewrote ascii_dump/ascii_load methods for PIP_Solution_Node. 2009-11-19 François Galea * src/PIP_Tree.cc: Removed useless debugging display code. 2009-11-16 François Galea * demos/ppl_pips/ppl_pips.cc: Added an option in PIP standalone solver to solve the problem several times. This may be convenient for benchmarking purposes. 2009-11-16 François Galea * src/PIP_Problem.cc: Fixed a bug in PIP_Problem copy constructor. 2009-11-16 François Galea * src/PIP_Tree.cc: Updated the deepest cut strategy; now only selects rows associated to initial variables. This results in performance increase in most problems. 2009-11-16 François Galea * demos/ppl_pips/ppl_pips.cc: Minor fix fixes in standalone solver. 2009-11-16 François Galea * demos/ppl_pips/ppl_pips.cc: Fixed a bug in standalone solver when using PIPlib files with a big parameter. 2009-11-13 François Galea * demos/ppl_pips/ppl_pips.cc, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added support for an arbitrarily big parameter. 2009-11-13 François Galea * demos/ppl_pips/ppl_pips.cc, src/PIP_Problem.cc: Switched the default cut generation strategy to first row. 2009-11-13 François Galea * src/PIP_Problem.cc: Fixed a bug. 2009-11-13 François Galea * demos/ppl_pips/ppl_pips.cc, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.types.hh, src/PIP_Tree.cc: Added a control parameter for cut generation strategy. 2009-11-10 François Galea * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, src/PIP_Problem.types.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added a mechanism for setting/getting control parameter values. 2009-11-10 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Made use of virtual methods in PIP_Tree_Node::clone(). 2009-11-05 François Galea * src/PIP_Tree.cc: Fixed a bug. 2009-11-05 François Galea * src/PIP_Tree.cc: Removed temporary debug code. 2009-11-05 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Improved the support for equality constraints. 2009-11-04 François Galea * src/PIP_Tree.cc: Improved basis handling in compatibility_check. 2009-11-04 François Galea * src/PIP_Tree.cc: Added coherency checks in PIP_Solution_Node. 2009-11-04 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Improved basis handling with support for slack variables and bijective variable mapping. 2009-11-03 François Galea * interfaces/C/tests/pip_test.c: Implemented an example of solution tree spanning and display using the C interface. 2009-11-03 François Galea * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Implemented the art_parameter_count method; updated the C interface. 2009-11-02 François Galea * src/PIP_Tree.cc: Implemented Bland's anti-cycling rule in compatibility_check. 2009-11-02 François Galea * src/PIP_Tree.cc: Proper scaling of cuts in compatiblity_check. 2009-10-30 François Galea * demos/ppl_pips/ppl_pips.cc: Minor fix in PIP standalone solver. 2009-10-29 François Galea * demos/ppl_pips/ppl_pips.cc: Fixed a bug in PIP standalone solver. 2009-10-28 François Galea * demos/ppl_pips/ppl_pips.cc: Fixed one bug in standalone PIP solver. 2009-10-28 François Galea * demos/ppl_pips/ppl_pips.cc: Added support for Polylib-formatted files in standalone solver. 2009-10-27 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, tests/PIP_Problem/pipproblem1.cc: Added support for equality constraints; fixed a bug for strict inequalities. 2009-10-27 Roberto Bagnara * configure.ac: Version number bumped. 2009-10-27 François Galea * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Tree.defs.hh: Fixed the C interface and the documentation for PIP_Tree_Node methods. The concerned methods are insert_artificials and get_parametric_values. 2009-10-26 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc: Another pass on the C interface for PIP_Problem related classes. Removed a few useless functions and added a few missing ones, including input/output utilities; also slightly improved the documentation. 2009-10-25 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.defs.hh: Interfaced constructor/destructor for Artificial_Parameter_Sequence iterators. These iterators should be used similarly to the ones defined on systems of constraints or generators. Corrected a couple of bugs in the documentation. 2009-10-24 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/tests/pip_test.c: Added increment, dereference and equal functions for ppl_Artificial_Parameter_Sequence_const_iterator_t's Fixed a couple of bugs. 2009-10-23 François Galea * interfaces/C/tests/Makefile.am, interfaces/C/tests/pip_test.c: Added test program for PIP C interface. 2009-10-23 François Galea * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/PIP_Problem.cc, src/PIP_Problem.defs.hh: New parameter choice method. Updated the C interface. 2009-10-22 Roberto Bagnara * README: Refer to PPL 0.11, not 0.10. 2009-10-22 Roberto Bagnara * configure.ac: Version number bumped. 2009-10-22 Roberto Bagnara * src/Makefile.am: Ditribute also MIP_Problem.types.hh, PIP_Tree.types.hh and PIP_Problem.types.hh. 2009-10-22 Roberto Bagnara * demos/ppl_pips/Makefile.am: Adapted to the checking of ppl_pips. 2009-10-22 Roberto Bagnara * demos/ppl_pips/expected_mpz: Put under Git control. 2009-10-22 François Galea * src/PIP_Tree.cc: Removed invalid optimization in context compatibility check. 2009-10-21 François Galea * configure.ac, demos/Makefile.am, demos/ppl_pips/Makefile.am, demos/ppl_pips/examples/Makefile.am, demos/ppl_pips/examples/test02.dat, demos/ppl_pips/ppl_pips.cc: Added a standalone PIP solver demo program. 2009-10-21 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/pipproblem1.cc: Context compatibility check now searches for valid integer solutions. 2009-10-20 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Parameter compatibility check now applies a revised dual simplex method. 2009-10-20 François Galea * src/PIP_Tree.cc: Added display of computed row parameter signs in noisy PIP mode. 2009-10-20 François Galea * tests/PIP_Problem/pipproblem1.cc: Added new test, which should return an empty solution. 2009-10-20 Fabio Biselli * doc/definitions.dox, doc/ppl.sty, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Documentation updates. Fixed parenthesis in ppl.sty as suggested. Fixed few typos. 2009-10-20 François Galea * src/PIP_Tree.cc: Always stop compatibility check at first negative row. 2009-10-17 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Added FIXME notes. 2009-10-16 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Added a test on BD_Shape, improved a test on Polyhedra. 2009-10-16 Fabio Biselli * src/Float.defs.hh, src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/floatingpointexpr1.cc: Added BASE field to floating point struct. Modified absolute/relative error definition using FP_Format::BASE. Modified tests using FP_Format::BASE. 2009-10-16 François Galea * src/PIP_Tree.cc: Improved the heuristic for the choice of the deepest cut. 2009-10-16 François Galea * src/PIP_Tree.cc: Better use of scaling and normalization to keep low coefficient values where possible. 2009-10-16 François Galea * src/PIP_Tree.cc, tests/PIP_Problem/pipproblem1.cc: Corrected invalid compatibility check algorithm. 2009-10-15 Fabio Biselli * src/Float.defs.hh: Added float_ibm_single declaration into class Float. 2009-10-14 Fabio Biselli * doc/devref.doxyconf-html.in: Added Floating_Point_Expression.templates.hh into documentation. 2009-10-14 François Galea * tests/PIP_Problem/pipproblem1.cc: Added a test case illustrating an instability in the PIP solver. 2009-10-13 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Modified widening in test05 and test06. 2009-10-13 François Galea * src/PIP_Tree.cc: Integrality check only on the original variables (not slack ones). 2009-10-13 François Galea * src/PIP_Tree.cc: Optimized pivot operation. 2009-10-10 Enea Zaffanella * interfaces/C/ppl_c_implementation_common.cc: Uncommented C interface code for PIP_Problem assignment. 2009-10-09 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc: More functions for the C interface to the PIP Tree class - in particular, corresponding to the PIP_Solution_Node and PIP_Decision_Node C++ methods. Various small bugs fixed in the PIP_Problem C interface code. 2009-10-09 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc: Fixed various bugs in the C interface for PIP_Problem methods. 2009-10-09 François Galea * src/PIP_Tree.cc: Improved best pivot row selection heuristic. 2009-10-09 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.inlines.hh: Added several C functions for PIP_Tree_Node and Artificial_Parameter*. 2009-10-08 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.inlines.hh: Added the c interface for as_decision() and as_solution(). 2009-10-09 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/pipproblem1.cc: Fixed memory managment issue in copy constructor of PIP_Problem. 2009-10-09 François Galea * src/PIP_Problem.cc: Added call to the solver to check problem satisfiability. 2009-10-08 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, tests/PIP_Problem/pipproblem1.cc: Added implementations for PIP_Problem swap and operator= methods. Added a few consistency checks in method OK(). Pointed out a resource management bug in copy constructor that can result in memory corruption. Added test04() to pipproblem1.cc (currently commented out) showing that a segmentation fault can be obtained when copying a PIP_Problem object having a non-null solution tree. 2009-10-08 Patricia Hill * interfaces/C/ppl_c_header.h: Added missing headers for ppl_PIP_Problem_solve and ppl_PIP_Problem_optimizing_solution. Variable names made consistent with the domain. Documentation for ppl_PPI_Problem_is_satisfiable() improved. 2009-10-08 François Galea * src/PIP_Problem.cc, src/PIP_Problem.defs.hh: Removed trailing whitespaces. 2009-10-08 Patricia Hill * interfaces/C/ppl_c_implementation_common.cc: Uncommented methods for the C interface for the PIP_Problem. 2009-10-08 François Galea * src/PIP_Problem.cc: Implemeted missing methods. 2009-10-08 Patricia Hill * interfaces/C/ppl_c_implementation_common.cc: Uncommented C interface code for add_constraint(), add_constraints() and operator=(). 2009-10-07 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc: Implemented missing methods. 2009-10-07 François Galea * src/PIP_Problem.cc, src/PIP_Problem.inlines.hh: Fixed memory leak. 2009-10-07 Fabio Biselli * src/Float.inlines.hh: Removed a comment. 2009-10-07 Patricia Hill * interfaces/C/ppl_c_implementation_common.cc, interfaces/C/tests/print_to_buffer.c, interfaces/C/tests/print_to_buffer.h: Commented PIP_Problem code in the C interface that requires methods in the C++ interface that are not yet implemented. Added declarations for printing the PIP_Problem and PIP_Tree in the tests. 2009-10-07 Patricia Hill * interfaces/C/ppl_c_implementation_common.cc: More consistent naming of variables. 2009-10-07 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.inlines.hh: Added 2 more functions for the C interface to the PIP_Problem class. 2009-10-07 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Fixed test05. 2009-10-07 Patricia Hill * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.inlines.hh: Added a very basic interface for C to the PIP_Problem class. Note this is incomplete and does not support methods with PIP_Tree. 2009-10-06 Fabio Biselli * src/Float.defs.hh, src/Float.inlines.hh, tests/Floating_Point_Expression/digitalfilters1.cc: Using uint16_t instead of uint32_t in float_ieee754_half. Extended float_ibm_single. 2009-10-06 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Removed useless pointer to problem object in PIP_Tree_Node. 2009-10-06 François Galea * src/PIP_Tree.defs.hh: Minor fixes in Doxygen documentation. 2009-10-06 François Galea * src/PIP_Tree.cc: Improved accuracy of context compatibility checks. 2009-10-06 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Changed loop-guards in the first four test of digitalfilters1.cc 2009-10-06 François Galea * src/PIP_Tree.cc: Added generation of non-parametric cuts. 2009-10-06 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Improved display in noisy mode. 2009-10-06 François Galea * src/PIP_Tree.cc: Fixed bug in compatiblity_check(). 2009-10-06 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Fixed test03. 2009-10-06 Roberto Amadini * src/Float.defs.hh, tests/Floating_Point_Expression/digitalfilters1.cc: Computed the largest non-infinity number in digitalfilters1.cc Fixed a bug in Float.defs.hh 2009-10-05 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Removed comments. 2009-10-05 Fabio Biselli * tests/Floating_Point_Expression/digitalfilters1.cc: Minor changes. 2009-10-05 Fabio Biselli * src/Float.defs.hh, src/Float.inlines.hh, tests/Floating_Point_Expression/digitalfilters1.cc: Extended float_ieee754_half format. Fixed a function call in test06 with a possible solution. 2009-10-04 Fabio Biselli * src/BD_Shape.templates.hh: Removed few comments. 2009-10-05 Roberto Amadini * src/Polyhedron.templates.hh, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/polyhedron1.cc, tests/Floating_Point_Expression/polyhedron2.cc: Fixed Polyhedron::refine_with_linear_form_inequality. Adapted tests on polyhedra. 2009-10-05 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Removed abstract_store parameter of Polyhedron::affine_image and Polyhedron::refine_with_linear_form_inequality in digitalfilters1.cc 2009-10-05 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Fixed a few typos. 2009-10-05 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.inlines.hh, src/Polyhedron.templates.hh: Do not use an abstract store: extract lower and upper bounds of variables from the polyhedron itself instead. Fixed a bug in refine_with_linear_form_inequality that was triggered when both parameters left and right were bounded but left - right was not bounded. 2009-10-05 Roberto Amadini * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/digitalfilters1.cc: Modified test03, test05 and test06. 2009-10-05 François Galea * src/PIP_Tree.cc: Added code for selection of the deepest cut. 2009-10-04 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Modified test01, test02, test03 and test04. 2009-10-04 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh, tests/PIP_Problem/pipproblem1.cc: Implemented cut generation. Not stable yet. 2009-10-04 François Galea * tests/PIP_Problem/pipproblem1.cc: Added test problem. 2009-10-03 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Added widening and extrapolation operators in test01, test02, test03 and test04. 2009-10-03 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Fixed comments. 2009-10-02 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Implemented a test on polyhedra abstract domain with linearization of floating point expressions. 2009-10-02 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Implemented a test on rate limiter which uses octagons abstract domain and linearization of floating point expressions. 2009-10-02 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Unified the common denominator between both matrices of the tableau. 2009-10-01 Roberto Amadini * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/bdshape2.cc, tests/Floating_Point_Expression/digitalfilters1.cc: Improved BD_Shape::refine_with_linear_form_inequality. Corrected BD_Shape::affine_image. Adapted tests in bshape2.cc and finished test02 in digitalfilters1.cc 2009-10-01 Roberto Amadini * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/digitalfilters1.cc: Fixed bug in BD_Shape::two_variables_affine_image. Added a first implementation of test02. 2009-10-01 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Implemented test of rate limiter using polyhedra abstract domain. 2009-10-01 Roberto Amadini * tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/digitalfilters1.cc: Modified test03 and test04. 2009-10-01 Fabio Bossi * src/Polyhedron.templates.hh: Fixed a few assertions. 2009-10-01 François Galea * src/PIP_Tree.cc, src/PIP_Tree.inlines.hh, tests/PIP_Problem/pipproblem1.cc: Fixed bugs. 2009-10-01 Roberto Amadini * src/Octagonal_Shape.templates.hh, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/digitalfilters1.cc: Corrected tests with Intervals and Octagons in digitalfilters1.cc. Temporarily modified tests/Floating_Point_Expression/Makefile.am Implemented Variable_Floating_Point_Expression::linear_form_assign. Inserted invariant assertions in Octagonal_Shape::affine_image. 2009-10-01 Fabio Bossi * src/Octagonal_Shape.inlines.hh, src/Polyhedron.inlines.hh: Added two TODO notes. 2009-09-30 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented handling of artificial parameters, preparing cut generation. 2009-09-30 Fabio Biselli * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh: Removed ad useless parameter in linear_form_upperbound(); 2009-09-30 Fabio Biselli * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/bdshape2.cc: Few tests added; Fixed refine_with_linear_form_inequality(); 2009-09-29 Fabio Biselli * src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh, tests/Floating_Point_Expression/bdshape2.cc: Added few tests; Fixed refine_with_linear_form_inequality() and auxiliary functions; Implemented inline void refine_fp_interval_abstract_store(); 2009-09-29 François Galea * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.templates.hh, src/PIP_Tree.cc, tests/PIP_Problem/pipproblem1.cc: Added support for adding constraints in initial context. 2009-09-29 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc: Proper update of internal state of PIP_Problem object. 2009-09-29 Fabio Biselli * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/bdshape2.cc: Added a test. Fixed a bug in left_one_var_refine(). 2009-09-29 François Galea * src/PIP_Tree.cc: Fixed regression due to change in index ordering in parameter constraints. 2009-09-29 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Added a preliminary version of test05. Edited previous tests. 2009-09-29 Fabio Biselli * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/bdshape2.cc: Added two tests; Fixed a bug in left_one_var_refine() function. 2009-09-28 Roberto Amadini * tests/Floating_Point_Expression/digitalfilters1.cc: Added a first implementation of tests on Octagon and Polyhedra. 2009-09-29 Fabio Biselli * tests/Floating_Point_Expression/refinebdshape1.cc: Deleted a useless tests file. 2009-09-28 Roberto Amadini * tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/digitalfilters1.cc, tests/Floating_Point_Expression/octagonalshape2.cc: Started to test analysis on digital filters. Temporarily modified tests/Floating_Point_Expression/Makefile.am 2009-09-28 Fabio Biselli * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/bdshape2.cc, tests/Floating_Point_Expression/refinebdshape1.cc: Fixed few bugs in inhomogeneous_refine(); 2009-09-28 Roberto Amadini * tests/Floating_Point_Expression/polyhedron2.cc: Improved test05 2009-09-28 Fabio Bossi * tests/Floating_Point_Expression/polyhedron2.cc: Fixed test05. 2009-09-28 Roberto Amadini * tests/Floating_Point_Expression/polyhedron2.cc: Modified test04 and test05. 2009-09-26 Roberto Amadini * tests/Floating_Point_Expression/polyhedron2.cc: Modified poyhedron2.cc in order to test NNC_Polyhedron and Polyhedron::generalized_refine_with_linear_form_inequality. 2009-09-26 Roberto Amadini * tests/Floating_Point_Expression/Makefile.am: Temporarily edited tests/Floating_Point_Expression/Makefile.am 2009-09-26 Roberto Amadini * tests/Floating_Point_Expression/polyhedron2.cc: Added another test. 2009-09-26 Roberto Amadini * tests/Floating_Point_Expression/polyhedron2.cc: Added a test in polyhedron2.cc 2009-09-26 Fabio Bossi * src/Octagonal_Shape.inlines.hh, src/Polyhedron.inlines.hh, src/Polyhedron.templates.hh: Added missing const qualifiers. 2009-09-25 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.inlines.hh, src/Polyhedron.templates.hh: Implemented generalized_refine_with_linear_form_inequality. Adapted refine_with_linear_form_inequality to accept strict inequalities on not necessarily closed polyhedra. 2009-09-25 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh: Added a trivial implementation of generalized_refine_with_linear_form_inequality. 2009-09-25 Roberto Amadini * tests/Floating_Point_Expression/polyhedron1.cc: Finished to test Polyhedron::affine_image. 2009-09-25 Fabio Bossi * tests/Floating_Point_Expression/polyhedron1.cc: Fixed test04: do not perform floating point operations outside of the interval domain unless the result can be exactly represented. 2009-09-25 Fabio Bossi * tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/polyhedron2.cc: Added a couple of simple tests. Makefile fixed. 2009-09-24 Roberto Bagnara * : commit 8ca4f6890910a146f573d7a45d135aa6a07b6ece Author: Roberto Bagnara Date: Thu Sep 24 20:48:16 2009 +0200 2009-09-24 Roberto Bagnara * tests/PIP_Problem/{pipproblem.cc => pipproblem1.cc}: Renamed to follow the PPL convention on test file naming. 2009-09-24 Roberto Bagnara * tests/PIP_Problem/pipproblem.cc: Added test02(). 2009-09-24 Fabio Bossi * tests/Floating_Point_Expression/polyhedron1.cc, tests/Floating_Point_Expression/polyhedron2.cc: Fixed test05. Added a new test file. 2009-09-24 Roberto Amadini * tests/Floating_Point_Expression/polyhedron1.cc: Added two tests. 2009-09-24 Fabio Biselli * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh: Removed two unused parameters; Fixed two function calls. 2009-09-24 Roberto Bagnara * src/Interval.templates.hh: Fixed operator>>(std::istream&, Interval&). 2009-09-24 Roberto Bagnara * src/Interval.templates.hh: Spurious print statement removed. 2009-09-24 Roberto Bagnara * src/Interval.templates.hh: Fixed operator>>(std::istream&, Interval&). 2009-09-24 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh: Added the constructor Constant_Floating_Point_Expression(const char*). 2009-09-24 Roberto Bagnara * src/Interval.templates.hh: Spurious print statement removed. 2009-09-24 Roberto Bagnara * : commit e61defee29d0688a72fbe707157351a85c9a35a1 Author: Roberto Bagnara Date: Thu Sep 24 16:23:44 2009 +0200 2009-09-24 Fabio Bossi * src/Polyhedron.templates.hh: Added a couple of assertions. 2009-09-24 Roberto Amadini * tests/Floating_Point_Expression/polyhedron1.cc: Added some tests in tests/Floating_Point_Expression/polyhedron1.cc 2009-09-24 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Forgot to pass the common denominator to bounded_affine_image. 2009-09-24 Fabio Biselli * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh: Completed the method refine_with_linear_form_inequality(); added the auxiliary function left_two_var_refine(). 2009-09-24 François Galea * src/PIP_Tree.cc, tests/PIP_Problem/pipproblem.cc: Added additional check in simplex, leading to simpler decision trees. 2009-09-24 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Always assert that all variables in the abstract store are bounded. Corrected the documentation accordingly. 2009-09-24 Roberto Amadini * src/Polyhedron.templates.hh, tests/Floating_Point_Expression/Makefile.am: Started to test Polyhedron::affine_image on FP_Linear_Form. 2009-09-23 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Removed commented code in floatingpointexpr1.cc 2009-09-23 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/octagonalshape2.cc: Improved tests. Now they all pass and reach the maximum coverage. 2009-09-23 Fabio Biselli * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh: Partial implementation of refine_with_linear_form_inequality(); Two auxiliary function added. 2009-09-23 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Fixed indentation. 2009-09-23 Fabio Bossi * tests/Floating_Point_Expression/octagonalshape1.cc, tests/Floating_Point_Expression/octagonalshape2.cc: Parametrized tests for Octagonal_Shape. 2009-09-23 Roberto Amadini * tests/Floating_Point_Expression/bdshape1.cc, tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/linearform1.cc: Parametrized linearform1.cc and bdshape1.cc Fixed indentation and removed an useless test in floatingpointexpr1.cc 2009-09-23 Roberto Amadini * src/Floating_Point_Expression.defs.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/octagonalshape2.cc, tests/ppl_test.hh: Added several corrections in order to parametrize floatingpointexpr1.cc 2009-09-23 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/octagonalshape1.cc, tests/ppl_test.hh: Parametrized floatingpointexpr1.cc 2009-09-23 Fabio Bossi * src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.inlines.hh, src/Polyhedron.templates.hh: Made the refine_fp_interval_abstract_store methods inline. 2009-09-23 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Always use Box instead of map for interval abstract stores. 2009-09-23 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Removed useless parameter in PIP_Tree_Node::update_tableau method. 2009-09-23 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, tests/PIP_Problem/pipproblem.cc: Implemented display of solution trees. 2009-09-23 François Galea * src/PIP_Tree.cc: Fixed bugs. 2009-09-23 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Changed index ordering in parameter constraints. 2009-09-22 Fabio Bossi * tests/ppl_test.hh: Fixed another typo that prevented compilation of tests. 2009-09-22 Fabio Bossi * tests/ppl_test.hh: Fixed a typo that prevented compilation of tests. 2009-09-22 Roberto Bagnara * src/Float.defs.hh: Renamed float_IBM_single and float_IBM_double lowering the case for IBM. 2009-09-22 Roberto Bagnara * tests/Floating_Point_Expression/.gitignore, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/run_tests: Added some infrastructure to perform parametric tests. 2009-09-22 Fabio Bossi * src/Float.defs.hh: Added a few details about other floating point formats. 2009-09-22 Fabio Bossi * doc/definitions.dox, src/Polyhedron.defs.hh: Small documentation corrections. 2009-09-22 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/octagonalshape2.cc: Adapted test files to new representation of interval abstract stores. 2009-09-22 Fabio Bossi * src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.templates.hh: Added missing static casts so that tests now pass again. 2009-09-22 Fabio Bossi * src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.inlines.hh, src/Floating_Point_Expression.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Use Box to represent an interval abstract store. 2009-09-22 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/octagonalshape2.cc: Replaced typedefs according to the new policies. 2009-09-22 Roberto Amadini * tests/Floating_Point_Expression/Makefile.am, tests/{Polyhedron => Floating_Point_Expression}/linearform1.cc, tests/Floating_Point_Expression/{affineimage3.cc => octagonalshape1.cc}, tests/Floating_Point_Expression/{refinelf1.cc => octagonalshape2.cc}, tests/Polyhedron/Makefile.am: Refactoring of test files into test/Floating_Point_Expression. 2009-09-22 Fabio Bossi * src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.templates.hh: Adapted the class to the policies defined in Float.defs.hh. 2009-09-22 Fabio Bossi * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Pass variables to affine_image by copy. 2009-09-22 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Written Polyhedron::refine_fp_interval_abstract_store. Various other corrections. 2009-09-22 Roberto Amadini * src/BD_Shape.templates.hh: Little correction in two_variables_affine_image method. 2009-09-22 Fabio Bossi * src/Floating_Point_Expression.defs.hh, src/Octagonal_Shape.defs.hh, src/Polyhedron.templates.hh: Fixed one cut-&-paste error. Use a single call of bounded_affine_image instead of calling generalized_affine_image twice. Added two FIXME notes. 2009-09-22 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added mechanism for fetching parametric values for variables. 2009-09-22 François Galea * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added reference to the Problem object in solution tree Nodes. 2009-09-21 Roberto Amadini * tests/Floating_Point_Expression/affineimage3.cc, tests/Floating_Point_Expression/bdshape1.cc: Added another test for the general case of affine_image. 2009-09-21 Roberto Amadini * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/bdshape1.cc: Fixed a bug in affine_image and modified one_variable_affine_image. Added a new test for the general case. 2009-09-21 Roberto Amadini * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, tests/Floating_Point_Expression/bdshape1.cc: Implemented a preliminary (yet untested) version of methods BD_Shape::linear_form_upper_bound and BD_Shape::two_variables_affine_image. 2009-09-21 Fabio Bossi * src/Floating_Point_Expression.defs.hh, tests/ppl_test.hh: Added more floating point formats. Added some parametric typedefs for tests. 2009-09-21 François Galea * src/PIP_Tree.cc: Bug fixes. 2009-09-21 Fabio Bossi * src/Octagonal_Shape.defs.hh: Added a few lines of documentation that were previously forgotten. 2009-09-21 Fabio Bossi * src/Polyhedron.defs.hh: Added some more documentation. 2009-09-21 Roberto Amadini * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/bdshape1.cc: Fixed a bug in affine_image and implemented three new tests. 2009-09-21 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Polyhedron.defs.hh: Added some (and corrected some of the) documentation. 2009-09-21 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Wrote a first implementation of refine_with_linear_form_inequality. 2009-09-21 Roberto Amadini * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/bdshape1.cc: Fixed a bug in BD_Shape::affine_image and added more tests for this method. 2009-09-21 Fabio Bossi * src/Polyhedron.templates.hh, src/Polyhedron_nonpublic.cc: Use the proper exception thrower. Moved the new exception thrower. 2009-09-21 Fabio Bossi * src/Polyhedron.templates.hh, src/Polyhedron_nonpublic.cc: Various corrections. 2009-09-21 Fabio Bossi * src/Polyhedron.templates.hh: Finished writing a first version of our affine_image variant. 2009-09-20 Fabio Biselli * src/BD_Shape.templates.hh: Removed a temporary using sub_assign_r instead of add_assign_r 2009-09-20 Fabio Biselli * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, tests/Floating_Point_Expression/bdshape1.cc: Bugs fixes 2009-09-19 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Finished writing a first implementation of convert_to_integer_expression and convert_to_integer_expressions. 2009-09-19 Fabio Bossi * src/Polyhedron.templates.hh: Small progress in writing convert_to_integer_expressions. 2009-09-19 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Sterted writing the functions that are used to convert floating point constraints to integer ones. 2009-09-19 Roberto Amadini * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, src/Octagonal_Shape.templates.hh: Implemented methods BD_Shape::inhomogeneous_affine_image and BD_Shape::one_variable_affine_image. 2009-09-19 Abramo Bagnara * src/math_utilities.defs.hh, src/math_utilities.inlines.hh: Converted helpers to work also for native numbers. 2009-09-18 Roberto Bagnara * src/ppl_header.hh: Make sure the latest changes to NDEBUG effective. 2009-09-18 Roberto Amadini * src/BD_Shape.templates.hh, tests/Floating_Point_Expression/affineimage3.cc, tests/Floating_Point_Expression/bdshape1.cc, tests/Floating_Point_Expression/refinelf1.cc: Added a test for trivial cases of BD_Shape::affine_image. 2009-09-18 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh, src/Polyhedron_nonpublic.cc: Started the implementation of our affine_image variant. 2009-09-18 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Floating_Point_Expression/refinelf1.cc: Added test for Octagonal_Shape::refine_fp_interval_abstract_store. 2009-09-18 Fabio Biselli * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/bdshape1.cc: Added function BD_Shape::affine_image(const Variable& var, const Linear_Form< Interval >& lf); Added interfaces for auxiliary functions: BD_Shape::inhomogeneous_affine_image(...); BD_Shape::one_variable_affine_image(...); BD_Shape::two_variable_affine_image(...); Added a preliminary test. 2009-09-18 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Added a first implementation of overapproximate_linear_form. 2009-09-18 Francois GALEA * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Fixed ASCII dump/load methods, solving compilation issues. 2009-09-18 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Coverage of 100% reached for refine_with_linear_form_inequality. 2009-09-18 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Added a test. 2009-09-18 Fabio Bossi * src/Octagonal_Shape.templates.hh, tests/Floating_Point_Expression/refinelf1.cc: Added missing multiplications by 2. All tests now pass. 2009-09-18 Fabio Bossi * src/Polyhedron.defs.hh, src/Polyhedron.templates.hh: Added interfaces (and empty body) of two new methods. 2009-09-18 Roberto Amadini * tests/Floating_Point_Expression/affineimage3.cc, tests/Floating_Point_Expression/refinelf1.cc: Added two more tests in refinelf1.cc Improved a test in affineimage3.cc 2009-09-18 François Galea * src/PIP_Tree.cc: Finished parametric simplex algorithm. No cut generation yet. 2009-09-17 Roberto Bagnara * CREDITS: Added Roberto Amadini to the list of current contributors. 2009-09-17 Roberto Amadini * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh: Pass variables to affine_image as const references. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Removed the check on empty octagons in function test01. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Removed useless emptiness check. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Assert that the octagon is not empty when refining, since the analyzer should not try to apply filters in an unreachable state. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Do not reset strong closure manually since add_octagonal_constraint already does it automatically. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Always use add_octagon_constraint to update contraints in refine_with_linear_form_inequality instead of overwriting blindly. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Removed a bug in test functions. Added a test for general case. 2009-09-17 Enea Zaffanella * src/Octagonal_Shape.templates.hh: Fixed several rounding modes in Octagonal_Shape methods. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Added two tests. Particular cases totally covered. 2009-09-17 Abramo Bagnara * src/Temp.defs.hh, src/Temp.inlines.hh: Fixed and simplified DIRTY_TEMP for use with -fno-elide-constructors. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Removed comments. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Added another test. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Fixed one nasty cut & paste error. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Added a test. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Use references instead of pointers whenever possible. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Added and modified tests. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Optimized refine_with_linear_form_inequality, removing six temporaries in the process. 2009-09-17 Roberto Amadini * tests/Floating_Point_Expression/refinelf1.cc: Added two tests. 2009-09-17 Roberto Amadini * src/Octagonal_Shape.templates.hh, tests/Floating_Point_Expression/Makefile.am: Start to test Octagonal_Shape::refine_with_linear_form_inequality. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Removed unnecessary temporaries from affine_image. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Optimized linear_form_upper_bound: got rid of two unnecessary temporaries. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Definitively removed counterproductive checks in linear_form_upper_bound, since we have confirmed that comparing with -infinity is legitimate. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Use ROUND_DOWN instead of ROUND_UP to compute the negation of the upper bound of -var. 2009-09-17 Fabio Bossi * src/Octagonal_Shape.templates.hh: Use ROUND_UP (or, in one case where intervals are involved, ROUND_DOWN) whenever appropriate. 2009-09-16 Roberto Amadini * src/Octagonal_Shape.templates.hh, tests/Floating_Point_Expression/affineimage3.cc: Added another test. Coverage of 100% reached for affine_image and linear_form_upper_bound methods. Temporarily(?) removed some checks in linear_form_upper_bound. 2009-09-16 François Galea * src/PIP_Tree.cc: Fixes to avoid some useless Coefficient duplicates. 2009-09-16 François Galea * src/PIP_Tree.cc: Implemented the Rational_Matrix normalize method. 2009-09-16 Fabio Bossi * doc/definitions.dox, src/Octagonal_Shape.defs.hh: Small documentation improvements. 2009-09-16 Fabio Bossi * src/Octagonal_Shape.defs.hh: Added some comments. 2009-09-16 Roberto Amadini * tests/Floating_Point_Expression/affineimage3.cc: Implemented tests (from test04 to test08). 2009-09-16 Fabio Bossi * src/Octagonal_Shape.templates.hh: Fixed a couple of syntax errors. 2009-09-16 Fabio Bossi * src/Octagonal_Shape.templates.hh: Many corrections. 2009-09-16 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented additional steps of the simplex algorithm. - handling of simplex rows with mixed parameter sign; - handling of tautology expressions; - handling of splitting a solution according to a test parametric expression. 2009-09-16 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Modified prototype for solve method in PIP_Tree_Node and derivates. 2009-09-16 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Redefined and implemented the tree node constructors. 2009-09-16 Fabio Bossi * src/Octagonal_Shape.templates.hh: Use PPL_COMPILE_TIME_CHECK insteas of PPL_ASSERT whenever possible. 2009-09-16 Fabio Bossi * src/Octagonal_Shape.templates.hh: Fixed one typo. 2009-09-16 Fabio Bossi * src/Octagonal_Shape.templates.hh: Added more cases for refine_linear_form_inequality. 2009-09-16 Fabio Biselli * src/Linear_Form.templates.hh, src/Octagonal_Shape.templates.hh, tests/Floating_Point_Expression/affineimage3.cc: Fixed a bug in Linear_Form::operator<<() Fixed a bug in Octagonal_Shape::linear_form_upper_bound() Added a test 2009-09-14 Fabio Biselli * src/Octagonal_Shape.defs.hh: Removed garbage 2009-09-16 Roberto Amadini * tests/Floating_Point_Expression/affineimage3.cc: Added some tests. 2009-09-15 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh: Added a first, untested implementation of refine_fp_interval_abstract_store. 2009-09-15 Fabio Bossi * src/Octagonal_Shape.templates.hh: For consistency, use std::numeric_limits::is_exact in order to check if T is a floating point type. 2009-09-15 Fabio Bossi * src/Octagonal_Shape.templates.hh: Added a first implementation of refine_with_linear_form_inequality. Two small optimizations for affine_image. 2009-09-15 Roberto Amadini * tests/Floating_Point_Expression/affineimage3.cc: Added new test. 2009-09-15 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented simplex pivot on rational matrices. 2009-09-15 Roberto Amadini * tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/affineimage3.cc: Added a test for Octagonal_Shape::affine_image in tests/Floating_Point_Expression/affineimage3.cc 2009-09-15 Fabio Bossi * src/Octagonal_Shape.templates.hh: Fixed a few typos preventing compilation. 2009-09-15 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh: Added missing assertion and FIXME note. Started the implementation of refine_with_linear_form_inequality. 2009-09-15 Fabio Bossi * src/Octagonal_Shape.templates.hh: It is NECESSARY to delay the update of unary constraints on var. 2009-09-14 Roberto Bagnara * src/c_streambuf.defs.hh: Added missing comment. 2009-09-14 Fabio Bossi * src/Octagonal_Shape.templates.hh: Fixed two serious bugs in linear_form_upper_bound. 2009-09-14 François Galea * src/PIP_Tree.cc: Implemented the first steps of the parametric simplex algorithm. 2009-09-14 Fabio Bossi * src/Linear_Form.templates.hh: Fixed an error introduced by previous commit. 2009-09-14 Fabio Bossi * src/Linear_Form.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh: Added missing static_casts in Linear_Form. Fixed one bug in linear_form_upper_bound. Added a first complete implementation of affine_image. 2009-09-14 François Galea * src/PIP_Problem.cc, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Changed modelization of contexts from Constraint_System to Matrix. 2009-09-14 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh: Added another helper function. Removed garbage code. 2009-09-13 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh: Added an auxiliary method. Sorry for the huge amount of commented code: it will be fixed soon. 2009-09-11 Roberto Bagnara * interfaces/marked_pointers.hh: Do not include . The header files and/or are included by ppl-config.h. 2009-09-11 Roberto Bagnara * configure.ac: Make sure uintptr_t is defined, if at all possible. 2009-09-11 François Galea * src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Moved the constraint() method to PIP_Tree_Node class. 2009-09-11 Fabio Bossi * src/Octagonal_Shape.templates.hh: Removed outdated FIXME note. 2009-09-11 Fabio Bossi * src/Octagonal_Shape.templates.hh: Added other simple cases of affine_image. 2009-09-11 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added first tests in OK() methods of PIP_Tree classes. 2009-09-11 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented integer context compatibility check. 2009-09-11 Fabio Bossi * src/Octagonal_Shape.templates.hh: Implemented another case for affine_image. 2009-09-11 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented row sign detection. 2009-09-11 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Implemented constraint negation, plus minor fixes. 2009-09-11 Fabio Bossi * src/Octagonal_Shape.templates.hh: Added a skeleton for the rest of the affine_image implementation. 2009-09-11 Fabio Bossi * src/Octagonal_Shape.templates.hh: Now the trivial case of affine_image works. 2009-09-10 Fabio Bossi * src/Octagonal_Shape.templates.hh: Written a preliminary, non working first part of our variant of affine_image. 2009-09-10 Enea Zaffanella * src/PIP_Tree.cc: Improved recently added helper functions. - avoid recomputing loop bounds at each iteration; - delay object definitions until actually needed and, if possible, provide them with an initializer. 2009-09-10 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Fix compilation problems when assertions are turned on. 2009-09-10 Enea Zaffanella * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Identifiers starting with an underscore are reserved: avoid them. 2009-09-10 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented some helper functions for the PIP solver. 2009-09-10 Enea Zaffanella * STANDARDS: Suggest using -fno-elide-constructors when configuring for coverage. 2009-09-10 Fabio Bossi * src/Variable_Floating_Point_Expression.defs.hh: Fixed another small documentation inconsistency. 2009-09-10 François Galea * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Integrated the solve method in the different PIP_Tree node classes. 2009-09-10 Fabio Bossi * src/Division_Floating_Point_Expression.defs.hh: Fixed another small error in the documentation. 2009-09-10 Fabio Bossi * src/Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.defs.hh: Other small corrections to the documentation. 2009-09-10 Fabio Bossi * src/Multiplication_Floating_Point_Expression.defs.hh: Fixed one small typo. 2009-09-10 Fabio Bossi * doc/ppl.sty: Remove all references to floating point format f. 2009-09-10 Fabio Bossi * src/Difference_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh: More additions and corrections to the documentation. 2009-09-10 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Grammar fix in the documentation. 2009-09-10 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Fixed one small error. 2009-09-10 Fabio Bossi * src/Sum_Floating_Point_Expression.defs.hh: Fixed another inconsistency in the documentation. 2009-09-10 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Fixed conflicts. 2009-09-10 Fabio Bossi * doc/definitions.dox: Fixed an inconsistency with the rest of the documentation. 2009-09-10 Fabio Bossi * src/Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Fixed a few errors. 2009-09-10 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Added missing \brief marker. 2009-09-10 Fabio Bossi * src/Multiplication_Floating_Point_Expression.defs.hh: Use \otimes only in math environment. 2009-09-10 Fabio Bossi * doc/definitions.dox, src/Constant_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Revised and corrected the whole documentation. 2009-09-10 Roberto Amadini * tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/linearform1.cc, tests/Polyhedron/linearform1.cc: Moved linearform1.cc into tests/Polyhedron. 2009-09-10 Fabio Biselli * src/Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.defs.hh: Updated intervalize documentation; Updated Opposite_Floating_Point_Expression documentation; 2009-09-10 Enea Zaffanella * src/Difference_Floating_Point_Expression.defs.hh: Removed spurious occurrence of a closing comment, preventing compilation. 2009-09-09 Roberto Amadini * tests/Floating_Point_Expression/linearform1.cc: Improved test for class Linear_Form. 2009-09-09 Fabio Biselli * doc/ppl.sty, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh: Fixed few typo 2009-09-09 Fabio Bossi * src/Division_Floating_Point_Expression.defs.hh: Fixed typo. 2009-09-09 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh: Use \infty instead of \infinity. 2009-09-09 Fabio Biselli * src/Constant_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Updated documentation 2009-09-09 Fabio Bossi * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh: Predisposed everything to start implementing our own customized version of method affine_image. 2009-09-09 Roberto Amadini * src/Linear_Form.templates.hh, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/linearform1.cc: Fixed bug in Linear_Form. Copied linearform1.cc in tests/Floating_Point_Expression and improved its tests. 2009-09-09 François Galea * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Implemented proper handling of nonbasic variables when adding rows. 2009-09-09 Fabio Bossi * doc/definitions.dox: Use \defeq instead of = for definitions. Fixed an error concerning frames. 2009-09-09 Fabio Bossi * doc/definitions.dox: Use new linearization macro. 2009-09-09 Fabio Bossi * doc/definitions.dox: Removed trailing whitespace. 2009-09-09 Fabio Bossi * doc/definitions.dox: More documentation. 2009-09-09 Fabio Bossi * src/Linear_Form.templates.hh: Fixed a bug in operator==. 2009-09-09 Fabio Biselli * doc/ppl.sty: Added new macros into doc/ppl.sty 2009-09-08 Fabio Biselli * doc/devref.doxyconf-html.in, src/Linear_Form.defs.hh, src/Sum_Floating_Point_Expression.defs.hh: Added Linear_Form into doxyconf file Fixed few typos in Linear_Form Minor Documentations updates 2009-09-08 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Added and modified tests in order to reach the coverage of 100% in Floating_Point_Expression class and its derived classes. 2009-09-08 Fabio Bossi * doc/definitions.dox: Fixed pedix. 2009-09-08 Fabio Bossi * doc/definitions.dox: Fixed an error in command invocation. 2009-09-08 Fabio Bossi * doc/definitions.dox, doc/ppl.sty: Added some documentation. 2009-09-08 Fabio Biselli * src/Constant_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Update variale and constant documentations 2009-09-08 Fabio Biselli * doc/ppl.sty: Added Latex macro for abstract division. 2009-09-08 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Removed useless comments. 2009-09-08 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Added test for unary minus and multiplication by constant. 2009-09-08 Fabio Biselli * doc/ppl.sty, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh: Updated linearization documentation; Added formulas to class descriptions; 2009-09-08 Fabio Biselli * doc/ppl.sty, src/Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh: Fixed documentation 2009-09-08 François Galea * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Moved the simplex tableau from PIP_Problem to PIP_Solution_Node. 2009-09-08 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Notify that open intervals should not be allowed. 2009-09-08 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Documentation improved. 2009-09-08 Fabio Bossi * tests/Floating_Point_Expression/floatingpointexpr1.cc: Deleted FIXME note. 2009-09-08 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Added and modified some tests. 2009-09-07 Fabio Biselli * src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Update documentation 2009-09-07 Roberto Amadini * src/Floating_Point_Expression.templates.hh, tests/Floating_Point_Expression/floatingpointexpr1.cc: Fixed a bug in method relative_error. Edited test06 to cope with the new interface of method linearize. 2009-09-07 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Added one test. 2009-09-07 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.templates.hh, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh, tests/Floating_Point_Expression/floatingpointexpr1.cc: Extended method linearize to also accept a linear form abstract store. Adjusted tests (but NOT YET THE DOCUMENTATION) accordingly. 2009-09-07 Fabio Biselli * src/Constant_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Documentation updates 2009-09-07 Fabio Bossi * src/Floating_Point_Expression.templates.hh: Do not ignore undefined variables while intervalizing: assert that they are defined instead. 2009-09-07 Fabio Bossi * src/Linear_Form.templates.hh, tests/Floating_Point_Expression/floatingpointexpr1.cc: Fixed a bug in Linar_Form::operator== where zero coefficients were not treated properly. Added a few simple tests for class Floating_Point_Expression. 2009-09-07 Fabio Bossi * tests/Floating_Point_Expression/floatingpointexpr1.cc: Added more typedefs and one test. 2009-09-07 Fabio Bossi * tests/Floating_Point_Expression/floatingpointexpr1.cc: Added two simple tests. 2009-09-07 Fabio Biselli * src/Constant_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Fixed comments and documentation 2009-09-07 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Made absolute_error constant. 2009-09-04 François Galea * src/Makefile.am: Fixed missing make dependency for recently added header file. 2009-09-05 Fabio Bossi * src/Floating_Point_Expression.templates.hh: Fixed erroneous use of const&. 2009-09-05 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.templates.hh, src/Linear_Form.defs.hh, src/Linear_Form.templates.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.templates.hh, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh: Added operator/= and method negate for class Linear_Form. Refactored code of class Floating_Point_Exception and its derivate classes in order to avoid creating unnecessary temporaries. 2009-09-04 Fabio Biselli * src/Constant_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Added more documentation 2009-09-04 Enea Zaffanella * src/PIP_Problem.cc: Corrected bug in PIP_Problem::add_space_dimensions_and_embed(). 2009-09-04 Enea Zaffanella * src/Variables_Set.defs.hh: Corrected a couple of typos in documentation of Variables_Set. 2009-09-04 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.inlines.hh: Implemented methods querying/adding space dimensions and parameters. 2009-09-04 Fabio Bossi * tests/Floating_Point_Expression/floatingpointexpr1.cc: Added necessary typedefs for tests. Removed garbage. 2009-09-04 François Galea * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh: Implemented simplex basis and tableau initialization in PIP solver. 2009-09-04 François Galea * doc/devref.doxyconf-html.in: Included the PIP_Problem and PIP_Tree classes in the devref documentation. 2009-09-04 Fabio Bossi * src/Division_Floating_Point_Expression.templates.hh: Added a workaround for the fact that we don't have an explicit way to divide a Linear_Form by an Interval. 2009-09-04 Fabio Bossi * src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.templates.hh: Fixed various errors. 2009-09-04 Fabio Bossi * src/Variable_Floating_Point_Expression.inlines.hh: Fixed bad use of constructor. 2009-09-04 Fabio Bossi * src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Sum_Floating_Point_Expression.templates.hh, src/Variable_Floating_Point_Expression.inlines.hh: Style improvements. 2009-09-04 Roberto Bagnara * CREDITS: Listed François Galea among the current contributors. 2009-09-03 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh: Drafted implementation for ascii_dump and ascii_load methods. 2009-09-03 Enea Zaffanella * tests/Makefile.am, tests/PIP_Problem/pipproblem.cc: Do perform PIP_Problem tests first. 2009-09-03 Enea Zaffanella * src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh: Minor coding style improvements. 2009-09-02 François Galea * configure.ac, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Problem.templates.hh, tests/Makefile.am, tests/PIP_Problem/Makefile.am, tests/PIP_Problem/pipproblem.cc: Started the implementation of the PIP_Problem class. In particular: - defined the PIP_Problem constructors; - added the definition of the rational matrix class; - added the definition of simplex tableau; - created a test program. 2009-09-03 Roberto Amadini * tests/Floating_Point_Expression/floatingpointexpr1.cc: Deleted a superfluous test. 2009-09-03 Fabio Biselli * doc/devref.doxyconf-html.in, src/Constant_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Added some documentation. 2009-09-03 Fabio Bossi * src/Difference_Floating_Point_Expression.inlines.hh, src/Division_Floating_Point_Expression.inlines.hh, src/Multiplication_Floating_Point_Expression.inlines.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.inlines.hh: Use 0 instead of NULL. 2009-09-03 Fabio Bossi * src/Floating_Point_Expression.templates.hh: Fixed an error in relative_error. 2009-09-03 Fabio Bossi * src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh: Fixed erroneous declarations of namespace std inside namespace Parma_Polyhedra_Library. 2009-09-03 Fabio Bossi * src/Difference_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.templates.hh, src/Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.inlines.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Sum_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.templates.hh: Fixed many errors. 2009-09-03 Fabio Bossi * src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.templates.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Sum_Floating_Point_Expression.templates.hh: Fixed a few typos. 2009-09-03 Enea Zaffanella * configure.ac, tests/Floating_Point_Expression/Makefile.am, tests/Floating_Point_Expression/floatingpointexpr1.cc, tests/Makefile.am: Added a test directory (and a dummy test file). 2009-09-03 Fabio Bossi * src/Interval.defs.hh, src/Interval.inlines.hh: Added a temporary implementation for external method neg_assign. 2009-09-03 Fabio Bossi * src/Difference_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.defs.hh: Fixed inclusions. 2009-09-03 Fabio Bossi * src/Difference_Floating_Point_Expression.types.hh, src/Sum_Floating_Point_Expression.types.hh: Fixed inclusion guards. 2009-09-03 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Added necessary static_cast when computing absolute error. 2009-09-03 Fabio Bossi * src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.templates.hh, src/Makefile.am, src/Multiplication_Floating_Point_Expression.templates.hh, src/Sum_Floating_Point_Expression.templates.hh: Implemented linearization operator for Division_Floating_Point_Expression. Fixed several typos. 2009-09-02 Roberto Bagnara * CREDITS: Added Fabio Biselli to the list of current contributors. 2009-09-02 Fabio Bossi * src/Difference_Floating_Point_Expression.templates.hh, src/Division_Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.templates.hh, src/Makefile.am, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.templates.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.templates.hh: Added linearization operator for Multiplication_Floating_Point_Expression. Several other corrections and improvements. 2009-09-02 Roberto Bagnara * CREDITS: Added Fabio Bossi to the list of current contributors. 2009-09-02 Fabio Bossi * src/Division_Floating_Point_Expression.inlines.hh, src/Makefile.am, src/Multiplication_Floating_Point_Expression.inlines.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh: Removed dummy linearization operators. Implemented the linearization operator for Opposite_Floating_Point_Expression. 2009-09-02 Fabio Bossi * src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.templates.hh, src/Makefile.am, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.templates.hh: Added a few more implementations of the linearization operator. 2009-09-02 Fabio Bossi * src/Constant_Floating_Point_Expression.inlines.hh, src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.inlines.hh, src/Floating_Point_Expression.templates.hh, src/Makefile.am: Added a first implementation of the relative_error and intervalize methods. Fixed a mistake with loops over linear forms. Several style improvements. 2009-09-02 Fabio Biselli * src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.inlines.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.inlines.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.inlines.hh: Rewritten according to Enea's indications. 2009-09-01 Fabio Biselli * src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.inlines.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.inlines.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.inlines.hh: Added swap functions and inhibited assignment and copy constructor. 2009-09-01 Fabio Biselli * src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.inlines.hh: Removed trailing whitespaces. 2009-09-01 Fabio Biselli * src/Difference_Floating_Point_Expression.defs.hh, src/Difference_Floating_Point_Expression.inlines.hh, src/Difference_Floating_Point_Expression.types.hh, src/Division_Floating_Point_Expression.defs.hh, src/Division_Floating_Point_Expression.inlines.hh, src/Division_Floating_Point_Expression.types.hh, src/Multiplication_Floating_Point_Expression.defs.hh, src/Multiplication_Floating_Point_Expression.inlines.hh, src/Multiplication_Floating_Point_Expression.types.hh, src/Sum_Floating_Point_Expression.defs.hh, src/Sum_Floating_Point_Expression.inlines.hh, src/Sum_Floating_Point_Expression.types.hh: Added a few more classes for floating point expressions. 2009-09-02 Fabio Bossi * src/Floating_Point_Expression.defs.hh: Corrected absolute error calculation to account for underflows. 2009-09-02 Fabio Bossi * src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.inlines.hh: Added static helper methods and a few policy classes. 2009-09-02 Fabio Bossi * src/Opposite_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.defs.hh: Made constructors explicit. 2009-09-02 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh: Fixed code according to Enea's indications. 2009-09-01 Fabio Bossi * src/Opposite_Floating_Point_Expression.inlines.hh: Added destructor implementation. 2009-09-01 Fabio Bossi * src/Opposite_Floating_Point_Expression.inlines.hh: Fixed a typo. 2009-09-01 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh: Added swapping functions. 2009-09-01 Fabio Bossi * src/Opposite_Floating_Point_Expression.defs.hh, src/Opposite_Floating_Point_Expression.inlines.hh, src/Opposite_Floating_Point_Expression.types.hh: Added the files for the first (incomplete) version of class Opposite_Floating_Point_Expression 2009-09-01 Fabio Bossi * src/Constant_Floating_Point_Expression.inlines.hh: Fixed an error in method linearize. 2009-09-01 Fabio Bossi * src/Makefile.am, src/Variable_Floating_Point_Expression.defs.hh, src/Variable_Floating_Point_Expression.inlines.hh, src/Variable_Floating_Point_Expression.types.hh: Added a first version of class Variable_Floating_Point_Expression. 2009-09-01 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh: Corrected the interface of the two-argument constructor. 2009-09-01 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Floating_Point_Expression.defs.hh: Corrected the interface of method linearize. 2009-08-31 Fabio Bossi * src/Constant_Floating_Point_Expression.defs.hh, src/Constant_Floating_Point_Expression.inlines.hh, src/Constant_Floating_Point_Expression.types.hh, src/Floating_Point_Expression.defs.hh, src/Floating_Point_Expression.inlines.hh, src/Floating_Point_Expression.types.hh, src/Makefile.am: Added a few classes that represent floating point expressions. 2009-08-25 Roberto Bagnara * src/PIP_Tree.defs.hh: Typo fixed. 2009-08-21 Roberto Bagnara * : commit c9ec5bc2cb674fd20a8cdc4c85b93361428ed8e2 Author: Roberto Bagnara Date: Tue Aug 18 09:57:45 2009 +0200 2009-08-17 Roberto Bagnara * src/Linear_Form.defs.hh: Started adjusting the documentation. 2009-08-17 Roberto Bagnara * src/Linear_Form.defs.hh, src/Linear_Form.inlines.hh, src/Linear_Form.templates.hh: Implemented Linear_Form::external_memory_in_bytes() and Linear_Form::external_memory_in_bytes(). Other minor improvements. 2009-08-17 Roberto Bagnara * src/Linear_Expression.cc: Do not use std::swap(): use Linear_Expression::swap() instead. 2009-08-17 Roberto Bagnara * src/Linear_Form.cc, src/Linear_Form.defs.hh, src/Linear_Form.inlines.hh, src/Linear_Form.templates.hh, src/Linear_Form.types.hh, src/Makefile.am, tests/Polyhedron/Makefile.am, tests/Polyhedron/linearform1.cc: Added a preliminary implementation of class Linear_Form. 2009-08-17 Roberto Bagnara * src/Linear_Expression.cc: Added missing inclusion of . 2009-08-15 Enea Zaffanella * NEWS: Mention correction of bug in Pointset_Powerset maximize/minimize methods. 2009-08-15 Enea Zaffanella * src/Pointset_Powerset.templates.hh: Indentation fixed. 2009-08-15 Enea Zaffanella * src/Pointset_Powerset.templates.hh: Corrected a bug in Pointset_Powerset methods minimize() and maximize(). We now return false if the powerset is found to be empty. 2009-08-15 Enea Zaffanella * tests/Octagonal_Shape/max_min1.cc, tests/Polyhedron/max_min1.cc, tests/Powerset/maxmin1.cc: Corrected a few expected results in Powerset/maxmin1.cc. This uncovered a bug in Pointset_Powerset methods maximize() and minimize(), whereby we are returning true even for empty powersets. 2009-08-07 Roberto Bagnara * configure.ac: Version number bumped. 2009-08-07 Roberto Bagnara * interfaces/Prolog/ppl_interface_generator_prolog_cc_files.m4: Useless, commented-out inclusion removed. 2009-08-07 Abramo Bagnara * interfaces/C/Makefile.am, interfaces/C/ppl_interface_generator_c_cc_files.m4, interfaces/C/ppl_interface_generator_c_hh_files.m4, interfaces/Java/jni/Makefile.am, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_files.m 4, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java.m4, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/OCaml/Makefile.am, interfaces/OCaml/ppl_interface_generator_ocaml_cc_files.m4, interfaces/OCaml/ppl_interface_generator_ocaml_hh_files.m4, interfaces/Prolog/Makefile.am, interfaces/Prolog/ppl_interface_generator_prolog_cc_files.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_files.m4, interfaces/Prolog/tests/Makefile.am, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl.m4, utils/cm_cleaner.sh, utils/cm_splitter.sh: Modified cm_splitter machinery to avoid use of 'read' shell builtin. 2009-08-07 Enea Zaffanella * NEWS: Mention a bug that was recently corrected. 2009-08-07 Enea Zaffanella * src/Polyhedron_nonpublic.cc, tests/Polyhedron/polyhullifexact2.cc: Corrected implementation of NNC_Polyhedron::upper_bound_assign_if_exact(). Added a few tests for regression checking. 2009-08-05 Roberto Bagnara * interfaces/Prolog/SWI/swi_prolog_generated_test.pl: Make sure a definition for member/2 and append/3 is available. 2009-08-03 Roberto Bagnara * m4/ac_check_fpu_control.m4: Removed useless, temporary addition of -lm to LIBS. (Thanks to Joseph Prostko.) 2009-08-03 Roberto Bagnara * configure.ac: Checks reordered. 2009-08-02 Roberto Bagnara * configure.ac: Version number bumped. 2009-08-02 Roberto Bagnara * configure.ac: Use AC_SEARCH_LIBS to detect whether -lm must be provided to the linker. (Thanks to Joseph Prostko.) 2009-08-02 Roberto Bagnara * tests/Polyhedron/Makefile.am: Do not add -lm to LDADD for *randphull1. 2009-08-02 Roberto Bagnara * Watchdog/tests/Makefile.am: Do not link with -lm here. 2009-07-31 Roberto Bagnara * configure.ac, interfaces/Prolog/YAP/Makefile.am, m4/ac_check_yap.m4: Improved and generalized the detection of YAP. 2009-07-30 Roberto Bagnara * INSTALL, Watchdog/INSTALL: Updated from Autoconf 2.64. 2009-07-28 Roberto Bagnara * configure.ac: Version number bumped. 2009-07-28 Roberto Bagnara * m4/ac_check_swi_prolog.m4: On Windows, the console version of SWI-Prolog is called `plcon'. 2009-07-15 Enea Zaffanella * tests/Polyhedron/weightwatch1.cc: Adjusted weight thresholds. 2009-07-14 Roberto Bagnara * src/MIP_Problem.cc: Debugging prints improved. 2009-07-14 Roberto Bagnara * src/MIP_Problem.cc: Weights adjusted. Added more debugging prints. 2009-07-14 Roberto Bagnara * src/MIP_Problem.cc: More weights adjusted. Added a couple of debugging prints. 2009-07-14 Enea Zaffanella * src/MIP_Problem.cc: Added printing of MIP solver recursion level for (noisy) debugging. 2009-07-14 Roberto Bagnara * src/Box.templates.hh, src/MIP_Problem.cc: Added some weights. Added some debugging prints. 2009-07-14 Roberto Bagnara * TODO: Todo items reorganized. Removed the one about NOT_EQUAL. 2009-07-14 Roberto Bagnara * configure.ac: Version number bumped. 2009-07-14 Roberto Bagnara * interfaces/Prolog/Ciao/ciao_clpq.pl, interfaces/Prolog/Ciao/ciao_clpq2.pl, interfaces/Prolog/Ciao/ciao_pl_check.pl, interfaces/Prolog/XSB/xsb_clpq.P, interfaces/Prolog/XSB/xsb_clpq2.P, interfaces/Prolog/XSB/xsb_pl_check.P: The *_and_minimize/N predicates have gone: remove residual references to them. 2009-07-14 Enea Zaffanella * src/Box.templates.hh: Added WEIGHT_BEGIN and corrected WEIGHT_ADD_MUL macro. 2009-07-14 Enea Zaffanella * src/MIP_Problem.cc: Added WEIGHT_BEGIN() macros and reset a few weights. 2009-07-14 Abramo Bagnara * src/conversion.cc, src/globals.defs.hh: Added profiled weights. 2009-07-14 Enea Zaffanella * src/Box.templates.hh: Modified computational weight for propagate_constraints. 2009-07-14 Enea Zaffanella * src/MIP_Problem.cc: Added tentative computational weights to MIP_Problem. 2009-07-14 Abramo Bagnara * src/conversion.cc: Fixed WEIGHT_ADD use. 2009-07-13 Roberto Bagnara * src/conversion.cc: WEIGHT_ADD moved. 2009-07-13 Abramo Bagnara * src/globals.inlines.hh: Removed forgotten WEIGHT_ADD. 2009-07-13 Abramo Bagnara * src/Weight_Profiler.cc: Don't compile Weight_Profiler if it's not used. 2009-07-13 Enea Zaffanella * src/Weight_Profiler.defs.hh: Minor formatting improvements. 2009-07-13 Roberto Bagnara * src/conversion.cc: Use less simplistic weights. 2009-07-13 Roberto Bagnara * src/assert.hh: Comment improved. 2009-07-13 Abramo Bagnara * Watchdog/src/Threshold_Watcher.defs.hh: Added additional info about Traits template parameter. 2009-07-13 Abramo Bagnara * src/Weight_Profiler.defs.hh, src/globals.defs.hh, src/globals.inlines.hh: Converted weight threshold to unsigned long long. 2009-07-13 Abramo Bagnara * src/Box.templates.hh, src/MIP_Problem.cc, src/Makefile.am, src/Weight_Profiler.cc, src/Weight_Profiler.defs.hh, src/assert.hh, src/conversion.cc, src/globals.defs.hh, src/globals.inlines.hh: Added weight profiler 2009-07-13 Enea Zaffanella * interfaces/OCaml/tests/test1.ml: In the Ocaml tests, timeouts are now reset unconditionally. 2009-07-13 Enea Zaffanella * Watchdog/src/Watchdog.defs.hh: Drafted a few missing comments. To be completed (by the author). 2009-07-13 Roberto Bagnara * src/BD_Shape.defs.hh, src/Box.defs.hh, src/Octagonal_Shape.defs.hh: Added the documentation of some parameters. 2009-07-13 Roberto Bagnara * src/Affine_Space.defs.hh: Doxygen reference fixed. 2009-07-13 Roberto Bagnara * src/Affine_Space.defs.hh, src/Grid.defs.hh, src/Polyhedron.defs.hh: Fixed several documentation bugs signalled by Doxygen. 2009-07-13 Roberto Bagnara * configure.ac: Version number bumped. 2009-07-13 Abramo Bagnara * src/assert.hh: Removed repeated declaration. 2009-07-13 Abramo Bagnara * src/assert.hh, src/globals.cc, src/globals.inlines.hh: Moved in_assert in Implementation namespace. 2009-07-13 Roberto Bagnara * src/Grid_public.cc: Warnings avoided. 2009-07-13 Roberto Bagnara * src/Boundary.defs.hh: Warnings avoided. 2009-07-13 Roberto Bagnara * src/Matrix.cc: Spurious parenthesis removed. 2009-07-13 Enea Zaffanella * NEWS: Announced availability of the deterministic timeout facilities. 2009-07-13 Abramo Bagnara * src/Affine_Space.cc, src/Ask_Tell.inlines.hh, src/Ask_Tell.templates.hh, src/BDS_Status.inlines.hh, src/BD_Shape.cc, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh, src/BHRZ03_Certificate.cc, src/BHRZ03_Certificate.defs.hh, src/BHRZ03_Certificate.inlines.hh, src/Bit_Matrix.cc, src/Bit_Matrix.inlines.hh, src/Bit_Row.cc, src/Bit_Row.inlines.hh, src/Bool4.defs.hh, src/Boundary.defs.hh, src/Box.cc, src/Box.inlines.hh, src/Box.templates.hh, src/Box_Status.inlines.hh, src/C_Polyhedron.cc, src/Checked_Number.inlines.hh, src/Checked_Number.templates.hh, src/Circular_Interval.defs.hh, src/Coefficient.cc, src/Coefficient.inlines.hh, src/Congruence.cc, src/Congruence.inlines.hh, src/Congruence_System.cc, src/Congruence_System.inlines.hh, src/Constraint.cc, src/Constraint.inlines.hh, src/Constraint_System.cc, src/Constraint_System.inlines.hh, src/DB_Matrix.inlines.hh, src/DB_Matrix.templates.hh, src/DB_Row.inlines.hh, src/DB_Row.templates.hh, src/Determinate.defs.hh, src/Determinate.inlines.hh, src/Float.defs.hh, src/GMP_Integer.inlines.hh, src/Generator.cc, src/Generator.inlines.hh, src/Generator_System.cc, src/Generator_System.inlines.hh, src/Grid.inlines.hh, src/Grid.templates.hh, src/Grid_Certificate.cc, src/Grid_Certificate.defs.hh, src/Grid_Certificate.inlines.hh, src/Grid_Generator.cc, src/Grid_Generator.inlines.hh, src/Grid_Generator_System.cc, src/Grid_Generator_System.inlines.hh, src/Grid_Status.cc, src/Grid_chdims.cc, src/Grid_conversion.cc, src/Grid_nonpublic.cc, src/Grid_public.cc, src/Grid_simplify.cc, src/Grid_widenings.cc, src/H79_Certificate.cc, src/H79_Certificate.defs.hh, src/Interval.defs.hh, src/Interval.inlines.hh, src/Interval.templates.hh, src/Interval_Restriction.defs.hh, src/Linear_Expression.cc, src/Linear_Expression.inlines.hh, src/Linear_Row.cc, src/Linear_Row.inlines.hh, src/Linear_System.cc, src/Linear_System.inlines.hh, src/MIP_Problem.cc, src/MIP_Problem.inlines.hh, src/MIP_Problem.templates.hh, src/Makefile.am, src/Matrix.cc, src/Matrix.inlines.hh, src/NNC_Polyhedron.cc, src/OR_Matrix.inlines.hh, src/OR_Matrix.templates.hh, src/Octagonal_Shape.cc, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh, src/Og_Status.inlines.hh, src/Partially_Reduced_Product.inlines.hh, src/Partially_Reduced_Product.templates.hh, src/Ph_Status.cc, src/Pointset_Ask_Tell.cc, src/Pointset_Ask_Tell.inlines.hh, src/Pointset_Ask_Tell.templates.hh, src/Pointset_Powerset.cc, src/Pointset_Powerset.inlines.hh, src/Pointset_Powerset.templates.hh, src/Poly_Con_Relation.cc, src/Poly_Gen_Relation.cc, src/Polyhedron.inlines.hh, src/Polyhedron.templates.hh, src/Polyhedron_chdims.cc, src/Polyhedron_nonpublic.cc, src/Polyhedron_public.cc, src/Polyhedron_widenings.cc, src/Powerset.inlines.hh, src/Powerset.templates.hh, src/Ptr_Iterator.inlines.hh, src/Result.inlines.hh, src/Rounding_Dir.inlines.hh, src/Row.cc, src/Row.inlines.hh, src/Scalar_Products.cc, src/Scalar_Products.inlines.hh, src/Widening_Function.inlines.hh, src/algorithms.hh, src/assert.hh, src/checked.inlines.hh, src/checked_ext.inlines.hh, src/checked_float.inlines.hh, src/checked_int.inlines.hh, src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh, src/conversion.cc, src/globals.cc, src/globals.inlines.hh, src/initializer.hh, src/intervals.defs.hh, src/math_utilities.inlines.hh, src/minimize.cc, src/ppl_header.hh, src/simplify.cc, src/wrap_assign.hh: Converted assert in PPL_ASSERT. 2009-07-13 Enea Zaffanella * src/Affine_Space.defs.hh, src/Octagonal_Shape.inlines.hh: A couple of minor doxygen documentation corrections. 2009-07-13 Enea Zaffanella * interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/test1.ml: Added determinisitc timeout functionality to the Ocaml interface. 2009-07-13 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a, interfaces/Java/tests/Parma_Polyhedra_Library_test2.java: Added deterministic timeout functionality to the Java language interface. 2009-07-13 Enea Zaffanella * tests/Polyhedron/weightwatch1.cc: Weightwatch test fixed so as to behave properly under arithmetic overflows. 2009-07-13 Enea Zaffanella * interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh: Added deterministic timeout predicates to the Prolog language interface. 2009-07-13 Enea Zaffanella * interfaces/C/ppl_c_implementation_common.defs.hh: Now we throw/catch ad hoc exceptions for deterministic timeouts. 2009-07-13 Roberto Bagnara * tests/Polyhedron/weightwatch1.cc: These tests fail also with 32-bit coefficients. 2009-07-12 Roberto Bagnara * NEWS, README.configure, TODO, m4/ac_check_gmp.m4: New configure option --with-gmp-prefix supersedes the (now removed) options --with-libgmp-prefix and --with-libgmpxx-prefix. 2009-07-12 Roberto Bagnara * tests/Polyhedron/weightwatch1.cc: These tests fail also with 16-bit coefficients. 2009-07-12 Roberto Bagnara * Watchdog/src/Threshold_Watcher.defs.hh, Watchdog/src/Threshold_Watcher.templates.hh: Private typedef renamed. 2009-07-12 Roberto Bagnara * Watchdog/src/Watchdog.defs.hh: Removed spurious blank line. 2009-07-12 Roberto Bagnara * src/globals.defs.hh: Comment improved. 2009-07-12 Roberto Bagnara * Watchdog/NEWS: Drafted the news for PWL 0.8. 2009-07-12 Roberto Bagnara * src/Grid_public.cc: Unused temp removed. 2009-07-12 Roberto Bagnara * src/Affine_Space.cc: Warnings avoided. 2009-07-12 Enea Zaffanella * Watchdog/doc/devref.doxyconf-html.in, Watchdog/doc/devref.doxyconf-latex.in: Fixed INPUT variable in Doxygen configuration for devref. 2009-07-12 Roberto Bagnara * Watchdog/README, Watchdog/configure.ac, Watchdog/src/Makefile.am: Updated for PWL 0.8. 2009-07-12 Roberto Bagnara * tests/Polyhedron/weightwatch1.cc: These tests fail with 8-bit coefficients. 2009-07-12 Enea Zaffanella * interfaces/C/tests/Makefile.am, interfaces/C/tests/weightwatch1.c: Added a test for deterministic timeouts in the C language interface. 2009-07-12 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, src/globals.types.hh: The deterministic timeout facilities are in the C language interface. 2009-07-12 Roberto Bagnara * src/conversion.cc: Got rid of the REACTIVE_ABANDONING macro. It was controlling tests whose cost is negligible, and defining it to 0 we would not honor what we promise in the documentation of abandon_expensive_computations. 2009-07-12 Roberto Bagnara * fedora/ppl.spec: Force rebuild. 2009-07-12 Abramo Bagnara * TODO, Watchdog/src/Watchdog.cc, Watchdog/src/Watchdog.defs.hh, Watchdog/src/Watchdog.inlines.hh: Converted watchdog time argument to unsigned. 2009-07-12 Roberto Bagnara * NEWS: Item improved. 2009-07-12 Roberto Bagnara * TODO: Synchronized with the current reality. 2009-07-12 Roberto Bagnara * Watchdog/m4/lib-link.m4, m4/lib-link.m4: Updated. 2009-07-12 Roberto Bagnara * Watchdog/configure.ac: Require Automake 1.11, enable lzma tar archives and silent rules. 2009-07-12 Enea Zaffanella * Watchdog/src/Threshold_Watcher.defs.hh, Watchdog/src/Threshold_Watcher.templates.hh, tests/Polyhedron/weightwatch1.cc: Avoid dummy parameter in constructor for Threshold_Watcher::Initialize. Renamed `initialize' to `init' to avoid visual clash with `Initialize'. 2009-07-12 Roberto Bagnara * INSTALL, Watchdog/INSTALL, Watchdog/compile, Watchdog/config.guess, Watchdog/config.sub, Watchdog/depcomp, Watchdog/install-sh, Watchdog/missing, Watchdog/mkinstalldirs, compile, config.guess, config.sub, depcomp, install-sh, missing, mkinstalldirs: Updated. 2009-07-12 Roberto Bagnara * configure.ac: Require Automake 1.11, enable lzma tar archives and silent rules. 2009-07-12 Enea Zaffanella * tests/Polyhedron/Makefile.am, tests/Polyhedron/weightwatch1.cc: Added a first test for the deterministic timeout. 2009-07-12 Enea Zaffanella * src/globals.cc, src/globals.defs.hh, src/globals.inlines.hh: Added Weightwatch_Traits class (from Abramo). Modified maybe_abandon(). 2009-07-12 Enea Zaffanella * Watchdog/src/EList.defs.hh, Watchdog/src/Threshold_Watcher.cc, Watchdog/src/Threshold_Watcher.defs.hh, Watchdog/src/Threshold_Watcher.templates.hh, Watchdog/src/Threshold_Watcher.types.hh: Minor improvements: prefer direct header file inclusions to indirect ones. Avoid unnecessarily long lines. 2009-07-11 Abramo Bagnara * Watchdog/src/Makefile.am, Watchdog/src/Pending_List.defs.hh, Watchdog/src/Pending_List.inlines.hh, Watchdog/src/Pending_List.templates.hh, Watchdog/src/Pending_List.types.hh, Watchdog/src/{Weightwatch.cc => Threshold_Watcher.cc}, Watchdog/src/{Weightwatch.defs.hh => Threshold_Watcher.defs.hh}, Watchdog/src/{Weightwatch.inlines.hh => Threshold_Watcher.inlines.hh}, Watchdog/src/{Weightwatch.templates.hh => Threshold_Watcher.templates.hh}, Watchdog/src/{Weightwatch.types.hh => Threshold_Watcher.types.hh}, Watchdog/src/Watchdog.defs.hh: Converted Weightwatch in more generic Threshold_Watcher. 2009-07-11 Abramo Bagnara * Watchdog/src/Weightwatch.inlines.hh: Fixed typo. 2009-07-11 Abramo Bagnara * Watchdog/src/Weightwatch.cc: Forgotten file. 2009-07-11 Abramo Bagnara * Watchdog/src/Makefile.am, Watchdog/src/Pending_List.defs.hh, Watchdog/src/Pending_List.inlines.hh, Watchdog/src/Pending_List.templates.hh, Watchdog/src/Pending_List.types.hh, Watchdog/src/Watchdog.defs.hh, Watchdog/src/Weightwatch.cc, Watchdog/src/Weightwatch.defs.hh, Watchdog/src/Weightwatch.inlines.hh, Watchdog/src/Weightwatch.templates.hh, Watchdog/src/Weightwatch.types.hh: Weightwatch are now generic threshold watchdog. 2009-07-11 Abramo Bagnara * Watchdog/src/Weightwatch.cc, Watchdog/src/Weightwatch.defs.hh, Watchdog/src/Weightwatch.inlines.hh: Weightwatch are now independent from client code. 2009-07-10 Abramo Bagnara * Watchdog/src/EList.inlines.hh, Watchdog/src/Makefile.am, Watchdog/src/Pending_Element.cc, Watchdog/src/Pending_Element.defs.hh, Watchdog/src/Pending_Element.inlines.hh, Watchdog/src/Pending_Element.types.hh, Watchdog/src/Pending_List.defs.hh, Watchdog/src/Pending_List.inlines.hh, Watchdog/src/{Pending_List.cc => Pending_List.templates.hh}, Watchdog/src/Pending_List.types.hh, Watchdog/src/Watchdog.cc, Watchdog/src/Watchdog.defs.hh, Watchdog/src/Weightwatch.cc, Watchdog/src/Weightwatch.defs.hh, Watchdog/src/Weightwatch.inlines.hh, Watchdog/src/Weightwatch.types.hh: Added Weightwatch. 2009-07-10 Enea Zaffanella * src/MIP_Problem.cc, src/MIP_Problem.defs.hh: Fixed a (potential) exception safety bug in class MIP_Problem. Added an helper class (implementing RAII technique) to safely relax a MIP problem into an LP problem and ensure that integer variables are restored even in the presence of exceptional execution paths. Improved interface (and a few comments) for private methods dealing with MIP optimization and satisfiability. 2009-07-09 Patricia Hill * tests/Box/congruences1.cc: Corrected test as already corrected in the master branch. 2009-06-19 Enea Zaffanella * src/PIP_Problem.defs.hh: Space dimensions cannot change status: they are either vars or parameters. 2009-06-19 Roberto Bagnara * fedora/ppl.spec: The `gprolog' and `yap' packages are not available on the sparc64 and sparcv9 architectures: so do `ppl-gprolog', `ppl-gprolog-static' and `ppl-yap'. 2009-06-18 Abramo Bagnara * interfaces/Python/ppl_py.cc, interfaces/Python/ppl_py.py: Added proof of concept for Python interface. 2009-06-19 Roberto Bagnara * fedora/ppl.spec: The `gprolog' and `yap' packages are not available on the sparc64 and sparcv9 architectures: so do `ppl-gprolog', `ppl-gprolog-static' and `ppl-yap'. 2009-06-18 Abramo Bagnara * interfaces/Python/ppl_py.cc, interfaces/Python/ppl_py.py: Added proof of concept for Python interface. 2009-06-14 Abramo Bagnara * src/PIP_Tree.inlines.hh: Added implementation of child accessors. 2009-06-14 Abramo Bagnara * src/PIP_Tree.defs.hh: Fixed typo. 2009-06-14 Roberto Bagnara * src/PIP_Tree.defs.hh: Added accessors of PIP_Solution_Node. Other improvements. 2009-06-14 Roberto Bagnara * src/PIP_Tree.defs.hh: Include "globals.defs.hh" 2009-06-14 Roberto Bagnara * src/PIP_Problem.defs.hh: Include "PIP_Tree.defs.hh". 2009-06-14 Roberto Bagnara * src/Makefile.am, src/PIP_Problem.defs.hh, src/PIP_Problem.inlines.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh: Added constructors and comments. 2009-06-14 Enea Zaffanella * src/PIP_Problem.defs.hh, src/PIP_Problem.types.hh, src/PIP_Tree.defs.hh: Initial draft fo rinterface improved. Removed control parameters; removed UNBOUND status; renamed a few methods; let PIP_Tree be an alias for a pointer to a _const_ PIP_Tree_Node. 2009-06-14 Roberto Bagnara * src/PIP_Tree.cc, src/PIP_Tree.defs.hh: More comments added. Some fields renamed. 2009-06-14 Roberto Bagnara * src/Makefile.am, src/PIP_Problem.cc, src/PIP_Problem.defs.hh, src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.types.hh: Added comments and more infrastructure. 2009-06-14 Abramo Bagnara * src/PIP_Tree.cc, src/PIP_Tree.defs.hh, src/PIP_Tree.inlines.hh: Added draft PIP_Tree implementation. 2009-06-14 Enea Zaffanella * src/PIP_Problem.defs.hh: Got rid of objective function and optimization mode. 2009-06-14 Roberto Bagnara * src/PIP_Problem.defs.hh, src/PIP_Problem.types.hh: Blatantly ripped from MIP_Problem.*.hh. 2009-06-13 Roberto Bagnara * BUGS: Using the bug tracking system is now the recommended way to report PPL issues. 2009-05-25 Roberto Bagnara * interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/ppl_prolog_sysindep_dox: Typos fixed. 2009-06-11 Enea Zaffanella * STANDARDS: Added explanation on the use of lcov to produce coverage information. 2009-06-11 Enea Zaffanella * configure.ac: Add -lgcov to extra_libraries when configuring with coverage enabled. Fixes a link bug when trying to compute coverage for the OCaml interface tests. 2009-06-10 Patricia Hill * src/Box.templates.hh: Avoid unused variable warning when assertions are not enabled. 2009-06-02 Enea Zaffanella * interfaces/Java/tests/ppl_interface_generator_java_test_java_code.m 4: In the Java tests, be more systematic in the use of method free(). 2009-06-02 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Linear_Expression_Times.jav a: Interface for Java class Linear_Expression_Times improved. The misleading methods left_hand_side() and right_hand_side() replaced by: public Coefficient coefficient(); and public Linear_Expression linear_expression(); returing the two object factors using clearer naming. 2009-05-24 Patricia Hill * src/BD_Shape.templates.hh, src/Box.templates.hh, src/Octagonal_Shape.templates.hh: Further improvements to frequency() code. 2009-05-24 Patricia Hill * src/BD_Shape.templates.hh, src/Octagonal_Shape.templates.hh: Code for frequency() improved. 2009-05-24 Patricia Hill * src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, src/Partially_Reduced_Product.templates.hh, src/Partially_Reduced_Product.types.hh, tests/Partially_Reduced_Product/Makefile.am, tests/Partially_Reduced_Product/congruences1.cc, tests/Partially_Reduced_Product/shapepreservingproduct1.cc: A new product called Shape_Preserving_Product added. 2009-05-23 Patricia Hill * src/Affine_Space.defs.hh, src/Affine_Space.inlines.hh: The method frequency() added to the Affine_Space domain. 2009-05-23 Patricia Hill * src/Octagonal_Shape.templates.hh, tests/Octagonal_Shape/frequency1.cc: Bug in frequency() for Octagonal shapes fixed. 2009-05-22 Patricia Hill * src/Box.defs.hh, src/Box.templates.hh, tests/Box/Makefile.am, tests/Box/frequency1.cc: Added the method frequency() to the Box domain. 2009-05-22 Patricia Hill * src/BD_Shape.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, tests/Octagonal_Shape/Makefile.am, tests/Octagonal_Shape/frequency1.cc: Added the method frequency() to the Octagonal shape domain. Improved the code for the same method for BD shapes. Corrected some typos in comments in these files. 2009-05-21 Patricia Hill * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron_public.cc, tests/BD_Shape/Makefile.am, tests/BD_Shape/frequency1.cc, tests/Polyhedron/Makefile.am, tests/Polyhedron/frequency1.cc: Added method frequency() to the Polyhedron and BD Shape domains. This corresponds to the method frequency() already added to the Grid domain. For these domains it checks if the expression has a constant value and if so, returns true and gives the value (with frequency 0). Otherwise it returns false. 2009-05-20 Enea Zaffanella * tests/Polyhedron/wrap2.cc: Test test02() overflows with 16 bit checked integers. 2009-05-20 Patricia Hill * src/Grid.defs.hh: Added a warning about non-integrality for wrap_assign(). Previous reverted commit which had the same message was wrongly done in the products branch. 2009-05-20 Patricia Hill * src/Grid.defs.hh: Revert "Added a warning about non-integrality for wrap_assign()." This reverts commit 6b9f28ad503f1d43da7a876c4bee7eae9eba185a. 2009-05-20 Patricia Hill * src/Grid.defs.hh: Added a warning about non-integrality for wrap_assign(). 2009-05-20 Patricia Hill * tests/Partially_Reduced_Product/constraintsproduct1.cc, tests/Partially_Reduced_Product/smashproduct1.cc, tests/Partially_Reduced_Product/timeelapse1.cc: Some tests are expected to fail with 8-bit integers. 2009-05-20 Roberto Bagnara * src/Result.defs.hh, src/globals.types.hh: Non-standard commas removed. 2009-05-19 Patricia Hill * tests/Partially_Reduced_Product/directproduct2.cc, tests/Partially_Reduced_Product/directproduct3.cc, tests/Partially_Reduced_Product/directproduct4.cc, tests/Partially_Reduced_Product/directproduct5.cc, tests/Partially_Reduced_Product/directproduct6.cc, tests/Partially_Reduced_Product/partiallyreducedproduct1.cc, tests/Partially_Reduced_Product/partiallyreducedproduct2.cc, tests/Partially_Reduced_Product/partiallyreducedproduct3.cc, tests/Partially_Reduced_Product/partiallyreducedproduct4.cc: Removed redundant test files. 2009-05-19 Patricia Hill * tests/Partially_Reduced_Product/Makefile.am, tests/Partially_Reduced_Product/addcongruences1.cc, tests/Partially_Reduced_Product/addconstraints1.cc, tests/Partially_Reduced_Product/affineimage1.cc, tests/Partially_Reduced_Product/bounded1.cc, tests/Partially_Reduced_Product/boundedaffineimage1.cc, tests/Partially_Reduced_Product/bounds1.cc, tests/Partially_Reduced_Product/concatenate1.cc, tests/Partially_Reduced_Product/congruences1.cc, tests/Partially_Reduced_Product/constraints1.cc, tests/Partially_Reduced_Product/constraintsproduct1.cc, tests/Partially_Reduced_Product/contains1.cc, tests/Partially_Reduced_Product/difference1.cc, tests/Partially_Reduced_Product/dimension1.cc, tests/Partially_Reduced_Product/directproduct1.cc, tests/Partially_Reduced_Product/discrete1.cc, tests/Partially_Reduced_Product/disjoint1.cc, tests/Partially_Reduced_Product/equals1.cc, tests/Partially_Reduced_Product/frombdshape1.cc, tests/Partially_Reduced_Product/frombox1.cc, tests/Partially_Reduced_Product/fromgrid1.cc, tests/Partially_Reduced_Product/fromoctagonalshape1.cc, tests/Partially_Reduced_Product/frompolyhedron1.cc, tests/Partially_Reduced_Product/fromproduct1.cc, tests/Partially_Reduced_Product/generalizedaffineimage1.cc, tests/Partially_Reduced_Product/intersection1.cc, tests/Partially_Reduced_Product/isempty1.cc, tests/Partially_Reduced_Product/isuniverse1.cc, tests/Partially_Reduced_Product/maxmin1.cc, tests/Partially_Reduced_Product/partially_reduced_product_test.hh, tests/Partially_Reduced_Product/refinewithcongruences1.cc, tests/Partially_Reduced_Product/refinewithconstraints1.cc, tests/Partially_Reduced_Product/relations1.cc, tests/Partially_Reduced_Product/smashproduct1.cc, tests/Partially_Reduced_Product/spacedims1.cc, tests/Partially_Reduced_Product/timeelapse1.cc, tests/Partially_Reduced_Product/topclosed1.cc, tests/Partially_Reduced_Product/topclosure1.cc, tests/Partially_Reduced_Product/upperbound1.cc, tests/Partially_Reduced_Product/widening1.cc: Revised the tests so as to follow the organization for other domains. Apart from the operation tests, there are specific tests for each reduction operator. Selected tests (in the Makefile) can be checked with the given component order and with the component domains reversed. 2009-05-19 Enea Zaffanella * tests/Polyhedron/wrap1.cc: Corrected a typo in the known result of a wrap_assign test. (Please, double check that it was indeed a typo.) 2009-05-19 Patricia Hill * : commit f184d82d2e3105d671a089a1302ed6dff993a395 Author: Patricia Hill Date: Tue May 19 07:40:39 2009 +0100 2009-05-18 Abramo Bagnara * src/checked_float.inlines.hh: Fixed omitted renaming. 2009-05-18 Enea Zaffanella * interfaces/Java/tests/ppl_interface_generator_java_test_java.m4, interfaces/Java/tests/ppl_interface_generator_java_test_java_code.m 4, interfaces/Java/tests/ppl_java_tests_common: The generated Java tests now exploit the Test_Executor class functionality. Added an helper function to set global success flag and report success or failure if in noisy mode. NOTE: we are still (just) checking for the well formedness of the object (using method OK()), rather than checking if the computed result is actually the same of th expected one. However, due to genericity, it is quite difficult to precisely state expectations in these tests. 2009-05-18 Patricia Hill * tests/Box/congruences1.cc: When the congruences have inconsistent equalities, the box is set empty. 2009-05-18 Patricia Hill * tests/Box/congruences1.cc: The refine_with_congrueces() detects inconsistent equalities. 2009-05-18 Enea Zaffanella * interfaces/Java/tests/C_Polyhedron_test1.java, interfaces/Java/tests/MIP_Problem_test1.java, interfaces/Java/tests/NNC_Polyhedron_test1.java, interfaces/Java/tests/Parma_Polyhedra_Library_test1.java, interfaces/Java/tests/Parma_Polyhedra_Library_test2.java, interfaces/Java/tests/Test_Executor.java: Started adapting the Java tests to make better use of class Test_Executor. 2009-05-18 Roberto Bagnara * : commit badd595a0c22e91f4f1653ff8c7d53a3bf15ec50 Author: Patricia Hill Date: Mon May 18 12:05:10 2009 +0100 2009-05-18 Patricia Hill * src/BD_Shape.templates.hh, src/Octagonal_Shape.templates.hh: Improved the relation_with(Congruence) implementation for the weakly relational domains. 2009-05-18 Roberto Bagnara * tests/Polyhedron/Makefile.am, tests/Polyhedron/wrap1.cc, tests/Polyhedron/wrap2.cc: New tests for Polyhedron::wrap_assign(). 2009-05-18 Enea Zaffanella * tests/Box/wrap1.cc: Known result for test03() corrected; test now marked to succeed. 2009-05-18 Enea Zaffanella * src/Box.templates.hh, tests/Box/wrap1.cc: First draft of Box::wrap_assign() is now operational. Added a few tests. 2009-05-18 Roberto Bagnara * src/wrap_assign.hh, tests/Polyhedron/wrap1.cc: Fixed a bug in wrap_assign_col(). 2009-05-18 Enea Zaffanella * tests/Polyhedron/wrap1.cc: Added a test showing a bug in wrap_assign when wrap_individually == false. Test is test20(), temporarily marked as an expected failure. 2009-05-18 Roberto Bagnara * tests/Polyhedron/wrap1.cc: 8-bit coefficients are now enough for test07(). 2009-05-18 Roberto Bagnara * src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh, src/Box.defs.hh, src/Box.templates.hh, src/Grid.defs.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh: Added declarations and stub implementations for drop_some_non_integer_points(). 2009-05-17 Roberto Bagnara * doc/definitions.dox, src/globals.types.hh: Finished the documentation about the wrapping operator. 2009-05-17 Abramo Bagnara * src/wrap_assign.hh: Rounding direction is not relevant here. 2009-05-17 Abramo Bagnara * src/checked.inlines.hh, src/checked_float.inlines.hh: Get rid of a comparison warning. 2009-05-17 Abramo Bagnara * src/wrap_assign.hh: Simplified code. 2009-05-17 Patricia Hill * src/Partially_Reduced_Product.inlines.hh, tests/Partially_Reduced_Product/constraintsproduct1.cc: After the affine (pre)image operations, unset the reduced flag. 2009-05-17 Roberto Bagnara * doc/definitions.dox: Added more in the section about the wrapping operator. 2009-05-16 Roberto Bagnara * doc/definitions.dox, src/globals.types.hh: More work on the documentation of approximations for bounded integer arithmetic. 2009-05-16 Roberto Bagnara * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, src/Box.defs.hh, src/Box.templates.hh, src/Grid.defs.hh, src/Grid_public.cc, src/Interval.defs.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron_public.cc, src/globals.types.hh, src/wrap_assign.hh: Bounded_Integer_Type_Signedness renamed Bounded_Integer_Type_Representation. 2009-05-16 Roberto Bagnara * src/globals.types.hh: Comments improved. 2009-05-16 Roberto Bagnara * doc/definitions.dox: Started writing the section on approximating bounded arithmetic. 2009-05-16 Enea Zaffanella * src/BD_Shape.templates.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron_public.cc: Further cleaning of relation_with(Congruence) implementations. 2009-05-16 Enea Zaffanella * interfaces/Prolog/tests/pl_check.pl: Improved a few timeout and exception tests. Make sure an out_of_memory exception is thrown as expected even when a large amount of memory is available. Do not set timeouts out of catch constructs. 2009-05-16 Roberto Bagnara * tests/Polyhedron/wrap1.cc: test19() must fail with 8-bit coefficients. 2009-05-16 Abramo Bagnara * tests/Box/propagateconstraints2.cc: These tests fails with 16 bit coefficients. 2009-05-16 Roberto Bagnara * TODO: Item removed: no big deal. 2009-05-15 Abramo Bagnara * tests/BD_Shape/closure1.cc: The test fails also with 32 bit coefficients. 2009-05-15 Roberto Bagnara * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh: FIXME resolved. 2009-05-15 Abramo Bagnara * tests/Box/propagateconstraints2.cc: The test fails also with 32 bit coefficients. 2009-05-15 Roberto Bagnara * src/wrap_assign.hh, tests/Box/wrap1.cc, tests/Polyhedron/wrap1.cc: Fixed the generic implementation of wrap_assign(). 2009-05-15 Abramo Bagnara * src/math_utilities.inlines.hh: A strict relation info is required here too. 2009-05-15 Abramo Bagnara * src/Octagonal_Shape.templates.hh: A strict relation info is required here. 2009-05-15 Abramo Bagnara * src/checked_float.inlines.hh: Fixed a typo. 2009-05-15 Abramo Bagnara * src/checked_int.inlines.hh, src/checked_mpz.inlines.hh: Added an assert(false) for unreachable code. 2009-05-15 Abramo Bagnara * src/checked.inlines.hh: Avoid two warnings. 2009-05-15 Abramo Bagnara * src/Boundary.defs.hh, src/Rounding_Dir.defs.hh, src/Rounding_Dir.inlines.hh, src/checked.inlines.hh, src/checked_float.inlines.hh, src/checked_mpz.inlines.hh, src/intervals.defs.hh: Renamed and commented ROUND_STRICT_RELATION. Added some use of it. Added some optimizations when ROUND_NOT_NEEDED is specified. 2009-05-15 Enea Zaffanella * src/Polyhedron_public.cc: Improved method Polyhedron::relation_with(const Congruence&) const. Avoided several temporary objects; added a FIXME asking for the rounding mode. 2009-05-15 Roberto Bagnara * src/Box.templates.hh: Fixed the invocation of the generic implementation of wrap_assign(). 2009-05-15 Roberto Bagnara * src/wrap_assign.hh: Check that all variables upon which `*pcs' depends are in `vars'. An assertion is violated otherwise. 2009-05-15 Enea Zaffanella * src/Octagonal_Shape.templates.hh: Several improvements to Octagonal_Shape::relation_with(const Congruence&). Alaso added a couple of FIXME regarding missing comments and rounding modes. 2009-05-15 Enea Zaffanella * tests/Octagonal_Shape/relatwithcons2.cc: Corrected typo in explanatory output. 2009-05-15 Enea Zaffanella * doc/definitions.dox: Minor improvement. 2009-05-15 Abramo Bagnara * src/checked_int.inlines.hh, src/checked_mpz.inlines.hh: Fixed rounding. 2009-05-15 Roberto Bagnara * src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron_public.cc, src/wrap_assign.hh, tests/Polyhedron/wrap1.cc: Changed the specification of wrap_assign(). If `*pcs' depends on variables not in `vars', the behavior is undefined. We perform only the quick test on space dimensions. In debugging mode we will check the condition thoroughly. 2009-05-15 Abramo Bagnara * src/Octagonal_Shape.templates.hh: Simplified a rounded assignment. 2009-05-15 Abramo Bagnara * src/Checked_Number.inlines.hh, src/Rounding_Dir.defs.hh, src/Rounding_Dir.inlines.hh, src/checked_float.inlines.hh, src/checked_int.inlines.hh, src/checked_mpz.inlines.hh: Permits to low level code to take benefits from knowing that result will be exact. 2009-05-15 Abramo Bagnara * tests/BD_Shape/closure1.cc: Test fails with an overflow using 8 bit coefficients. 2009-05-15 Abramo Bagnara * src/Checked_Number.inlines.hh: Enable DEBUG_ROUND_NOT_NEEDED when assertions are enabled. 2009-05-15 Abramo Bagnara * tests/Box/propagateconstraints2.cc: Two tests fail with an overflow using 8 bit coefficients. 2009-05-15 Abramo Bagnara * src/Rounding_Dir.defs.hh: Improved comment for ROUND_NOT_NEEDED. 2009-05-15 Abramo Bagnara * interfaces/Prolog/Ciao/ciao_efli.cc, interfaces/Prolog/GNU/gprolog_efli.cc, interfaces/Prolog/SICStus/sicstus_efli.cc, interfaces/Prolog/XSB/xsb_efli.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, src/Checked_Number.inlines.hh: Fixed DEBUG_ROUND_NOT_NEEDED. 2009-05-15 Enea Zaffanella * tests/Box/wrap1.cc: Let the wrap_assign tests succeed until the specification is clarified. 2009-05-15 Enea Zaffanella * src/MIP_Problem.cc: Added a note about the use of `assign' helper functions. 2009-05-15 Enea Zaffanella * src/Box.templates.hh: When wrapping no variable, do not ignore the optional constraint system. 2009-05-14 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Congruence.java, interfaces/Java/parma_polyhedra_library/Generator.java, interfaces/Java/parma_polyhedra_library/Grid_Generator.java: Added a few missing accessor methods to Java interface classes. Affected classes are Congruence, Generator and Grid_Generator. 2009-05-14 Patricia Hill * tests/Partially_Reduced_Product/constraintsproduct1.cc, tests/ppl_test.cc, tests/ppl_test.hh: Added two tests based on the examples 5(a), 5(b) in SenS07. Added print_constraints(const Affine_Space&) to ppl_test. 2009-05-14 Roberto Bagnara * src/wrap_assign.hh, tests/Polyhedron/wrap1.cc: Fixed the bug witnessed by test15(). 2009-05-14 Enea Zaffanella * TODO, src/MIP_Problem.cc: Partially reverted changes 71e9992afa9bc049b93d0b29fd9dbe52ead850cf. The changes were not working on platforms where floating point rounding mode could not be set (e.g., ARM), even though rounding control is not actually needed. 2009-05-14 Roberto Bagnara * tests/Polyhedron/wrap1.cc: Temporarily marked test15() and test16() as expected to fail. 2009-05-14 Roberto Bagnara * src/wrap_assign.hh: Last commit partly undone. 2009-05-14 Enea Zaffanella * src/wrap_assign.hh, tests/Box/wrap1.cc, tests/Polyhedron/wrap1.cc: Adapted generic implementation of wrap_assign to model the rational case. Also added a couple of tests showing problems in the current implementation. 2009-05-14 Enea Zaffanella * src/Box.inlines.hh, src/Box.templates.hh: Use PPL_DIRTY_TEMP for temporary objects. Also corrected a type causing an assertion failure. 2009-05-14 Abramo Bagnara * src/Interval.defs.hh: Added missing clear. 2009-05-14 Abramo Bagnara * src/Boundary.defs.hh: Fixed typo. 2009-05-14 Enea Zaffanella * src/Box.inlines.hh, src/Box.templates.hh, src/Interval.defs.hh: Some progress on Box::wrap_assign(). Corrected a couple of typos in Interval::wrap_assign(). Silenced an annoying GCC warning. 2009-05-14 Roberto Bagnara * src/WRD_coefficient_types.defs.hh, src/checked.inlines.hh: Commits improved. 2009-05-14 Roberto Bagnara * : commit 6c8a266be0f01266599542b7cdc3d3c2a47e62d2 Author: Abramo Bagnara Date: Thu May 14 09:41:30 2009 +0200 2009-05-14 Abramo Bagnara * tests/Box/frombox1.cc: Added missing policy. 2009-05-14 Patricia Hill * tests/Grid/frequency1.cc: Added new method frequency() for Grids. 2009-05-14 Abramo Bagnara * src/Checked_Number.cc, src/Checked_Number.inlines.hh, src/Result.defs.hh: Added missing Result values. 2009-05-14 Abramo Bagnara * src/Interval.defs.hh: Fixed some typos. 2009-05-14 Patricia Hill * src/Grid.defs.hh, src/Grid_public.cc, tests/Grid/Makefile.am: Added new method frequency() for Grids. 2009-05-14 Roberto Bagnara * src/BD_Shape.defs.hh, src/Octagonal_Shape.defs.hh, src/WRD_coefficient_types.defs.hh, src/WRD_coefficient_types.inlines.hh: New policy Debug_WRD_Extended_Number_Policy. This is the debugging policy for checked numbers used in weakly-relational domains. 2009-05-14 Roberto Bagnara * src/WRD_coefficient_types.defs.hh: WRD_Extended_Number_Policy properly commented. 2009-05-14 Roberto Bagnara * tests/Box/wrap1.cc: Marked tests that are expected to fail with 8-bit coefficients. 2009-05-13 Abramo Bagnara * src/Interval.defs.hh: Added wrap_assign. 2009-05-13 Abramo Bagnara * src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh, src/checked.defs.hh, src/checked_ext.inlines.hh, src/checked_float.inlines.hh, src/checked_int.inlines.hh, src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh: Added add_2exp and sub_2exp. 2009-05-13 Abramo Bagnara * src/Interval.defs.hh: Added missing info clearing. 2009-05-13 Patricia Hill * doc/definitions.dox, src/Determinate.defs.hh, src/Grid.defs.hh, src/Partially_Reduced_Product.defs.hh: Removed repeated specification of operators in the grids section. Ensure cross-references to these sections now refer to the equivalent sections for polyhedra. Fixed a typo in src/Determinate.defs.hh that caused a warning when compiling the documentation. 2009-05-13 Roberto Bagnara * src/BD_Shape.defs.hh, src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh, src/Makefile.am, src/Octagonal_Shape.defs.hh, src/WRD_coefficient_types.defs.hh, src/WRD_coefficient_types.inlines.hh: Coefficient types of weakly-relational domains moved to new source files. 2009-05-13 Roberto Bagnara * src/Coefficient.types.hh: Comment fixed. 2009-05-13 Roberto Bagnara * src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh, src/Checked_Number.types.hh: Got rid of Checked_Number_Default_Policy. 2009-05-13 Roberto Bagnara * src/Coefficient.inlines.hh: Bounded_Integer_Coefficient_Policy::handle_result() commented. 2009-05-13 Roberto Bagnara * src/Coefficient.inlines.hh: Also check for NaN in Bounded_Integer_Coefficient_Policy::handle_result(). 2009-05-13 Roberto Bagnara * src/Checked_Number.defs.hh, src/Coefficient.types.hh, src/checked.defs.hh, src/checked_float.inlines.hh: Checked number policy parameter `check_nan_result' renamed `fpu_check_nan_result'. 2009-05-13 Abramo Bagnara * src/checked.defs.hh: Fixed return type. 2009-05-13 Roberto Bagnara * configure.ac: Use Bounded_Integer_Coefficient_Policy as the policy for checked coefficients. 2009-05-13 Roberto Bagnara * src/Coefficient.inlines.hh, src/Coefficient.types.hh: Added Bounded_Integer_Coefficient_Policy. 2009-05-13 Roberto Bagnara * src/checked.defs.hh: Checked_Number_Transparent_Policy properly commented. 2009-05-13 Abramo Bagnara * src/Interval.defs.hh: Fixed topological closure for unbounded intervals. 2009-05-13 Abramo Bagnara * src/Boundary.defs.hh, src/Box.templates.hh, src/Checked_Number.cc, src/Checked_Number.inlines.hh, src/Circular_Interval.defs.hh, src/DB_Matrix.templates.hh, src/Interval.defs.hh, src/Interval.templates.hh, src/OR_Matrix.templates.hh, src/Result.defs.hh, src/Result.inlines.hh, src/checked.cc, src/checked.defs.hh, src/checked.inlines.hh, src/checked_ext.inlines.hh, src/checked_float.inlines.hh, src/checked_int.inlines.hh, src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh, src/intervals.defs.hh, tests/Polyhedron/numberinput1.cc: Reorganized and separated Result classes to be more informative. 2009-05-13 Roberto Bagnara * : commit c8cbb00f29ac4c0d48daf14a9a9d3b93e559e207 Author: Patricia Hill Date: Wed May 13 09:21:47 2009 +0100 2009-05-13 Roberto Bagnara * m4/ac_check_gmp.m4: AC_CHECK_GMP fixed. 2009-05-12 Roberto Bagnara * TODO: Added a commit to consider should we release PPL 0.10.3. 2009-05-12 Roberto Bagnara * NEWS, README.configure, m4/ac_check_gmp.m4: New configuration option `--with-gmp-build=DIR'. This allows to use a non-installed build of GMP in DIR. 2009-05-12 Enea Zaffanella * tests/Partially_Reduced_Product/directproduct6.cc: Known result adapted to increased Box constructor precision. 2009-05-12 Enea Zaffanella * TODO, tests/Box/frompolyhedron1.cc: Another TODO item dealt with. Adapted another few known results according to increased precision. 2009-05-12 Roberto Bagnara * TODO: Added a section on commits to consider should we release PPL 0.10.3. 2009-05-12 Enea Zaffanella * src/Box.defs.hh, src/Box.inlines.hh, src/Box.templates.hh, tests/Box/frompolyhedron2.cc, tests/Box/refinewithconstraint1.cc, tests/Powerset/frompolyhedron1.cc: Method Box::refine_with is now based on (single step) constraint propagation. Method Box::propagate_constraints now also take as input a parameter for specifying the maximum number of iterations (default value 0). The constructor of a Box from a Polyhedron in polynomial time sets this parameter to a constant. The known result of several tests adapted to match the increased precision. 2009-05-12 Patricia Hill * doc/definitions.dox, src/Grid_public.cc: Improved documentation and small efficiency improvement to the code. 2009-05-12 Roberto Bagnara * interfaces/Java/tests/Makefile.am: We cannot test the Java interface unless ENABLE_SHARED. 2009-05-12 Patricia Hill * src/Grid_public.cc: Another efficiency improvement to wrap_assign(). 2009-05-12 Patricia Hill * src/Grid_public.cc: Some efficiency improvements. Comments improved. 2009-05-12 Abramo Bagnara * src/Boundary.defs.hh: Added smod_2exp and umod_2exp for boundary. 2009-05-12 Roberto Bagnara * m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4: Updated from Gnulib. 2009-05-12 Patricia Hill * src/Grid.defs.hh, src/Grid_nonpublic.cc, src/Grid_public.cc: Simplification and improvement of code for wrap_assign(). The bounds_no_check() and frequency_no_check() assume the generators are minimized and the grid is not empty. 2009-05-12 Patricia Hill * doc/definitions.dox, src/Grid_public.cc: Several improvements for the wrap_assign() operator for grids. 2009-05-11 Patricia Hill * src/Grid.defs.hh, src/Grid_public.cc, tests/Grid/wrap1.cc: Improved code for wrap_assign() for grids for constant values. If the value for a variable is already constant, and the constant is outside the range for the bounded integr type, then the outcome depends on the kind of overflow: - if `impossible', then the grid is set empty; - if `undefined', then the variable is set to take any integral value; - if `wraps', then the value is wrapped by the wrap_frequency to a value in the range for the bounded integer type. Comments improved. 2009-05-11 Enea Zaffanella * TODO: Another item dealt with. 2009-05-11 Enea Zaffanella * interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a, interfaces/Java/tests/Parma_Polyhedra_Library_test1.java, interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/test1.ml, interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/Prolog/tests/pl_check.pl: Parameter irrational_precision made available in all language interfaces. 2009-05-11 Enea Zaffanella * src/Init.cc, src/checked.cc, src/checked_mpq.inlines.hh: Renamed rational_sqrt_precision_parameter to irrational_precision. 2009-05-11 Patricia Hill * tests/Grid/wrap1.cc: Several tests are expected to fail for checked-in8. 2009-05-11 Enea Zaffanella * tests/MIP_Problem/mipproblem1.cc: Do not test for result dependent on floating point steepest edge heuristics. 2009-05-11 Enea Zaffanella * src/MIP_Problem.cc: Avoid unnecessary unbounded precision value in floating point steepest edge. 2009-05-11 Patricia Hill * doc/definitions.dox: Added a _draft_ description of the wrap operator for grids. 2009-05-11 Enea Zaffanella * TODO, src/MIP_Problem.cc: Got rid of a TODO item. Also avoid an annoying warning about an uninitialized variable. 2009-05-11 Patricia Hill * src/Grid.defs.hh, src/Grid_nonpublic.cc, src/Grid_public.cc: Redid the intended changes for the last commit for wrap_assign(). 2009-05-11 Patricia Hill * src/Grid.defs.hh, src/Grid_nonpublic.cc, src/Grid_public.cc, tests/Grid/wrap1.cc: Improved wrap_assign() for grids. Added private methods bounds_no_check() and frequency_no_check(). 2009-05-10 Abramo Bagnara * src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh, src/Rounding_Dir.inlines.hh, src/checked.defs.hh, src/checked_ext.inlines.hh, src/checked_float.inlines.hh, src/checked_int.inlines.hh, src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh: Added umod_2exp and smod_2exp to checked numbers. Fixed rem for mpq to work similarly to other numeric types. 2009-05-09 Enea Zaffanella * src/Box.defs.hh, src/Box.inlines.hh, src/Box.templates.hh, src/wrap_assign.hh, tests/Box/Makefile.am, tests/Box/wrap1.cc: Drafted specialized implementation for Box::wrap_assign. Code still commented out as it relies on a missing Interval method. 2009-05-09 Roberto Bagnara * src/Grid_public.cc: Use the appropriate throw_dimension_incompatible() method in wrap_assign(). 2009-05-07 Patricia Hill * src/Grid.defs.hh, src/Grid_public.cc, tests/Grid/Makefile.am, tests/Grid/wrap1.cc: Added draft implementation for wrap_assign() for the grid domain. 2009-05-05 Enea Zaffanella * NEWS, interfaces/C/ppl_c_header.h, interfaces/Java/jni/Makefile.am, interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a, interfaces/Java/parma_polyhedra_library/Timeout_Exception.java, interfaces/Java/tests/Makefile.am, interfaces/Java/tests/Parma_Polyhedra_Library_test2.java: Added basic timeout support to the Java library interface. 2009-05-06 Abramo Bagnara * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh: Fixed result check for ThrowNew. 2009-05-06 Roberto Bagnara * tests/Polyhedron/wrap1.cc: test03() fails also with 16-bit coefficients when assertions are enabled. 2009-05-05 Roberto Bagnara * tests/Polyhedron/wrap1.cc: test07() only fails if assertions are enabled. 2009-05-05 Roberto Bagnara * interfaces/Java/jni/ppl_java_common.cc, interfaces/OCaml/ppl_ocaml_common.cc, src/BD_Shape.templates.hh, src/Checked_Number.templates.hh, src/Grid_public.cc, src/Interval_Info.defs.hh, src/MIP_Problem.cc, src/OR_Matrix.inlines.hh, src/Octagonal_Shape.templates.hh, src/Polyhedron_nonpublic.cc, src/Polyhedron_public.cc, tests/BD_Shape/affinedimension1.cc, tests/BD_Shape/containsintegerpoint1.cc, tests/Box/affinedimension1.cc, tests/Octagonal_Shape/containsintegerpoint1.cc, tests/Partially_Reduced_Product/partiallyreducedproduct2.cc, tests/Polyhedron/dualhypercubes.cc, tests/Polyhedron/generators1.cc, tests/Polyhedron/maxspacedim1.cc, tests/Polyhedron/polyhull1.cc, tests/Polyhedron/relations1.cc: Spurious parentheses removed. 2009-05-05 Roberto Bagnara * : commit 317f48d0d55391b07624e0f55a6228e3b2d39d6f Author: Roberto Bagnara Date: Tue May 5 19:20:33 2009 +0200 2009-05-05 Enea Zaffanella * interfaces/C/Makefile.am, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.defs.hh, interfaces/C/tests/Makefile.am, interfaces/C/tests/watchdog1.c: Added basic timeout support to the C library interface. 2009-05-05 Abramo Bagnara * src/Box.templates.hh: Fixed typo on assertion. 2009-05-05 Abramo Bagnara * interfaces/Prolog/ppl_prolog_common.cc, src/Bool4.defs.hh, src/Boundary.defs.hh, src/Box.defs.hh, src/Box.inlines.hh, src/Box.templates.hh, src/Circular_Interval.defs.hh, src/Interval.defs.hh, src/Interval.inlines.hh, src/Interval.templates.hh, src/Interval_Info.defs.hh, src/Makefile.am, src/Rational_Interval.hh, src/Result.defs.hh, src/globals.types.hh, src/intervals.defs.hh: Added Circular Integer intervals. 2009-05-05 Roberto Bagnara * src/COW_Pointset.defs.hh, tests/Grid/approximatepartition1.cc, tests/Grid/powersetdifference1.cc: Method COW_Pointset::element() renamed pointset(). 2009-05-05 Roberto Bagnara * tests/Polyhedron/linearpartition1.cc: Method COW_Pointset::element() renamed pointset(). 2009-05-05 Roberto Bagnara * tests/Polyhedron/hybrid.cc: Indentation and comments fixed. 2009-05-05 Roberto Bagnara * tests/Polyhedron/hybrid.cc: Method COW_Pointset::element() renamed pointset(). 2009-05-04 Roberto Bagnara * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, src/COW_Pointset.defs.hh, src/COW_Pointset.inlines.hh, src/Pointset_Ask_Tell.cc, src/Pointset_Ask_Tell.templates.hh, src/Pointset_Powerset.cc, src/Pointset_Powerset.templates.hh, src/algorithms.hh, tests/Powerset/affinedimension1.cc, tests/Powerset/affineimage1.cc, tests/Powerset/affinepreimage1.cc, tests/Powerset/difference1.cc, tests/Powerset/disjunct1.cc, tests/Powerset/frombdshape1.cc, tests/Powerset/frombox1.cc, tests/Powerset/fromgrid1.cc, tests/Powerset/fromoctagonalshape1.cc, tests/Powerset/frompolyhedron1.cc, tests/Powerset/refinewith1.cc, tests/Powerset/simplifyusingcontext1.cc: Method COW_Pointset::element() renamed pointset(). Comments improved. 2009-05-04 Roberto Bagnara * tests/Polyhedron/wrap1.cc: test02() and test09() fail also with 16-bit coefficients. 2009-05-04 Roberto Bagnara * src/Affine_Space.defs.hh, src/Any_Pointset.defs.hh, src/BD_Shape.defs.hh, src/Bit_Matrix.defs.hh, src/Bit_Row.defs.hh, src/Box.defs.hh, src/Box_Status.idefs.hh, src/C_Polyhedron.defs.hh, src/Checked_Number.defs.hh, src/Congruence.defs.hh, src/Congruence_System.defs.hh, src/Constraint.defs.hh, src/Constraint_System.cc, src/Constraint_System.defs.hh, src/DB_Matrix.defs.hh, src/Generator.defs.hh, src/Generator_System.defs.hh, src/Grid.defs.hh, src/Grid_Generator.defs.hh, src/Grid_Generator_System.defs.hh, src/Linear_Expression.defs.hh, src/Linear_System.defs.hh, src/MIP_Problem.defs.hh, src/Matrix.defs.hh, src/NNC_Polyhedron.defs.hh, src/OR_Matrix.defs.hh, src/Octagonal_Shape.defs.hh, src/Partially_Reduced_Product.defs.hh, src/Pointset_Ask_Tell.defs.hh, src/Pointset_Powerset.defs.hh, src/Polyhedron.defs.hh, src/Ptr_Iterator.defs.hh: Systematically write "copy constructor" instead of "copy-constructor." (The verb is "to copy-construct" though.) 2009-05-04 Roberto Bagnara * NEWS, src/{Determinate.defs.hh => COW_Pointset.defs.hh}, src/{Determinate.inlines.hh => COW_Pointset.inlines.hh}, src/{Determinate.types.hh => COW_Pointset.types.hh}, src/Makefile.am, src/Pointset_Ask_Tell.cc, src/Pointset_Ask_Tell.defs.hh, src/Pointset_Ask_Tell.inlines.hh, src/Pointset_Ask_Tell.templates.hh, src/Pointset_Powerset.cc, src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.inlines.hh, src/Pointset_Powerset.templates.hh, tests/BD_Shape/membytes1.cc, tests/Grid/membytes1.cc, tests/Octagonal_Shape/membytes1.cc, tests/Polyhedron/membytes1.cc: The `Determinate' class has been renamed `COW_Pointset'. 2009-05-04 Roberto Bagnara * src/BD_Shape.defs.hh, src/Octagonal_Shape.defs.hh, src/Polyhedron.defs.hh: Completed the \exception section of the documentation for wrap_assign(). 2009-05-04 Roberto Bagnara * doc/definitions.dox: Added a section on "Approximating Bounded Arithmetic", to be written. 2009-05-04 Roberto Bagnara * src/BD_Shape.defs.hh, src/Makefile.am, src/Octagonal_Shape.defs.hh, src/Polyhedron.defs.hh, src/wrap_assign.hh: Documentation of the wrapping methods improved. Typos fixed. 2009-05-04 Roberto Bagnara * TODO: Two new items added. 2009-05-04 Roberto Bagnara * src/Affine_Space.cc, src/Affine_Space.defs.hh, src/Affine_Space.inlines.hh: Further steps in the definition of the interface of Affine_Space. The widening and extrapolation methods do nothing (except for testing dimension-compatibility). Several comments revised. 2009-05-04 Roberto Bagnara * src/Grid.defs.hh: Added missing full stops. 2009-05-04 Enea Zaffanella * NEWS, interfaces/Java/README.java, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a: Documented recent changes in the Java interface. 2009-05-04 Roberto Bagnara * src/Polyhedron.defs.hh: Removed obsolete comments about minimization. 2009-05-04 Roberto Bagnara * src/Affine_Space.defs.hh: Fixed some comments. 2009-05-04 Roberto Bagnara * tests/Polyhedron/wrap1.cc: Marked the tests that are expected to fail with 8-bit coefficients. 2009-05-04 Enea Zaffanella * interfaces/C/ppl_c_header.h: Documented a systematic assumption about the C interface opaque pointers. 2009-05-04 Enea Zaffanella * src/BD_Shape.defs.hh, src/Octagonal_Shape.defs.hh: Fixed a couple of comments for BD and octagonal shapes. When adding constraints/congruences, an exception is thrown if they cannot be accurately represented. 2009-05-04 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/Pair.java: Cached Java method IDs for class parma_polyhedra_library/Pair. 2009-05-04 Roberto Bagnara * tests/BD_Shape/wrap1.cc, tests/Octagonal_Shape/wrap1.cc, tests/Polyhedron/wrap1.cc: Expected behavior made dependent on the range of Coefficient. 2009-05-04 Roberto Bagnara * tests/BD_Shape/Makefile.am, tests/BD_Shape/wrap1.cc: Test BD_Shape::wrap_assign(). 2009-05-03 Roberto Bagnara * src/BD_Shape.defs.hh: Check for NaNs only when debugging. 2009-05-03 Patricia Hill * src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, src/Partially_Reduced_Product.templates.hh, src/Partially_Reduced_Product.types.hh, tests/Partially_Reduced_Product/Makefile.am, tests/Partially_Reduced_Product/congruencesproduct1.cc, tests/Partially_Reduced_Product/shrinkusingcongruences1.cc: Renamed reduction Shrink_Using_Congruences_Reduction to Congruences_Reduction. 2009-05-03 Roberto Bagnara * tests/Octagonal_Shape/wrap1.cc: Fixed computation of known results for test01() and test02(). 2009-05-03 Abramo Bagnara * src/checked_numeric_limits.hh: Avoid use of constructors in numeric_limits. 2009-05-03 Roberto Bagnara * tests/Octagonal_Shape/wrap1.cc: Expected result adapted to the different types of coefficients. 2009-05-03 Roberto Bagnara * src/checked_numeric_limits.hh: Fixed PPL_SPECIALIZE_LIMITS_INT. 2009-05-03 Roberto Bagnara * tests/Octagonal_Shape/wrap1.cc: Debugging print statement added. 2009-05-03 Abramo Bagnara * src/checked.cc, src/checked.defs.hh, src/checked_int.inlines.hh: Fixed assignment to int. 2009-05-02 Roberto Bagnara * src/Makefile.am, src/{wrap.cc => wrap_string.cc}, src/{wrap.hh => wrap_string.hh}: Files renamed to avoid ambiguity with respect to numerical wrapping. 2009-05-02 Roberto Bagnara * src/Determinate.defs.hh, src/Determinate.inlines.hh, src/Determinate.types.hh, src/Pointset_Ask_Tell.defs.hh, src/Pointset_Ask_Tell.inlines.hh, src/Pointset_Ask_Tell.templates.hh, src/Pointset_Ask_Tell.types.hh, src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.inlines.hh, src/Pointset_Powerset.templates.hh, src/Pointset_Powerset.types.hh, src/Widening_Function.defs.hh, src/Widening_Function.inlines.hh, src/Widening_Function.types.hh, src/wrap_assign.hh: No longer use CS and PS as template parameter names. 2009-05-02 Roberto Bagnara * src/wrap_assign.hh: Unused variable removed. 2009-05-02 Roberto Bagnara * tests/Grid/asciidumpload1.cc, tests/Grid/asciidumpload2.cc, tests/Grid/asciidumpload4.cc, tests/Grid/asciidumpload5.cc, tests/Grid/asciidumpload6.cc, tests/Polyhedron/ascii_dump_load1.cc, tests/Polyhedron/ascii_dump_load3.cc: Bad spacing fixed. 2009-05-02 Roberto Bagnara * : commit 099c11d215bf8bf113bec36fbe1b802d939bf92b Author: Roberto Bagnara Date: Sat May 2 18:16:44 2009 +0200 2009-05-02 Patricia Hill * src/Partially_Reduced_Product.templates.hh, tests/Partially_Reduced_Product/Makefile.am, tests/Partially_Reduced_Product/constraintsproduct1.cc, tests/Partially_Reduced_Product/shrinkusingcongruences1.cc: Reduction methods (Constraints and Shrink_Using_Congruences) improved. Tests specific to the Constraints_Reduction added. 2009-05-01 Roberto Bagnara * tests/Grid/Makefile.am, tests/Grid/coveringbox1.cc, tests/Grid/coveringbox2.cc: Obsolete test programs removed. 2009-05-01 Roberto Bagnara * : commit 02e818f7cd915af0e99ac755e1567932ec164992 Merge: abefc45 54b3668 Author: Roberto Bagnara Date: Fri May 1 14:25:03 2009 +0200 2009-05-01 Roberto Bagnara * interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/Java/parma_polyhedra_library/Fake_Class_for_Doxygen.java , interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, src/Any_Pointset.defs.hh, src/BD_Shape.defs.hh, src/BD_Shape.templates.hh, src/Box.defs.hh, src/Box.templates.hh, src/Grid.defs.hh, src/Grid_Generator_System.cc, src/Grid_Generator_System.defs.hh, src/Grid_chdims.cc, src/Grid_public.cc, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.templates.hh, src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, src/Pointset_Ask_Tell.defs.hh, src/Pointset_Ask_Tell.templates.hh, src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron_chdims.cc, src/Polyhedron_public.cc: Renamed some pleonastic identifiers. Fixed some comments. 2009-05-01 Roberto Bagnara * interfaces/Prolog/.gitignore: Added missing patterns. 2009-05-01 Roberto Bagnara * src/Affine_Space.defs.hh: Renamed some pleonastic identifiers. 2009-05-01 Roberto Bagnara * src/Affine_Space.cc, src/Affine_Space.defs.hh, src/Affine_Space.inlines.hh, src/Affine_Space.types.hh, src/Makefile.am: Added a proof-of-concept implementation of affine spaces. The implementation is based on rational grids. 2009-05-01 Patricia Hill * tests/Partially_Reduced_Product/shrinkusingcongruences1.cc: Unwanted changes to test01() undone. 2009-05-01 Roberto Bagnara * src/Grid.defs.hh: Fixed copy-and-paste mistakes. 2009-05-01 Roberto Bagnara * src/Grid.inlines.hh: Indentation fixed. 2009-05-01 Roberto Bagnara * src/BD_Shape.inlines.hh, src/Grid.inlines.hh, src/Octagonal_Shape.inlines.hh: Useless returns removed. 2009-05-01 Roberto Bagnara * src/Grid_public.cc: Fixed two code formatting glitches. 2009-05-01 Roberto Bagnara * src/Grid.defs.hh: Previous change reverted. 2009-04-30 Roberto Bagnara * src/Grid.defs.hh: Useless friend declaration removed. 2009-04-30 Roberto Bagnara * : commit 9ce7c8bdce348315c574891ecb60cc0dc4cb3720 Author: Roberto Bagnara Date: Thu Apr 30 19:30:47 2009 +0200 2009-04-30 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a, interfaces/Java/tests/C_Polyhedron_test1.java, interfaces/Java/tests/MIP_Problem_test1.java, interfaces/Java/tests/NNC_Polyhedron_test1.java, interfaces/Java/tests/Parma_Polyhedra_Library_test1.java, interfaces/Java/tests/ppl_interface_generator_java_test_java.m4, interfaces/Java/tests/ppl_java_tests_common: Fixed initialization for Java interface (explicit initialization required). Java class Parma_Polyhedra_Library now has two new static methods: initialize_library() and finalize_library(). The first one, to be called after loading the library and before calling any other library method, will provide proper initialization of both the C++ data structures and the Java class and field/method ID caches. The second one, to be called when no longer using the library, will clear the cache, deleting all stored global references, thereby allowing for the PPL Java classes to be garbage collected. 2009-04-29 Roberto Bagnara * : commit 6431f35e4360c7c8385635f1e262c2f984cf07b1 Author: Roberto Bagnara Date: Tue Apr 28 19:19:04 2009 +0200 2009-04-28 Enea Zaffanella * interfaces/Java/parma_polyhedra_library/Makefile.am: Fixed a typo causing improper cleaning of Java interface files. 2009-04-27 Roberto Bagnara * src/Polyhedron_public.cc, tests/Polyhedron/wrap1.cc: In Polyhedron::wrap_assign() handled the case `o == OVERFLOW_UNDEFINED'. 2009-04-27 Roberto Bagnara * src/Polyhedron.defs.hh, src/Polyhedron_public.cc, tests/Polyhedron/wrap1.cc: Added a new parameter `pcs' to Polyhedron::wrap_assign(). Other parameters reordered. The tests now check for the expected result. 2009-04-27 Roberto Bagnara * configure.ac: Use LT_PREREQ to ensure a recent-enough version of Libtool is used. 2009-04-27 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc: Fixed a few residual issue in Java interface method ID caching. Factored away common code in helper functions build_cxx_*_system. Inlined a few helper functions. 2009-04-26 Roberto Bagnara * src/Polyhedron_public.cc, tests/Polyhedron/wrap1.cc: Started the implementation of Polyhedron::wrap_assign(). 2009-04-26 Roberto Bagnara * interfaces/Prolog/tests/.gitignore: Added missing pattern. 2009-04-26 Roberto Bagnara * src/checked_mpq.inlines.hh: Unused parameter name omitted. 2009-04-26 Roberto Bagnara * interfaces/C/.gitignore, tests/Polyhedron/.gitignore: Added missing patterns. 2009-04-26 Roberto Bagnara * src/Box.templates.hh, src/Checked_Number.defs.hh, src/Checked_Number.inlines.hh, src/Octagonal_Shape.templates.hh, src/checked.defs.hh, src/checked_ext.inlines.hh, src/checked_float.inlines.hh, src/checked_int.inlines.hh, src/checked_mpq.inlines.hh, src/checked_mpz.inlines.hh, src/math_utilities.inlines.hh: The `mul2exp' and `div2exp' functions are now called `mul_2exp' and `div_2exp'. They have also been changed so as to take an unsigned int parameter. 2009-04-26 Roberto Bagnara * src/GMP_Integer.defs.hh, src/GMP_Integer.inlines.hh: Added void div_2exp_assign(GMP_Integer&, const GMP_Integer&, unsigned int). 2009-04-26 Roberto Bagnara * src/GMP_Integer.defs.hh, src/GMP_Integer.inlines.hh: Added void mul_2exp_assign(GMP_Integer&, const GMP_Integer&, unsigned int). 2009-04-26 Roberto Bagnara * : commit 79dac5cc0b03dec162bdcca40e01828a52371765 Author: Enea Zaffanella Date: Sat Apr 25 16:34:17 2009 +0200 2009-04-25 Roberto Bagnara * configure.ac, interfaces/OCaml/Makefile.am, interfaces/OCaml/tests/Makefile.am: Use the macros OCAMLC, OCAMLOPT and OCAMLLIB. 2009-04-25 Roberto Bagnara * TODO: One obsolete item removed. Other items partially scheduled. 2009-04-25 Roberto Bagnara * TODO, tests/ppl_test.hh: DO_TEST_F now produces a more sensible output. 2009-04-25 Roberto Bagnara * doc/Makefile.am, interfaces/OCaml/Makefile.am: Use the macros OCAMLC, OCAMLOPT and OCAMLDOC instead of hardcoded names. 2009-04-25 Roberto Bagnara * TODO, configure.ac, m4/ocaml.m4: Use the ocaml-autoconf macros for configuration of the OCaml interface. 2009-04-24 Enea Zaffanella * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Coefficient.java, interfaces/Java/parma_polyhedra_library/Generator.java: Improved jni helper functions set_coefficient, set_generator, set_by_reference. Cached anther few Java method IDs. 2009-04-24 Enea Zaffanella * interfaces/Java/parma_polyhedra_library/Coefficient.java, interfaces/Java/parma_polyhedra_library/Constraint.java, interfaces/Java/parma_polyhedra_library/Generator.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Coefficie nt.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Differenc e.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Sum.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Times.jav a, interfaces/Java/parma_polyhedra_library/Linear_Expression_Unary_Min us.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Variable. java: In Java, avoid useless repeated copies in Coefficient and Linear_Expression. 2009-04-24 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/By_Reference.java, interfaces/Java/parma_polyhedra_library/Congruence.java, interfaces/Java/parma_polyhedra_library/Congruence_System.java, interfaces/Java/parma_polyhedra_library/Constraint.java, interfaces/Java/parma_polyhedra_library/Constraint_System.java, interfaces/Java/parma_polyhedra_library/Generator.java, interfaces/Java/parma_polyhedra_library/Generator_System.java, interfaces/Java/parma_polyhedra_library/Generator_Type.java, interfaces/Java/parma_polyhedra_library/Grid_Generator.java, interfaces/Java/parma_polyhedra_library/Grid_Generator_System.java, interfaces/Java/parma_polyhedra_library/Grid_Generator_Type.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Differenc e.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Sum.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Times.jav a, interfaces/Java/parma_polyhedra_library/Linear_Expression_Unary_Min us.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Variable. java, interfaces/Java/parma_polyhedra_library/MIP_Problem_Status.java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/Optimization_Mode.java, interfaces/Java/parma_polyhedra_library/PPL_Object.java, interfaces/Java/parma_polyhedra_library/Relation_Symbol.java, interfaces/Java/parma_polyhedra_library/Variable.java: Caching other Java field/method IDs. Also corrected a latent bug in helper function j_long_to_j_long_class. 2009-04-24 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Coefficient.java, interfaces/Java/parma_polyhedra_library/Linear_Expression.java, interfaces/Java/parma_polyhedra_library/Linear_Expression_Coefficie nt.java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/parma_polyhedra_library/Poly_Con_Relation.java, interfaces/Java/parma_polyhedra_library/Poly_Gen_Relation.java: Started caching Java field/method IDs for jni callbacks. Improved the translation from Java Coefficient to PPL Coefficient objects by providing the former with a toString method. 2009-04-23 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/parma_polyhedra_library/Generator.java: Corrected Java Generator private method void set(Generator). We were not correctly setting the divisor for the generator. Also got rid of unused jni method set_grid_generator(). 2009-04-23 Enea Zaffanella * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/parma_polyhedra_library/By_Reference.java: Got rid of (unnecessarily involved) method is_null. 2009-04-23 Enea Zaffanella * interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh: Prefer passing jobject, jint and jlong by value. 2009-04-23 Abramo Bagnara * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_common.cc, interfaces/Java/jni/ppl_java_common.defs.hh, interfaces/Java/jni/ppl_java_common.inlines.hh, interfaces/Java/jni/ppl_java_globals.cc: Added missing checks. 2009-04-23 Abramo Bagnara * src/C_Integer.hh, src/checked.cc, src/meta_programming.hh: Avoid use of anonymous enum. 2009-04-23 Patricia Hill * tests/Powerset/fromgrid1.cc: Avoid unused variable warning. 2009-04-22 Roberto Bagnara * src/Bit_Row.inlines.hh: Warnings avoided. 2009-04-22 Patricia Hill * tests/Grid/affineimage2.cc: Tests 11 fails with checked-int32 coefficients. 2009-04-21 Roberto Bagnara * NEWS, TODO, src/Init.cc: Use of PPL_ARM_CAN_CONTROL_FPU made safer. When the PPL has been configured with CPPFLAGS="-DPPL_ARM_CAN_CONTROL_FPU=1", the library initialization procedure checks that the FPU can indeed be controlled and fails if that is not the case. 2009-04-21 Roberto Bagnara * m4/ac_check_fpu_control.m4: Formatting improved. 2009-04-21 Roberto Bagnara * m4/ac_check_fpu_control.m4: Made the checks for HAVE_FENV_H systems more robust. 2009-04-21 Roberto Bagnara * tests/Polyhedron/Makefile.am, tests/Polyhedron/wrap1.cc: New file wrap1.cc will contain tests for method Polyhedron::wrap_assign(). 2009-04-21 Roberto Bagnara * src/Polyhedron.defs.hh, src/Polyhedron_public.cc: Added the declaration and a stub implementation of new method Polyhedron::wrap_assign(). 2009-04-21 Roberto Bagnara * src/globals.types.hh: New enumerations Bounded_Integer_Type_Width, Bounded_Integer_Type_Signedness and Bounded_Integer_Type_Overflow to encode the width, signedness and overflow behavior of bounded integer types, respectively. 2009-04-21 Enea Zaffanella * src/BD_Shape.templates.hh: Corrected silly typo in compile-time check. 2009-04-21 Roberto Bagnara * src/Bit_Row.cc: Typos fixed. 2009-04-21 Roberto Bagnara * src/Bit_Row.inlines.hh: Typos fixed. 2009-04-20 Roberto Bagnara * NEWS: Mentioned the speed improvements committed today. 2009-04-20 Roberto Bagnara * README, Watchdog/src/Makefile.am, configure.ac, demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lpsol/ppl_lpsol.1, doc/libppl.3, doc/libppl_c.3, doc/ppl-config.1, doc/ppl-config_extra_man_text, interfaces/C/Makefile.am, src/Makefile.am: Version number bumped. 2009-04-20 Roberto Bagnara * : commit d0e5a4edbf54e3a14ba44b27d34ab24f101cb118 Merge: 0dbad6c 45e1e7e Author: Roberto Bagnara Date: Mon Apr 20 22:10:48 2009 +0200 2009-04-20 Roberto Bagnara * src/Bit_Row.cc, src/Bit_Row.defs.hh, src/Bit_Row.inlines.hh: Bit_Row iterators reimplemented more efficiently. 2009-04-20 Enea Zaffanella * src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh, src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh, tests/BD_Shape/Makefile.am, tests/BD_Shape/integerupperboundifexact1.cc, tests/Octagonal_Shape/Makefile.am, tests/Octagonal_Shape/integerupperboundifexact1.cc, tests/Octagonal_Shape/upperboundifexact1.cc: The exact integer upper bound methods for shapes are now under Git control. The methods are named integer_upper_bound_assign_if_exact; they can only be instantiated if the template parameter T is an integer datatype. 2009-04-20 Abramo Bagnara * src/Bit_Row.inlines.hh: Added assert to check for possible overflow. 2009-04-20 Roberto Bagnara * : commit 12dc53fb2a829b9ae88c49c5a5dd796df4cc8ced Author: Roberto Bagnara Date: Mon Apr 20 16:15:22 2009 +0200 2009-04-20 Abramo Bagnara * src/Bit_Row.inlines.hh: Size has to be specified in bits. 2009-04-20 Roberto Bagnara * src/Bit_Row.cc, src/Bit_Row.defs.hh, src/Bit_Row.inlines.hh: New constructor Bit_Row::Bit_Row(const Bit_Row& y, const Bit_Row& z). Constructs an object containing the set-union of y and z. 2009-04-20 Roberto Bagnara * src/Bit_Row.cc: Further improved subset_or_equal(const Bit_Row&, const Bit_Row&, bool&). 2009-04-20 Roberto Bagnara * src/Bit_Matrix.cc, src/Bit_Matrix.defs.hh, src/conversion.cc: Avoid useless allocations by only adding recycled rows to Bit_Matrix. 2009-04-20 Roberto Bagnara * src/conversion.cc: Significantly speeded up the construction of `new_satrow'. 2009-04-20 Roberto Bagnara * src/Bit_Row.cc: Improved subset_or_equal(const Bit_Row&, const Bit_Row&, bool&). 2009-04-19 Patricia Hill * interfaces/Prolog/tests/pl_check.pl, interfaces/Prolog/tests/ppl_interface_generator_prolog_generated_te st_pl_code.m4: Removed tests for the deprecated *and_minimize() predicates. 2009-04-18 Patricia Hill * tests/Grid/addcongruence1.cc, tests/Grid/addcongruences1.cc, tests/Grid/addconstraint1.cc, tests/Grid/addconstraints1.cc, tests/Grid/addgenerator1.cc, tests/Grid/addgenerators1.cc, tests/Grid/affinedim1.cc, tests/Grid/affineimage2.cc, tests/Grid/bounded1.cc, tests/Grid/bounds1.cc, tests/Grid/certificate1.cc, tests/Grid/congruences1.cc, tests/Grid/containsintegerpoint1.cc, tests/Grid/discrete1.cc, tests/Grid/generators1.cc, tests/Grid/grid1.cc, tests/Grid/grid2.cc, tests/Grid/intersection1.cc, tests/Grid/maxmin1.cc, tests/Grid/mingenerators1.cc, tests/Grid/partition1.cc, tests/Grid/removespacedims1.cc, tests/Grid/removespacedims2.cc, tests/Grid/simplifyusingcontext1.cc, tests/Grid/topclosed1.cc: Removed deprecated methods *and_minimize(). 2009-04-18 Roberto Bagnara * fedora/ppl.spec: Mark package ppl-yap as obsoleting ppl-yap-static. 2009-04-18 Roberto Bagnara * configure.ac: Update version. 2009-04-18 Roberto Bagnara * Watchdog/ChangeLog: Mark ChangeLog. 2009-04-18 Roberto Bagnara * ChangeLog: Mark ChangeLog. 2009-04-17 Roberto Bagnara * interfaces/Prolog/tests/clpq.pl, interfaces/Prolog/tests/clpq2.pl: No longer use ppl_Polyhedron_add_constraints_and_minimize/2. 2009-04-17 Roberto Bagnara * tests/BD_Shape/addconstraints1.cc, tests/BD_Shape/concatenate1.cc, tests/BD_Shape/congruences1.cc, tests/BD_Shape/intersection1.cc, tests/Octagonal_Shape/congruences1.cc, tests/Octagonal_Shape/intersection1.cc, tests/Polyhedron/exceptions1.cc, tests/Polyhedron/exceptions2.cc, tests/Powerset/intersection1.cc: More changes related to the removal of the *_and_minimize() methods. 2009-04-17 Roberto Bagnara * tests/Polyhedron/addcongruence1.cc, tests/Polyhedron/addcongruences1.cc, tests/Polyhedron/addconstraint1.cc, tests/Polyhedron/addconstraints1.cc, tests/Polyhedron/addconstraints2.cc, tests/Polyhedron/addgenerator1.cc, tests/Polyhedron/addgenerators1.cc, tests/Polyhedron/addgenerators2.cc, tests/Polyhedron/boundedaffineimage1.cc, tests/Polyhedron/constrains1.cc, tests/Polyhedron/constraints1.cc, tests/Polyhedron/exceptions1.cc, tests/Polyhedron/exceptions2.cc, tests/Polyhedron/generators1.cc, tests/Polyhedron/h79widening2.cc, tests/Polyhedron/intersection1.cc, tests/Polyhedron/nncminimize1.cc, tests/Polyhedron/randphull1.cc, tests/Polyhedron/topclosed1.cc, tests/Powerset/addconstraints1.cc: Tests adapted to check the "non-and_minimize" versions. Several comments and one bug fixed in the process. 2009-04-17 Roberto Bagnara * : commit 5d9dccfb35624f7a3efd99cfea738306b147a473 Merge: 083f3ea 205889d Author: Roberto Bagnara Date: Fri Apr 17 12:55:06 2009 +0200 2009-04-16 Roberto Bagnara * tests/Polyhedron/memory1.cc: Changed `__s390x' to `__s390x__' in conditional exclusion of this test. 2009-04-16 Roberto Bagnara * ChangeLog, Watchdog/ChangeLog: Updated. 2009-04-16 Roberto Bagnara * fedora/{ppl-0.10.1-Makefile.patch => ppl-0.10.2-Makefile.patch}, fedora/ppl.hh, fedora/ppl.spec, fedora/ppl_c.h, fedora/pwl.hh: Updated for PPL 0.10.2. 2009-04-16 Roberto Bagnara * doc/libppl.3, doc/libppl_c.3: Version numbers fixed. 2009-04-16 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lpsol/ppl_lpsol.1, doc/libppl.3, doc/libppl_c.3, doc/ppl-config.1, doc/ppl-config_extra_man_text: Updated for PPL 0.10.2. 2009-04-16 Roberto Bagnara * Watchdog/doc/Makefile.am, doc/Makefile.am: Added targets to have `make -n dist' work as expected. 2009-04-16 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.cc: Usage string fixed: ppl_lcdd accepts at most one input file. 2009-04-16 Roberto Bagnara * Watchdog/src/Makefile.am, Watchdog/tests/Makefile.am, demos/ppl_lcdd/Makefile.am, demos/ppl_lpsol/Makefile.am, interfaces/C/Makefile.am, interfaces/C/tests/Makefile.am, interfaces/Java/Makefile.am, interfaces/Java/jni/Makefile.am, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/tests/Makefile.am, interfaces/OCaml/Makefile.am, interfaces/OCaml/tests/Makefile.am, interfaces/Prolog/Ciao/Makefile.am, interfaces/Prolog/GNU/Makefile.am, interfaces/Prolog/Makefile.am, interfaces/Prolog/SICStus/Makefile.am, interfaces/Prolog/SWI/Makefile.am, interfaces/Prolog/XSB/Makefile.am, interfaces/Prolog/YAP/Makefile.am, interfaces/Prolog/tests/Makefile.am, src/Makefile.am, tests/BD_Shape/Makefile.am, tests/Box/Makefile.am, tests/Grid/Makefile.am, tests/MIP_Problem/Makefile.am, tests/Octagonal_Shape/Makefile.am, tests/Partially_Reduced_Product/Makefile.am, tests/Polyhedron/Makefile.am, tests/Powerset/Makefile.am: Added rules so that `make -n' and `make -n check' work. 2009-04-16 Roberto Bagnara * doc/definitions.dox: Updated BHZ09b. 2009-04-15 Roberto Bagnara * NEWS, tests/Polyhedron/memory1.cc: Test program tests/Polyhedron/memory1 disabled on the zSeries s390x platform. 2009-04-15 Roberto Bagnara * NEWS, README, TODO, configure.ac: Updated for PPL 0.10.2. 2009-04-15 Roberto Bagnara * Watchdog/src/Makefile.am, interfaces/C/Makefile.am, src/Makefile.am: Libtool -version-info updated for PPL 0.10.2. 2009-04-15 Roberto Bagnara * m4/ac_check_gmp.m4: Accommodate version 4.3.0 of GMP. Starting from GMP version 4.3.0 (released a few hours after PPL 0.10.1), the gmp_version variable always contains three parts. In previous versions the patchlevel was omitted if it was 0. This change broke our GMP detection procedure. 2009-04-14 Roberto Bagnara * NEWS, interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/ppl_interface_generator_c_procedure_generators.m4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/ppl_interface_generator_common_dat.m4, src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/Grid.defs.hh, src/Grid.inlines.hh, src/Grid_public.cc, src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.inlines.hh, src/Pointset_Powerset.templates.hh, src/Polyhedron.defs.hh, src/Polyhedron.inlines.hh, src/Polyhedron_public.cc, tests/Powerset/addconstraints1.cc, tests/Powerset/intersection1.cc: Initiated the removal of the methods deprecated in PPL 0.10. 2009-04-14 Roberto Bagnara * doc/README.doc: Improved. 2009-04-14 Enea Zaffanella * doc/README.doc: Updated to refer to git and to mention possible names of TeX config files. 2009-04-14 Roberto Bagnara * configure.ac: Update version. 2009-04-14 Roberto Bagnara * Watchdog/ChangeLog: Mark ChangeLog. 2009-04-14 Roberto Bagnara * ChangeLog: Mark ChangeLog. 2009-04-13 Roberto Bagnara * : commit d3f29a9c56e680f46428916490d4ec2c00210c66 Author: Roberto Bagnara Date: Mon Apr 13 16:41:28 2009 +0200 2009-04-13 Roberto Bagnara * tests/Octagonal_Shape/affineimage1.cc: Disabled test10() on the Alpha. 2009-04-12 Roberto Bagnara * : commit 64d70efe40c253409d12f0159eadb4b95a1f105f Author: Roberto Bagnara Date: Sun Apr 12 10:39:55 2009 +0200 2009-04-12 Roberto Bagnara * devtools/generate_dox_biblio.sed, doc/definitions.dox: Bibliography updated. The generated bibliography required manual intervention in a few places, also because of a couple of Doxygen bugs and limitations (see http://bugzilla.gnome.org/show_bug.cgi?id=578739 and http://bugzilla.gnome.org/show_bug.cgi?id=578740). 2009-04-11 Roberto Bagnara * interfaces/C/tests/.gitignore, interfaces/Prolog/XSB/.gitignore, interfaces/Prolog/YAP/.gitignore: Added missing patterns. Removed obsolete ones. 2009-04-11 Roberto Bagnara * .gitignore, Watchdog/doc/.gitignore, doc/.gitignore, interfaces/Prolog/XSB/.gitignore: Added missing patterns. 2009-04-11 Roberto Bagnara * fedora/ppl-0.10-bigendian.patch, fedora/ppl-0.10-configure.patch, fedora/ppl-0.10.1-Makefile.patch, fedora/ppl.spec: Updated for PPL 0.10.1. 2009-04-11 Roberto Bagnara * : commit 8707f62b598769d6802282c5f762b63b607ed109 Author: Roberto Bagnara Date: Sat Apr 11 08:37:36 2009 +0200 2009-04-11 Roberto Bagnara * interfaces/Prolog/XSB/Makefile.am: Fixed reference to CLPQ_TESTS. 2009-04-10 Roberto Bagnara * : commit 8e9f007fa2a5491ee1810e83fc24a6daa2829516 Author: Roberto Bagnara Date: Fri Apr 10 22:32:54 2009 +0200 2009-04-10 Roberto Bagnara * src/checked_float.inlines.hh: Only use fmaf(), fma() and fmal() if they are fast. 2009-04-10 Roberto Bagnara * configure.ac: Version number bumped. 2009-04-10 Roberto Bagnara * src/checked_float.inlines.hh: Do not use fma(), fmaf() and fmal() on FreeBSD. fma() does not respect rounding, fmaf() and fmal() may have the same problem. 2009-04-09 Roberto Bagnara * CREDITS: Mentioned the AIDA 2007 project. 2009-04-09 Roberto Bagnara * CREDITS: Acknowledge the contribution of HiPEAC. 2009-04-09 Roberto Bagnara * CREDITS: Acknowledge the contribution of INRIA. 2009-04-09 Roberto Bagnara * CREDITS: Acknowledge the contribution of AMD. Fixed mistaked of previous commit. 2009-04-09 Roberto Bagnara * CREDITS: Acknowledge the contribution of Kenneth MacKenzie. 2009-04-07 Roberto Bagnara * tests/Octagonal_Shape/unconstrain1.cc: Disabled test07() on the Alpha. 2009-04-06 Roberto Bagnara * : commit 52d769bff2e50c45330bdca9a955e33c9526337e Author: Roberto Bagnara Date: Mon Apr 6 20:21:25 2009 +0200 2009-04-06 Roberto Bagnara * devtools/cvs2cl.pl, devtools/git2cl, devtools/update_ChangeLog: Machinery to generate ChangeLog adapted to Git. This is still highly unsatisfactory, as it requires manual intervention. 2009-04-06 Roberto Bagnara * configure.ac: Version number bumped. 2009-04-06 Abramo Bagnara * demos/ppl_lcdd/Makefile.am, demos/ppl_lpsol/Makefile.am, devtools/print_nonascii_lines: Avoid differences generated by locale. 2009-04-06 Roberto Bagnara * demos/ppl_lcdd/Makefile.am: Set LC_COLLATE=C in addition to LANG=C. 2009-04-03 Roberto Bagnara * tests/Octagonal_Shape/generalizedaffinepreimage3.cc: Disabled test04() on the Alpha. 2009-04-05 Roberto Bagnara * tests/Octagonal_Shape/cc76extrapolation1.cc, tests/Octagonal_Shape/disjoint1.cc: Disabled a couple of tests on the Alpha. 2009-04-04 Roberto Bagnara * Watchdog/NEWS, Watchdog/README, Watchdog/configure.ac, Watchdog/src/Makefile.am: Updated for PWL 0.7. 2009-04-04 Roberto Bagnara * README: Updated for PPL 0.10.1. 2009-04-04 Roberto Bagnara * NEWS: More NEWS items added. Tentative release date set to April 14, 2009. 2009-04-03 Enea Zaffanella * tests/Box/ascii_dump_load1.cc: Do not use the same object to play different roles in the same method call. In calls to methods Box::difference_assign and Box::concatenate_assign we were binding the very same Box object both to the (modifiable) implicit argument *this and to the (const) explicit argument y. 2009-04-03 Enea Zaffanella * src/Box.templates.hh: Fixed a missing initialization bug in Box::concatenate_assign. Also improved methods add_space_dimensions*: instead of adding new uninitialized intervals and later initialize them, we now directly add properly initialized intervals. 2009-04-03 Patricia Hill * src/Box.templates.hh: Avoid warning of unused variable space_dim. 2009-04-03 Roberto Bagnara * interfaces/C/tests/ppl_c_test.cc: Work around a bug affecting some versions of . 2009-04-02 Roberto Bagnara * configure.ac, m4/ac_cxx_double_binary_format.m4, m4/ac_cxx_double_exact_output.m4, m4/ac_cxx_long_double_binary_format.m4: Added missing uses of AC_REQUIRE; removed a spurious one. Version number bumped. 2009-04-02 Enea Zaffanella * doc/Makefile.am, interfaces/OCaml/tests/Makefile.am: Use @mlgmp_dir@ instead of +gmp for the -I option of ocamldoc. 2009-04-02 Abramo Bagnara * interfaces/Prolog/Ciao/Makefile.am, interfaces/Prolog/GNU/Makefile.am, interfaces/Prolog/SICStus/Makefile.am, interfaces/Prolog/SWI/Makefile.am, interfaces/Prolog/XSB/Makefile.am, interfaces/Prolog/YAP/Makefile.am: Fixed parallel make. 2009-04-02 Enea Zaffanella * NEWS: Added a couple of items. 2009-04-02 Enea Zaffanella * TODO: We no longer have FIXME's for 0.10.1. 2009-04-02 Enea Zaffanella * src/Grid.templates.hh: Another FIXME postponed to 0.11. 2009-04-02 Enea Zaffanella * src/Box.templates.hh, tests/Box/refinewithconstraint1.cc: A couple of FIXME postponed to 0.11. 2009-04-01 Roberto Bagnara * src/OR_Matrix.inlines.hh: Code duplication and useless bitwise manipulation avoided. 2009-04-01 Roberto Bagnara * src/OR_Matrix.defs.hh, src/OR_Matrix.inlines.hh: FIXME resolved. 2009-04-01 Roberto Bagnara * tests/Polyhedron/exceptions2.cc: Disabled test19() on the Alpha. 2009-04-01 Enea Zaffanella * tests/Box/ascii_dump_load1.cc: Adapted test Box/ascii_dump_load1.cc and FIXME removed. 2009-04-01 Patricia Hill * src/Box.templates.hh: Typo fixed. 2009-04-01 Patricia Hill * src/Box.defs.hh, src/Box.templates.hh, tests/Box/Makefile.am, tests/Box/limitedcc76extrapolation1.cc: Revised the implementation for Box::limited_cc76_extrapolation_assign() so as to use the limiting constraint system to limit the widened box. The FIXME(0.10.1) there is now removed. 2009-04-01 Enea Zaffanella * tests/Box/empty1.cc: Test adapted and fixme removed. 2009-04-01 Patricia Hill * src/Pointset_Powerset.cc, src/Pointset_Powerset.defs.hh, src/Pointset_Powerset.templates.hh, tests/Powerset/fromgrid1.cc: Changes to deal with //FIXME(0.10.1): the following is a bug! in src/Pointset_Powerset.templates.hh As Grids are non-convex, the constructor for a powerset of nnc polyhedra from a powerset of grids has been implemented separately from the generic case. A test added to show that there was a bug which is now fixed. The "//FIXME(0.10.1): ..." has been removed but a new FIXME added indicating this code will break if other non-convex or non-linear domains are added 2009-04-01 Roberto Bagnara * README, src/Makefile.am: Updated for PPL 0.10.1. 2009-04-01 Roberto Bagnara * TODO: New items for PPL 0.11 added. Other items scheduled for PPL 0.11. 2009-03-31 Abramo Bagnara * src/DB_Matrix.templates.hh, src/OR_Matrix.templates.hh: Made ascii_load more restrictive. 2009-03-31 Roberto Bagnara * src/BD_Shape.templates.hh: Indentation fixed. 2009-03-31 Roberto Bagnara * : commit ccc5ce00a303af09a7e37d120695a2c1cbb37834 Author: Roberto Bagnara Date: Tue Mar 31 17:37:40 2009 +0000 2009-03-31 Abramo Bagnara * src/Box.inlines.hh: Postponed FIXME. 2009-03-31 Abramo Bagnara * src/Init.cc: Removed FIXME and documented the default value. 2009-03-31 Abramo Bagnara * TODO: Added TODO item. 2009-03-31 Abramo Bagnara * src/Polyhedron_nonpublic.cc: Postponed FIXME. 2009-03-31 Abramo Bagnara * tests/BD_Shape/Makefile.am, tests/Box/Makefile.am, tests/Octagonal_Shape/Makefile.am: Fixed run_tests make. 2009-03-31 Patricia Hill * src/Pointset_Powerset.templates.hh: Removed two FIXME(0.10.1)s which have been checked and for which nothing needs to be done. 2009-03-31 Roberto Bagnara * tests/Octagonal_Shape/boundedaffineimage1.cc, tests/Octagonal_Shape/difference1.cc: Disabled some tests on the Alpha. 2009-03-30 Roberto Bagnara * Watchdog/configure.ac, configure.ac: Version number bumped. The name of the program is Autoconf. 2009-03-30 Enea Zaffanella * interfaces/OCaml/ppl_interface_generator_ocaml_ml.m4, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/OCaml/tests/test1.ml: Register OCaml interface exceptions; added a few tests. The interface exceptions should be registered both in the .ml and .mli files. Added a test for the invalid argument exception (negative space dimension) and for the set/reset timeout functions. 2009-03-30 Roberto Bagnara * TODO: Added one item for PPL 0.11. 2009-03-30 Roberto Bagnara * tests/Box/relations4.cc: Disable test19() on the Alpha. 2009-03-30 Roberto Bagnara * interfaces/C/tests/Makefile.am: Fixed *_CPPFLAGS variables. 2009-03-30 Roberto Bagnara * interfaces/C/tests/formatted_output.c: Include "ppl_c_test.h" instead of "ppl_c.h". 2009-03-30 Roberto Bagnara * interfaces/C/tests/ppl_c_test.h: Include "ppl_c.h". 2009-03-30 Roberto Bagnara * configure.ac: Avoid redefining NDEBUG. 2009-03-30 Enea Zaffanella * interfaces/OCaml/ppl_interface_generator_ocaml_ml.m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/tests/Makefile.am, interfaces/OCaml/tests/test1.ml: Register PPL_timeout_exception in the OCaml interface. Avoid flood of warnings by directly thowing CAML exceptions in CATCH_ALL. Still debugging the handling of timeouts. 2009-03-30 Roberto Bagnara * src/Pointset_Ask_Tell.templates.hh: Removed the tag "(0.10.1)" from a FIXME unrelated to with PPL 0.10.1. 2009-03-30 Roberto Bagnara * src/Box.inlines.hh: Obsolete FIXME removed: methods Box::refine_* were fixed long ago. 2009-03-30 Roberto Bagnara * src/Partially_Reduced_Product.inlines.hh, src/globals.defs.hh: Decided that it is not worth renaming PPL_OUTPUT_TEMPLATE_DEFINITIONS. Calling it PPL_OUTPUT_1_PARAM_TEMPLATE_DEFINITIONS would not buy us anything: FIXMEs removed. 2009-03-30 Enea Zaffanella * interfaces/OCaml/Makefile.am, interfaces/OCaml/tests/Makefile.am, interfaces/OCaml/tests/test1.ml: Let OCaml tests also link with the pwl library, if configured. 2009-03-30 Roberto Bagnara * README.alpha: Warn about the GCC bug affecting exception handling on the Alpha. 2009-03-30 Roberto Bagnara * TODO: Consider switching to MLGMPIDL for the OCaml interface. 2009-03-30 Abramo Bagnara * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/IO.java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/tests/MIP_Problem_test1.java: Added wrap_string to java interface. 2009-03-30 Abramo Bagnara * interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/IO.java, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/tests/MIP_Problem_test1.java: Reverted bogus commits. 2009-03-30 Abramo Bagnara * interfaces/Java/jni/ppl_java_globals.cc: Added file. 2009-03-30 Abramo Bagnara * interfaces/Java/parma_polyhedra_library/Makefile.am: Added file. 2009-03-30 Abramo Bagnara * interfaces/Java/tests/MIP_Problem_test1.java: Added test. 2009-03-30 Abramo Bagnara * interfaces/Java/parma_polyhedra_library/IO.java, interfaces/Java/parma_polyhedra_library/Makefile.am: Added java. 2009-03-30 Abramo Bagnara * interfaces/Java/jni/ppl_java_globals.cc: Fix2. 2009-03-30 Abramo Bagnara * interfaces/Java/jni/ppl_java_globals.cc: Fix. 2009-03-30 Abramo Bagnara * interfaces/Java/jni/ppl_java_globals.cc: Added wrap_string. 2009-03-30 Enea Zaffanella * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_common.inlines.hh: Helper OCaml interface function renamed for consistency. value_to_unsigned_native --> value_to_unsigned (to be consistent with similar functions in the Java and Prolog interfaces). 2009-03-30 Enea Zaffanella * TODO, Watchdog/src/Watchdog.defs.hh: Moved TODO items to their place. 2009-03-30 Enea Zaffanella * Watchdog/src/Watchdog.defs.hh, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/Prolog/ppl_prolog_common.cc: Added timeout functions to the OCaml interface. Also removed duplicate CATCH_ALL macro definitions in the Prolog and OCaml interfaces. 2009-03-30 Enea Zaffanella * interfaces/OCaml/OCaml_interface.dox, interfaces/Prolog/Prolog_interface.dox: Improvements to the OCaml and Prolog interface documentation. 2009-03-30 Abramo Bagnara * tests/BD_Shape/.gitignore, tests/BD_Shape/Makefile.am, tests/Box/.gitignore, tests/Box/Makefile.am, tests/Octagonal_Shape/.gitignore, tests/Octagonal_Shape/Makefile.am: Fixed restore of parallelized tests. 2009-03-30 Abramo Bagnara * tests/BD_Shape/Makefile.am, tests/Box/Makefile.am, tests/Octagonal_Shape/Makefile.am: Revert "Restore parallelized tests." This reverts commit b163fee3b048fe3dd07be912850ec042f4d24b2d. 2009-03-30 Abramo Bagnara * tests/BD_Shape/Makefile.am, tests/Box/Makefile.am, tests/Octagonal_Shape/Makefile.am: Restore parallelized tests. 2009-03-30 Enea Zaffanella * interfaces/Prolog/Prolog_interface.dox, interfaces/Prolog/ppl_interface_generator_prolog_dox.m4: Minor improvement to documentation. In the documentation block for \defgroup, do not use \brief if there does not also exist a detailed documentation section (otherwise, doxygen will insert a spurious "More..." link pointing to the same page). 2009-03-30 Enea Zaffanella * interfaces/C/C_interface.dox, interfaces/C/ppl_c_header.h, interfaces/Java/parma_polyhedra_library/Fake_Class_for_Doxygen.java , interfaces/Java/parma_polyhedra_library/MIP_Problem.java, interfaces/Java/parma_polyhedra_library/Parma_Polyhedra_Library.jav a: Avoid spurious vertical space in the documentation. When adding a member group using doxygen commmand \name and the multiline style special comments, also add a \brief command if there is no detailed documentation for the group. 2009-03-29 Enea Zaffanella * interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli: Added string wrapping helper function to OCaml interface. 2009-03-29 Roberto Bagnara * fedora/ppl.spec: Moved changelogs and PostScript and PDF versions of the GPL to the `docs' subpackages. This saves considerable space on the live media. 2009-03-29 Roberto Bagnara * configure.ac: Version number bumped. 2009-03-29 Roberto Bagnara * interfaces/C/tests/Makefile.am: Temporary workaround to force linking with C++. 2009-03-29 Enea Zaffanella * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_common.defs.hh, interfaces/OCaml/ppl_ocaml_common.inlines.hh, interfaces/OCaml/tests/test1.ml: Improved the OCaml interfacing of PPL dimensions and coefficients. Added new helper functions: - value_to_unsigned_native - ppl_dimension_to_value - value_to_ppl_dimension - mpz_ptr_val and mpz_class_val - build_ppl_Variable. Prefer using Val_emptylist to Val_int(0). 2009-03-29 Roberto Bagnara * tests/MIP_Problem/exceptions1.cc: Disable these tests on the Alpha. 2009-03-29 Roberto Bagnara * configure.ac: Version number bumped. 2009-03-29 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.cc, demos/ppl_lpsol/ppl_lpsol.c, src/ppl-config.cc.in: Try to accommodate more non-GNU implementations of `getopt()'. 2009-03-28 Abramo Bagnara * src/Interval.inlines.hh: Remove unimplemented and unused functions. 2009-03-28 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.cc, demos/ppl_lpsol/ppl_lpsol.c, src/ppl-config.cc.in: Try to accommodate non-GNU implementations of `getopt()'. 2009-03-28 Roberto Bagnara * configure.ac, src/Bit_Row.inlines.hh: Some systems do not have . On such systems ffs(3) may be defined in . 2009-03-28 Roberto Bagnara * TODO: Done item removed. 2009-03-28 Roberto Bagnara * ChangeLog, ChangeLog-2001-2008 => ChangeLog_2001-2008, Watchdog/ChangeLog, Watchdog/{ChangeLog-2001-2008 => ChangeLog_2001-2008}: Change logs updated. 2009-03-28 Roberto Bagnara * Watchdog/configure.ac, configure.ac: Improved the semantics of the --enable-watchdog configure option. 2009-03-28 Abramo Bagnara * src/Interval.inlines.hh: Removed useless functions. 2009-03-28 Roberto Bagnara * tests/Box/frombox1.cc: Fixed and reactivated test05(). 2009-03-28 Roberto Bagnara * tests/Box/frombox1.cc: Parameterized test05(). 2009-03-28 Roberto Bagnara * src/checked_mpz.inlines.hh: Fixed indentation. 2009-03-28 Abramo Bagnara * src/checked.inlines.hh: These efficiency related FIXME's are not scheduled for 0.10.1 2009-03-28 Abramo Bagnara * src/Checked_Number.inlines.hh: Documented ROUND_NOT_NEEDED FIXME. 2009-03-28 Abramo Bagnara * TODO, src/Init.cc, src/checked_mpq.inlines.hh: Documented rational sqrt precision and implemented a more precise variant for numbers < 1. 2009-03-28 Abramo Bagnara * src/checked_mpz.inlines.hh: Avoid unrequested call to mpz_divisible_p. 2009-03-28 Roberto Bagnara * m4/ac_cxx_double_exact_output.m4, m4/ac_cxx_float_exact_output.m4, m4/ac_cxx_long_double_exact_output.m4: Uuse the PPL_CXX_*_BINARY_FORMAT macros. 2009-03-28 Abramo Bagnara * tests/Box/frombox1.cc: Disabled failing test. 2009-03-28 Abramo Bagnara * src/checked_mpz.inlines.hh: Avoid abuse of mpz_divexact. 2009-03-28 Roberto Bagnara * interfaces/C/tests/Makefile.am: Tweak for MinGW. Force the use of the C++ compiler for linking. 2009-03-28 Roberto Bagnara * interfaces/C/tests/print_to_buffer.c: Include instead of . 2009-03-28 Roberto Bagnara * demos/ppl_lpsol/Makefile.am: Allow testing under MinGW. 2009-03-28 Roberto Bagnara * configure.ac: Detect MinGW, defining the HOST_OS_MINGW Automake conditional. 2009-03-27 Roberto Bagnara * demos/ppl_lpsol/Makefile.am, demos/ppl_lpsol/ppl_lpsol.1, demos/ppl_lpsol/ppl_lpsol.c, demos/ppl_lpsol/ppl_lpsol_extra_man_text: The `ppl_lpsol' program can now be built and checked with cross-compilation. 2009-03-27 Roberto Bagnara * demos/ppl_lcdd/ppl_lcdd.cc: Minor code readability improvements. 2009-03-27 Roberto Bagnara * interfaces/C/ppl_c_header.h, src/wrap.hh: Comments improved. 2009-03-27 Enea Zaffanella * interfaces/C/ppl_c_header.h: A couple of minor corrections. 2009-03-27 Abramo Bagnara * interfaces/C/ppl_c_header.h: Fixed parameter name. 2009-03-27 Abramo Bagnara * interfaces/C/ppl_c_header.h: Moved ppl_io_wrap_string documentation. 2009-03-27 Roberto Bagnara * demos/ppl_lpsol/ppl_lpsol.1, doc/ppl-config.1: Man pages updated. 2009-03-27 Roberto Bagnara * demos/ppl_lcdd/Makefile.am, demos/ppl_lcdd/ppl_lcdd.1, demos/ppl_lcdd/ppl_lcdd.cc, demos/ppl_lcdd/ppl_lcdd_extra_man_text: The `ppl_lcdd' program can now be built and checked with cross-compilation. 2009-03-27 Abramo Bagnara * interfaces/C/Makefile.am, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.defs.hh, interfaces/C/ppl_c_stream.cc, interfaces/C/ppl_c_stream.defs.hh, interfaces/C/ppl_c_stream.h, interfaces/C/ppl_c_stream.inlines.hh, interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/C/tests/formatted_output.c, interfaces/C/tests/print_to_buffer.c, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Congruence.java, interfaces/Java/parma_polyhedra_library/Congruence_System.java, interfaces/Java/parma_polyhedra_library/Constraint.java, interfaces/Java/parma_polyhedra_library/Constraint_System.java, interfaces/Java/parma_polyhedra_library/Generator.java, interfaces/Java/parma_polyhedra_library/Generator_System.java, interfaces/Java/parma_polyhedra_library/Grid_Generator.java, interfaces/Java/parma_polyhedra_library/Grid_Generator_System.java, interfaces/Java/parma_polyhedra_library/Linear_Expression.java, interfaces/Java/parma_polyhedra_library/MIP_Problem.java, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/ppl_interface_generator_common_procedure_generators.m4, src/Makefile.am, src/c_streambuf_format.cc, src/c_streambuf_format.defs.hh, src/c_streambuf_format.types.hh, src/c_streambuf_format_settings.h, src/pretty_print.cc, src/pretty_print.hh, src/pretty_print.inlines.hh, src/wrap.cc, src/{c_streambuf_format.inlines.hh => wrap.hh}: Get rid of pretty_printing stuff. A string wrapping function is made available. 2009-03-27 Roberto Bagnara * ChangeLog, Watchdog/ChangeLog: Change logs covering the changes made in the CVS repository in 2009. They will be replaced by up-to-date change logs obtained from git. 2009-03-27 Roberto Bagnara * ChangeLog => ChangeLog-2001-2008, Watchdog/{ChangeLog => ChangeLog-2001-2008}: Renamed and frozen: the ChangeLog-2001-2008 should never be changed again. 2009-03-27 Roberto Bagnara * ChangeLog, Watchdog/ChangeLog: Updated to 2008-12-31. 2009-03-27 Abramo Bagnara * tests/BD_Shape/Makefile.am, tests/BD_Shape/run_tests, tests/Box/Makefile.am, tests/Box/run_tests, tests/Octagonal_Shape/Makefile.am, tests/Octagonal_Shape/run_tests: Fixed make check. 2009-03-27 Roberto Bagnara * src/Constraint_System.cc: Missing else branch added. 2009-03-27 Roberto Bagnara * src/Bit_Matrix.cc, src/Congruence.cc, src/Congruence_System.cc, src/Constraint_System.cc, src/Generator_System.cc, src/Grid_Generator_System.cc, src/Linear_Row.cc, src/Linear_System.cc, src/Matrix.cc, src/Row.cc: ascii_load() methods now perform more stringent checks on the input. 2009-03-27 Roberto Bagnara * tests/Polyhedron/ascii_dump_load1.cc: Spurious spaces removed. 2009-03-27 Roberto Bagnara * tests/Grid/asciidumpload2.cc: Spurious spaces removed. 2009-03-27 Roberto Bagnara * tests/Polyhedron/memory1.cc, tests/Polyhedron/watchdog1.cc: Fixed the formatting of do-while loops. 2009-03-26 Enea Zaffanella * interfaces/OCaml/OCaml_interface.dox, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/Prolog/.gitignore, interfaces/Prolog/Prolog_interface.dox: Added several missing functions to the OCaml interface. Minor corrections to the documentation. 2009-03-26 Enea Zaffanella * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_hh_code.m4, interfaces/OCaml/ppl_ocaml_common.cc: Fixed several garbage collecting issues in the OCaml interface. - Helper functions returning OCaml value types that have not been registered yet with the garbage collector are now named unregistered_value_p_*; - Added appropriate calls to CAMLlocal* macros where appropriate; - Use the safe Store_field(a, b, c) instead of the unsafe Field(a, b) = c. 2009-03-26 Abramo Bagnara * tests/BD_Shape/.gitignore, tests/BD_Shape/Makefile.am, tests/Box/.gitignore, tests/Box/Makefile.am, tests/Octagonal_Shape/.gitignore, tests/Octagonal_Shape/Makefile.am: Tests have to be done unconditionally. 2009-03-26 Patricia Hill * NEWS: Report on two bugs fixed in the OCaml interface. 2009-03-26 Patricia Hill * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/tests/test1.ml: Fixed a bug where the tokens for widening were not being updated. 2009-03-26 Roberto Bagnara * Watchdog/tests/pwl_test.cc, tests/ppl_test.cc: Support systems that do not define `siginfo_t'. 2009-03-26 Roberto Bagnara * Watchdog/configure.ac, configure.ac: Added checks for the availability of `siginfo_t'. 2009-03-26 Roberto Bagnara * m4/ac_check_fpu_control.m4: We can infer the possibility to control the CPU even when cross-compiling. This happens (at least) on i386 and sparc (provided we have ). 2009-03-25 Abramo Bagnara * interfaces/C/ppl_c_stream.cc, interfaces/C/tests/print_to_buffer.c, src/c_streambuf_format.cc, src/c_streambuf_format.defs.hh, src/c_streambuf_format.inlines.hh, src/c_streambuf_format_settings.h: Better parameters for formatted output. 2009-03-25 Roberto Bagnara * src/fpu-ia32.inlines.hh: Properly use PPL_FPMATH_MAY_USE_387 and PPL_FPMATH_MAY_USE_SSE. 2009-03-25 Roberto Bagnara * src/fpu-ia32.cc: Depend on PPL_CAN_CONTROL_FPU. 2009-03-25 Roberto Bagnara * configure.ac: Typo fixed. 2009-03-25 Roberto Bagnara * : commit b5d7b09c10aea7c95b9d2693986e2e4e549d3a12 Author: Roberto Bagnara Date: Wed Mar 25 21:06:01 2009 +0100 2009-03-25 Roberto Bagnara * tests/Box/congruences1.cc, tests/Box/max_min1.cc: Disable more tests that fail on the Alpha due to a GCC bug. 2009-03-25 Enea Zaffanella * src/Octagonal_Shape.templates.hh, tests/BD_Shape/simplifyusingcontext1.cc, tests/Octagonal_Shape/Makefile.am, tests/Octagonal_Shape/simplifyusingcontext1.cc, tests/Polyhedron/simplifyusingcontext1.cc: Implemented Octagonal_Shape::simplify_using_context_assign(). The efficiency of the method needs improving. Added a few tests. 2009-03-25 Patricia Hill * TODO: TODO item - Check the configuration dependent documentation for Prolog, done and removed. 2009-03-25 Patricia Hill * interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/tests/ppl_interface_generator_ocaml_test_ml_code.m 4, interfaces/OCaml/tests/test1.ml: Where the result type is unit, the type returned by C++ must be a CAMLprim value type and not a void. 2009-03-24 Roberto Bagnara * tests/Grid/addcongruences1.cc, tests/Octagonal_Shape/generalizedaffineimage3.cc, tests/Octagonal_Shape/generalizedaffinepreimage2.cc: Exception handling is broken in GCC on the Alpha: commented out some tests. 2009-03-24 Roberto Bagnara * interfaces/C/tests/formatted_output.c: Reduced DIMENSION to 100. 2009-03-24 Roberto Bagnara * configure.ac, interfaces/C/tests/formatted_output.c, m4/ac_check_fpu_control.m4, m4/ac_check_gmp.m4, m4/ac_cxx_double_exact_output.m4, m4/ac_cxx_flexible_arrays.m4, m4/ac_cxx_float_exact_output.m4, m4/ac_cxx_ieee_inexact_flag.m4, m4/ac_cxx_limit_memory.m4, m4/ac_cxx_long_double_exact_output.m4, m4/ac_cxx_proper_long_double.m4, m4/ac_cxx_remainder_bug.m4: Improved the actions of AC_RUN_IFELSE when cross-compiling. 2009-03-24 Abramo Bagnara * interfaces/C/Makefile.am: Fixed file names. 2009-03-24 Enea Zaffanella * NEWS: Mention the bug corrected for method Octagonal_Shape::affine_image(). 2009-03-24 Abramo Bagnara * interfaces/C/ppl_c_header.h: Fixed comment. 2009-03-24 Abramo Bagnara * interfaces/C/ppl_c_header.h: Fixed indentation. 2009-03-24 Enea Zaffanella * src/Octagonal_Shape.templates.hh: Corrected bug affecting method Octagonal_Shape::affine_image(). 2009-03-24 Abramo Bagnara * interfaces/C/Makefile.am, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.defs.hh, src/c_stream.cc => interfaces/C/ppl_c_stream.cc, interfaces/C/ppl_c_stream.defs.hh, interfaces/C/ppl_c_stream.h, interfaces/C/ppl_c_stream.inlines.hh, interfaces/C/tests/formatted_output.c, interfaces/C/tests/print_to_buffer.c, interfaces/C/tests/print_to_buffer.h, src/Makefile.am, src/c_stream.h, src/c_streambuf.inlines.hh, src/c_streambuf_format.cc, src/c_streambuf_format.defs.hh, src/c_streambuf_format.inlines.hh, src/c_streambuf_format_settings.h: Cleaned C streams implementation. 2009-03-24 Enea Zaffanella * tests/Octagonal_Shape/affineimage1.cc: Test test17() shows a bug in method Octagonal_Shape::affine_image(). The bug is triggered when the affine image is of the form var -> var + n and the octagonal shape has constraints relating var with another space dimension having index smaller than var. 2009-03-24 Roberto Bagnara * README.configure, TODO: Explained the `--disable-ppl_lcdd' and `--disable-ppl_lcdd' configure options. 2009-03-24 Roberto Bagnara * fedora/ppl.spec: There are no GNU Prolog packages available on ia64: disable the GNU Prolog interface also on those platforms (besides ppc64, s390 and s390x). 2009-03-24 Roberto Bagnara * fedora/ppl.spec: Synchronized with the Fedora repository. 2009-03-24 Roberto Bagnara * interfaces/C/ppl_c_header.h, interfaces/C/tests/formatted_output.c, interfaces/C/tests/print_to_buffer.c, interfaces/C/tests/print_to_buffer.h, src/c_stream.h: Added some more infrastructure. Variables renamed. 2009-03-23 Roberto Bagnara * interfaces/C/tests/formatted_output.c, interfaces/C/tests/print_to_buffer.c: Build restored. 2009-03-23 Abramo Bagnara * interfaces/C/tests/print_to_buffer.c, src/c_stream.cc, src/c_stream.h, src/c_streambuf_format.cc: Added repeated char for left and right margin. 2009-03-23 Abramo Bagnara * interfaces/C/tests/print_to_buffer.c, interfaces/C/tests/print_to_buffer.h, src/c_stream.h: Some fixes. 2009-03-23 Roberto Bagnara * interfaces/C/tests/Makefile.am, interfaces/C/tests/{cxxoutput.c => formatted_output.c}, interfaces/C/tests/print_to_buffer.cc: Done some cleaning. 2009-03-23 Roberto Bagnara * interfaces/C/Makefile.am, interfaces/C/ppl_c_header.h, interfaces/C/tests/Makefile.am, interfaces/C/tests/print_to_buffer.c, interfaces/C/tests/print_to_buffer.h, src/c_stream.h: Started the installation of the new formatted output machinery. 2009-03-23 Abramo Bagnara * src/c_stream.cc, src/c_stream.h, src/c_streambuf_format.cc: Better name. 2009-03-23 Abramo Bagnara * src/c_stream.cc, src/c_stream.h, src/c_streambuf_format.cc: Bug fix: ostringstream.str() returns a temporary. 2009-03-23 Enea Zaffanella * tests/Octagonal_Shape/affineimage1.cc: Added a test. 2009-03-23 Abramo Bagnara * src/c_stream.cc, src/c_stream.h, src/c_streambuf.defs.hh, src/c_streambuf.inlines.hh, src/c_streambuf_format.cc, src/c_streambuf_format.defs.hh: Separated wrap before from wrap after. Bug fixes. 2009-03-23 Roberto Bagnara * src/OR_Matrix.inlines.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh: Readability improvements. 2009-03-23 Roberto Bagnara * src/OR_Matrix.inlines.hh: Fixed a bug (that is inconsequential for the current code base). We were using `m % 2 == 1' instead of `m % 2 != 0', with `m' a signed number that could be negative. 2009-03-23 Abramo Bagnara * src/c_stream.cc, src/c_stream.h: Added ppl_io_ostream_buffer_clear function. 2009-03-23 Abramo Bagnara * src/c_stream.cc, src/c_stream.h: Added write functions for native types. 2009-03-23 Abramo Bagnara * src/Makefile.am, src/c_stream.cc, src/c_stream.h, src/c_streambuf.cc, src/c_streambuf.defs.hh, src/c_streambuf.inlines.hh, src/c_streambuf_format.cc, src/c_streambuf_format.defs.hh, src/c_streambuf_format.inlines.hh, src/c_streambuf_format.types.hh: Added filtered streams. Implemented format filter. 2009-03-23 Enea Zaffanella * doc/Makefile.am: Add dependencies between HTML manuals for parallel builds. The distributed built HTML manuals logically depend on the built tag file, which is not distributed; hence a direct dependency cannot be added (it would break a `make distcheck' check). As a workaround, they now depend on the core HTML manual, which is built _and_ distributed. 2009-03-23 Roberto Bagnara * src/OR_Matrix.inlines.hh: Obsolete FIXME removed. 2009-03-23 Roberto Bagnara * src/Octagonal_Shape.templates.hh: Little formatting improvement. 2009-03-23 Enea Zaffanella * src/pretty_print.cc, src/pretty_print.hh: Use consistent parameter names in helper function wrap. 2009-03-22 Roberto Bagnara * demos/ppl_lpsol/expected_mpz_a: Updated to reflect the new way `ppl_lpsol' is invoked. 2009-03-22 Roberto Bagnara * Makefile.am, Watchdog/Makefile.am, Watchdog/pwl-config.sed, ppl-config.sed: Tightened the machinery used to generate the configuration headers. 2009-03-22 Enea Zaffanella * tests/Polyhedron/linearexpression1.cc: Added a test for operator-(var, expr) and operator-(expr, var). 2009-03-22 Roberto Bagnara * src/Linear_Expression.cc, src/Linear_Expression.inlines.hh: Improved functions and methods to build linear expressions. Avoid complex inline functions and methods. 2009-03-22 Enea Zaffanella * src/Linear_Expression.cc, src/Linear_Expression.defs.hh, src/Linear_Expression.inlines.hh: Three FIXMEs related to Linear_Expression resolved. The three operators are now friend of Linear_Expression: hence they can use the sizing constructors and limit the use of short-lived temporaries. 2009-03-22 Enea Zaffanella * src/Octagonal_Shape.templates.hh: Dealt with a FIXME related to variable names. 2009-03-22 Roberto Bagnara * src/Linear_Expression.cc, src/Linear_Expression.defs.hh, src/Linear_Expression.inlines.hh, tests/Polyhedron/.gitignore, tests/Polyhedron/Makefile.am, tests/Polyhedron/linearexpression1.cc: FIXME resolved. Fixed a bug in Linear_Expression(Variable v, Variable w). The bug would cause a wrong result to be computed when v == w. 2009-03-22 Enea Zaffanella * NEWS: Mention the bug fixed with Commit: 6a6734db48e2ca605dfc27ce5f1a923eb867ed25 2009-03-22 Enea Zaffanella * interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/tests/ppl_interface_generator_ocaml_test_ml_code.m 4, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4: Corrected a bug in the interfacing of drop_disjunct for Java, Ocaml and Prolog. Also corrected a wrong test in the automatically generated test suite for the OCaml interface: we were trying to decrement an iterator pointing to the start of the sequence of disjuncts. 2009-03-21 Enea Zaffanella * src/Pointset_Ask_Tell.templates.hh: Reworded misleading comment. 2009-03-22 Roberto Bagnara * tests/Polyhedron/{linexpression1.cc => linearexpression1.cc}: Test program renamed. 2009-03-22 Roberto Bagnara * tests/Polyhedron/linexpression1.cc: Rewritted test01(). Added test02(). 2009-03-22 Roberto Bagnara * .gitignore, Makefile.am, Watchdog/Makefile.am, Watchdog/configure.ac, Watchdog/pwl-config.sed, configure.ac, ppl-config.sed: New machinery to create ppl-config.h and pwl-config.h. 2009-03-21 Enea Zaffanella * src/pretty_print.hh, src/pretty_print.inlines.hh: Destructor of abstract class Write_Function has to be virtual. 2009-03-21 Enea Zaffanella * interfaces/C/ppl_interface_generator_c_cc_code.m4, interfaces/C/ppl_interface_generator_c_h_code.m4, interfaces/Java/jni/ppl_interface_generator_java_classes_cc_code.m4 , interfaces/Java/jni/ppl_java_globals.cc, interfaces/Java/parma_polyhedra_library/Congruence.java, interfaces/Java/parma_polyhedra_library/Congruence_System.java, interfaces/Java/parma_polyhedra_library/Constraint.java, interfaces/Java/parma_polyhedra_library/Constraint_System.java, interfaces/Java/parma_polyhedra_library/Generator.java, interfaces/Java/parma_polyhedra_library/Generator_System.java, interfaces/Java/parma_polyhedra_library/Grid_Generator.java, interfaces/Java/parma_polyhedra_library/Grid_Generator_System.java, interfaces/Java/parma_polyhedra_library/Linear_Expression.java, interfaces/Java/parma_polyhedra_library/MIP_Problem.java, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java.m4, interfaces/Java/parma_polyhedra_library/ppl_interface_generator_jav a_classes_java_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_cc_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_ml_code.m4, interfaces/OCaml/ppl_interface_generator_ocaml_mli_code.m4, interfaces/OCaml/ppl_ocaml_common.cc, interfaces/OCaml/ppl_ocaml_globals.ml, interfaces/OCaml/ppl_ocaml_globals.mli, interfaces/Prolog/ppl_interface_generator_prolog_cc_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_hh_code.m4, interfaces/Prolog/ppl_interface_generator_prolog_procedure_generato rs.m4, interfaces/Prolog/ppl_prolog_common.cc, interfaces/Prolog/ppl_prolog_common.defs.hh, interfaces/ppl_interface_generator_common_procedure_generators.m4: Added the new pretty print functionality to Java, OCaml and Prolog interfaces. The predicate takes 3 arguments for specifying preferred wrapping behavior. For Prolog, new predicate is called ppl_CLASS_pretty_print_to_atom/5 and put the result in the last argument as an atom. For Java, method takes a Writer as the first argument. For Caml, function ppl_CLASS_pretty_print returns a caml string. While at it, also added missing ascii_dump method to Caml and Java interfaces, as well as for the MIP_Problem Prolog interface. 2009-03-21 Roberto Bagnara * src/pretty_print.cc, src/pretty_print.hh: Added a new helper function for the wrapping of lines. 2009-03-21 Roberto Bagnara * NEWS: Typo fixed. 2009-03-21 Roberto Bagnara * NEWS, interfaces/C/C_interface.dox, interfaces/C/ppl_c_header.h, interfaces/C/ppl_c_implementation_common.cc, interfaces/C/ppl_c_implementation_common.defs.hh: The C interface now provides functions of the form int ppl_io_asprint_Polyhedron(char** strp, P x) where `P' is any opaque pointer to a const PPL object. These functions print `x' to a malloc-allocated string, a pointer to which is returned via `strp'. 2009-03-21 Roberto Bagnara * TODO: Selected the items that should be done for 0.10.1: postponed the others. 2009-03-21 Roberto Bagnara * src/Determinate.inlines.hh: Two non-urgent FIXMEs better documented. 2009-03-21 Abramo Bagnara * src/Makefile.am, src/c_streambuf.cc, src/c_streambuf.defs.hh, src/c_streambuf.inlines.hh, src/c_streambuf.types.hh: Added callback based streambufs. 2009-03-21 Abramo Bagnara * src/stdiobuf.cc: Fixed typo. 2009-03-21 Roberto Bagnara * Watchdog/configure.ac, configure.ac: Minimum Autoconf version brought back to 2.61. 2009-03-21 Enea Zaffanella * src/Makefile.am: Added files pretty_print.*. 2009-03-21 Enea Zaffanella * src/pretty_print.cc, src/pretty_print.hh, src/pretty_print.inlines.hh: pretty_print.* contain helper datatypes and functions for pretty printing. Template functions pretty_print and c_pretty_print provide wrapped output using a Write_Function object to write to destination. 2009-03-21 Roberto Bagnara * configure.ac: Version number bumped. 2009-03-21 Roberto Bagnara * .gitignore, NEWS, Watchdog/.gitignore, Watchdog/configure.ac, Watchdog/m4/Makefile.am, Watchdog/m4/ax_prefix_config_h.m4, Watchdog/src/Makefile.am, configure.ac, instchk.hh, m4/Makefile.am, m4/ac_check_fpu_control.m4, m4/ac_check_gmp.m4, m4/ac_cxx_attribute_weak.m4, m4/ac_cxx_double_binary_format.m4, m4/ac_cxx_double_exact_output.m4, m4/ac_cxx_flexible_arrays.m4, m4/ac_cxx_float_binary_format.m4, m4/ac_cxx_float_exact_output.m4, m4/ac_cxx_ieee_inexact_flag.m4, m4/ac_cxx_limit_memory.m4, m4/ac_cxx_long_double_binary_format.m4, m4/ac_cxx_long_double_exact_output.m4, m4/ac_cxx_proper_long_double.m4, m4/ac_cxx_remainder_bug.m4, m4/ax_prefix_config_h.m4: Got rid of AX_PREFIX_CONFIG_H. 2009-03-20 Roberto Bagnara * .gitignore: Pattern `*~' added. Patterns sorted. 2009-03-20 Roberto Bagnara * Watchdog/configure.ac, configure.ac, m4/ac_prog_java.m4, m4/ac_prog_javac.m4: Avoid using obsolete Autoconf macros. 2009-03-20 Roberto Bagnara * m4/ac_check_fpu_control.m4, m4/ac_cxx_double_binary_format.m4, m4/ac_cxx_double_exact_output.m4, m4/ac_cxx_float_binary_format.m4, m4/ac_cxx_float_exact_output.m4, m4/ac_cxx_long_double_binary_format.m4, m4/ac_cxx_long_double_exact_output.m4: AC_RUN_IFELSE invocations now have a safe action for cross-compiling. 2009-02-22 Abramo Bagnara * .cvsignore => .gitignore, Watchdog/.cvsignore, Watchdog/.gitignore, Watchdog/doc/{.cvsignore => .gitignore}, Watchdog/m4/.cvsignore, Watchdog/m4/.gitignore, Watchdog/src/.cvsignore, Watchdog/src/.gitignore, Watchdog/tests/.cvsignore, Watchdog/tests/.gitignore, Watchdog/utils/.cvsignore, Watchdog/utils/.gitignore, debian/.cvsignore, debian/.gitignore, demos/.cvsignore, demos/.gitignore, demos/ppl_lcdd/.cvsignore, demos/ppl_lcdd/.gitignore, demos/ppl_lcdd/examples/.cvsignore, demos/ppl_lcdd/examples/.gitignore, demos/ppl_lpsol/{.cvsignore => .gitignore}, demos/ppl_lpsol/examples/.cvsignore, demos/ppl_lpsol/examples/.gitignore, devtools/{.cvsignore => .gitignore}, doc/{.cvsignore => .gitignore}, fedora/.cvsignore, fedora/.gitignore, interfaces/.cvsignore, interfaces/.gitignore, interfaces/C/{.cvsignore => .gitignore}, interfaces/C/tests/.cvsignore, interfaces/C/tests/.gitignore, interfaces/Java/.cvsignore, interfaces/Java/.gitignore, interfaces/Java/jni/.cvsignore, interfaces/Java/jni/.gitignore, interfaces/Java/parma_polyhedra_library/{.cvsignore => .gitignore}, interfaces/Java/tests/{.cvsignore => .gitignore}, interfaces/OCaml/{.cvsignore => .gitignore}, interfaces/OCaml/tests/.cvsignore, interfaces/OCaml/tests/.gitignore, interfaces/Prolog/{.cvsignore => .gitignore}, interfaces/Prolog/Ciao/{.cvsignore => .gitignore}, interfaces/Prolog/GNU/{.cvsignore => .gitignore}, interfaces/Prolog/SICStus/.cvsignore, interfaces/Prolog/SICStus/.gitignore, interfaces/Prolog/SWI/{.cvsignore => .gitignore}, interfaces/Prolog/XSB/{.cvsignore => .gitignore}, interfaces/Prolog/YAP/{.cvsignore => .gitignore}, interfaces/Prolog/tests/{.cvsignore => .gitignore}, m4/.cvsignore, m4/.gitignore, src/{.cvsignore => .gitignore}, tests/.cvsignore, tests/.gitignore, tests/Ask_Tell/.cvsignore, tests/Ask_Tell/.gitignore, tests/BD_Shape/{.cvsignore => .gitignore}, tests/Box/{.cvsignore => .gitignore}, tests/Grid/{.cvsignore => .gitignore}, tests/MIP_Problem/{.cvsignore => .gitignore}, tests/Octagonal_Shape/{.cvsignore => .gitignore}, tests/Partially_Reduced_Product/{.cvsignore => .gitignore}, tests/Polyhedron/{.cvsignore => .gitignore}, tests/Powerset/{.cvsignore => .gitignore}, utils/.cvsignore, utils/.gitignore: Replaced .cvsignore with .gitignore. 2009-02-21 Abramo Bagnara * interfaces/C/.cvsignore, interfaces/Java/jni/.cvsignore, interfaces/OCaml/.cvsignore, interfaces/OCaml/tests/.cvsignore, interfaces/Prolog/.cvsignore, interfaces/Prolog/SWI/.cvsignore, interfaces/Prolog/tests/.cvsignore, tests/Grid/.cvsignore, tests/Partially_Reduced_Product/.cvsignore, tests/Polyhedron/.cvsignore, tests/Powerset/.cvsignore: Added missing files. 2009-02-21 Abramo Bagnara * .cvsignore, doc/.cvsignore, interfaces/C/.cvsignore, interfaces/Java/jni/.cvsignore, interfaces/Java/parma_polyhedra_library/.cvsignore, interfaces/OCaml/.cvsignore, interfaces/Prolog/.cvsignore, interfaces/Prolog/tests/.cvsignore: Added other patterns. 2009-02-21 Abramo Bagnara * .cvsignore: Added common ignored patterns. 2009-02-21 Abramo Bagnara * .cvsignore, interfaces/Prolog/.cvsignore: Commented out dangerous entries. 2009-02-18 Roberto Bagnara * fedora/ppl-0.10-configure.patch, fedora/ppl.spec: Install the documentation according to the Fedora packaging conventions. 2009-02-18 Roberto Bagnara * fedora/ppl-0.10-bigendian.patch: Put under CVS control. 2009-02-18 Roberto Bagnara * fedora/ppl.spec: Implemented a better workaround for the bug affecting PPL 0.10 on big-endian architectures. There are no GNU Prolog packages available on s390 and s390: disable the GNU Prolog interface also on those platforms (besides ppc64). 2009-02-17 Roberto Bagnara * src/Makefile.am: Avoid using GNU Make extensions. 2009-02-17 Roberto Bagnara * src/MIP_Problem.cc: Two FIXMEs resolved. 2009-02-16 Roberto Bagnara * tests/MIP_Problem/Makefile.am, tests/Polyhedron/Makefile.am, tests/ppl_test.hh: Include "ppl_header.hh" instead of "ppl.hh": this greatly facilitates debugging of test programs. 2009-02-15 Roberto Bagnara * src/Makefile.am: In ppl_include_files.hh only list the include files that are not included by any other include file. 2009-02-15 Roberto Bagnara * src/Ask_Tell.defs.hh, src/DB_Row.templates.hh, src/GMP_Integer.inlines.hh, src/Interval_Restriction.defs.hh, src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, src/Powerset.defs.hh, src/Powerset.templates.hh, src/checked_float.inlines.hh, src/iterator_to_const.defs.hh: Added missing inclusions. 2009-02-15 Roberto Bagnara * src/fpu-ia32.inlines.hh, src/fpu.defs.hh: Include "compiler.hh" in fpu.defs.hh, not in fpu-ia32.inlines.hh. As a general rule, do not include general-purpose include files in files that are only conditionally included. 2009-02-15 Roberto Bagnara * configure.ac: Added missing control operator. 2009-02-15 Roberto Bagnara * src/compiler.hh: Indentation fixed. 2009-02-15 Roberto Bagnara * src/Partially_Reduced_Product.defs.hh: Include "Partially_Reduced_Product.templates.hh". 2009-02-15 Roberto Bagnara * configure.ac, demos/ppl_lcdd/Makefile.am, demos/ppl_lpsol/Makefile.am: Check for the availability of `fgrep' or its Posix replacement `grep -F'. Always use $(FGREP) or $(EGREP) in makefiles. 2009-02-15 Roberto Bagnara * src/checked.inlines.hh, src/checked_ext.inlines.hh, src/fpu-c99.inlines.hh, src/fpu-ia32.inlines.hh, src/fpu-none.inlines.hh, src/fpu-sparc.inlines.hh: Added guards against multiple inclusion. 2009-02-04 Roberto Bagnara * src/Float.defs.hh: Work around the bug affecting the library on big-endian architectures. 2009-02-03 Roberto Bagnara * fedora/ppl.spec: Work around the bug affecting PPL 0.10 on big-endian architectures. 2009-02-02 Patricia M. Hill * src/Grid_public.cc, tests/Grid/simplifyusingcontext1.cc: Improved the code for handling 0-dim empty polyhedra for Grid::simplify_using_context_assign(). Added a further test for the 0-dim polyhedra. 2009-02-02 Enea Zaffanella * src/Polyhedron_public.cc: Corrected a bug in methods add(_recycled)_generator(s) and simplify_using_context_assign whereby an assertion could have failed under very specific conditions (zero-dim empty polyhedron with a computed inconsistent constraint system becoming a zero-dim universe polyhedron). 2009-02-02 Enea Zaffanella * tests/Polyhedron/addgenerator1.cc, tests/Polyhedron/addgenerators1.cc: New tests show an assertion failure when adding the vector space origin to an empty zero-dim space polyhedron, thereby turning it into a zero-dim universe polyhedron. The assertion only fails if the inconsistent constraint system of the empty polyhedron was previously generated. 2009-02-02 Patricia M. Hill * tests/Polyhedron/simplifyusingcontext1.cc: Added three further tests to cover all 0-dim cases. Reordered tests so that all the 0-dim tests are consecutive (11-15). 2009-02-02 Patricia M. Hill * tests/Polyhedron/simplifyusingcontext1.cc: Added test that has an assertion failure for 0-dim empty polyhedra. 2009-02-01 Patricia M. Hill * tests/Grid/Makefile.am, tests/Grid/simplifyusingcontext1.cc: Tests for simplify_using_context_assign() for Grids. 2009-02-01 Patricia M. Hill * src/Grid_public.cc: Added code for simplify_using_context_assign() for Grids. Some other bugs in the comments fixed. 2009-01-30 Enea Zaffanella * interfaces/OCaml/Makefile.am: The parallel build problem should now be solved. 2009-01-28 Enea Zaffanella * tests/Box/Makefile.am, tests/Box/simplifyusingcontext1.cc: Added test file for method Box::simplify_using_cntext_assign(). Tests test01() and test02() marked as failing, since they depend on method Interval::empty_intersection_assign(), currently provided with a dummy implementation. 2009-01-28 Enea Zaffanella * src/Box.templates.hh: Drafted an implementation for Box::simplify_using_context_assign(). 2009-01-28 Enea Zaffanella * src/Interval.templates.hh: Added dummy implementation for method empty_intersection_assign(); corrected partial implementation of method simplify_using_context_assign(). 2009-01-28 Enea Zaffanella * src/Interval.defs.hh: Added specification for new Interval method template typename Enable_If::value, void>::type empty_intersection_assign(const From& y); to be used in the implementation of Box::simplify_using_context_assign. 2009-01-27 Roberto Bagnara * configure.ac: Partially work around a bug of AX_PREFIX_CONFIG_H whereby WORDS_BIGENDIAN is not prefixed. Version number bumped. 2009-01-27 Enea Zaffanella * src/Interval.templates.hh: Drafted a partial implementation for simplify_using_context_assign(); it assumes that the interval is toplogically closed and with no restrictions. 2009-01-27 Roberto Bagnara * TODO: Added one urgent item. 2009-01-26 Enea Zaffanella * tests/Polyhedron/simplifyusingcontext1.cc: Test 01 overflows when using 8bit coefficients and assertions are turned on. 2009-01-26 Enea Zaffanella * src/C_Polyhedron.cc, src/NNC_Polyhedron.cc: Switch to new implementation of poly_hull_assign_if_exact(), based on the results stated in BagnaraHZ09. 2009-01-26 Roberto Bagnara * configure.ac: Version number bumped. 2009-01-26 Roberto Bagnara * demos/ppl_lpsol/ppl_lpsol.c: Support more versions of GLPK. 2009-01-26 Roberto Bagnara * configure.ac: Fixed copy-and-paste mistake. 2009-01-26 Enea Zaffanella * tests/Polyhedron/polyhullifexact2.cc: Added tests corresponding to examples in BHZ09. 2009-01-26 Enea Zaffanella * tests/Polyhedron/polyhullifexact1.cc: Added a new test. 2009-01-26 Enea Zaffanella * src/Polyhedron_nonpublic.cc: Added implementation of the BHZ09 exact upper bound test for NNC polyhedra; Factored out those parts that are common to the C polyhedron case. 2009-01-26 Enea Zaffanella * src/Polyhedron.defs.hh: Added declarations for two non-public methods (one for the C and another for the NNC case) implementing exact upper bound tests using BHZ09. 2009-01-24 Roberto Bagnara * NEWS: Wording improved. 2009-01-24 Roberto Bagnara * NEWS, README.configure, configure.ac, interfaces/C/Makefile.am, interfaces/Java/jni/Makefile.am, interfaces/Java/parma_polyhedra_library/Makefile.am, interfaces/Java/tests/Makefile.am, interfaces/OCaml/Makefile.am, interfaces/OCaml/tests/Makefile.am, interfaces/Prolog/Ciao/Makefile.am, interfaces/Prolog/GNU/Makefile.am, interfaces/Prolog/Makefile.am, interfaces/Prolog/SICStus/Makefile.am, interfaces/Prolog/SWI/Makefile.am, interfaces/Prolog/XSB/Makefile.am, interfaces/Prolog/YAP/Makefile.am, interfaces/Prolog/tests/Makefile.am, m4/m4.m4: The configuration script now explicitly checks that a recent enough version of GNU M4 is available if at least one non-C++ interface is enabled (in previous versions this check was not performed and building the library could fail in a mysterious way). That version is then used in all makefiles. (Thanks to Tobias Grosser.) Improved configure.ac in various places. 2009-01-23 Roberto Bagnara * NEWS, README.configure, configure.ac, interfaces/OCaml/Makefile.am, interfaces/OCaml/tests/Makefile.am: New configuration option `--with-mlgmp=DIR' allows to specify the installation directory of the ML GMP package. 2009-01-23 Roberto Bagnara * demos/ppl_lpsol/ppl_lpsol.c: Added missing const qualifier. 2009-01-21 Enea Zaffanella * interfaces/OCaml/Makefile.am: Corrected so as to behave correctly when using parallel builds: the build of .cmx also generates .o, which is a dependency for the generation of *.a. 2009-01-20 Roberto Bagnara * demos/ppl_lpsol/ppl_lpsol.c: Fixed glpk_message_interceptor() (thanks to Kenneth MacKenzie). 2009-01-20 Enea Zaffanella * tests/Octagonal_Shape/upperboundifexact1.cc: Added test on (higher dimensional) hypercubes. 2009-01-20 Enea Zaffanella * src/Octagonal_Shape.templates.hh: The code fo rthe detection of non-redundant octagonal constraints factored out of the strong reduction assign method into the new private method non_redundant_matrix_entries(), so that it can be reused in other contexts. In particular, now we also use it in the implementation of upper_bound_assign_if_exact(). 2009-01-20 Enea Zaffanella * src/Octagonal_Shape.defs.hh: Declared a new (private) method that is meant to identify the non-redundant octagonal constraints without actually computing a strongly reduced matrix. 2009-01-20 Enea Zaffanella * tests/BD_Shape/upperboundifexact1.cc: Added a test on hypercubes. 2009-01-20 Enea Zaffanella * src/BD_Shape.templates.hh: Method BHZ09_upper_bound_assign_if_exact() improved by exploiting shortest path reduction so as to avoid checks on redundant constraints. 2009-01-19 Enea Zaffanella * tests/BD_Shape/upperboundifexact1.cc: Added another test. 2009-01-18 Roberto Bagnara * TODO: Added one important item for next release. 2009-01-18 Enea Zaffanella * tests/Octagonal_Shape/upperboundifexact1.cc: Tests 1, 3, 4, 9 and 10 now succeeds. 2009-01-18 Enea Zaffanella * src/Octagonal_Shape.defs.hh, src/Octagonal_Shape.inlines.hh, src/Octagonal_Shape.templates.hh: Drafted an implementation of Octagonal_Shape::upper_bound_assign_if_exact() based on the corresponding theorem in BagnaraHZ09. 2009-01-16 Patricia M. Hill * tests/Octagonal_Shape/upperboundifexact1.cc: test10() revised. 2009-01-16 Patricia M. Hill * tests/Octagonal_Shape/Makefile.am, tests/Octagonal_Shape/upperboundifexact1.cc: Added a test file for the upper_bound_if_exact() method - copied (with obvious edits) from the BD_Shape test directory. As the current implementation just returns false, tests that would be expected to succeed have the "_F" tag. An additional test10 is an example showing that more conditions are needed for octagonal shapes compared to the bd shapes. 2009-01-13 Enea Zaffanella * tests/BD_Shape/upperboundifexact1.cc: Test test09 no longer fails. 2009-01-13 Enea Zaffanella * src/BD_Shape.templates.hh: Corrected implementation of BHZ09_upper_bound_assign_if_exact(). 2009-01-12 Patricia M. Hill * tests/BD_Shape/upperboundifexact1.cc: Added a test showing a bug in the new algorithm. 2009-01-08 Enea Zaffanella * src/BD_Shape.defs.hh, src/BD_Shape.inlines.hh, src/BD_Shape.templates.hh: Drafted an implementation for BHZ09_upper_bound_assign_if_exact(); the public method upper_bound_assign_if_exact() is now based on this new (private) method. 2009-01-05 Patricia M. Hill * src/Partially_Reduced_Product.defs.hh, src/Partially_Reduced_Product.inlines.hh, src/Partially_Reduced_Product.templates.hh, src/Partially_Reduced_Product.types.hh, tests/Partially_Reduced_Product/Makefile.am, tests/Partially_Reduced_Product/directproduct6.cc, tests/Partially_Reduced_Product/partiallyreducedproduct2.cc, tests/Partially_Reduced_Product/partiallyreducedproduct3.cc, tests/Partially_Reduced_Product/shrinkusingcongruences1.cc: Added a reduction method Shrink_Using_Congruences_Reduction<> and the product Shrink_Using_Congruences_Product<> that assumes this reduction. Several "FIXME"s dealt with.