• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

BD_Shape/H11-Feb-2016-22,64115,470

Box/H11-Feb-2016-21,47214,640

CO_Tree/H11-Feb-2016-3,6843,288

Concrete_Expression/H11-Feb-2016-5,8204,206

Grid/H11-Feb-2016-33,68722,185

MIP_Problem/H11-Feb-2016-5,0744,291

Octagonal_Shape/H11-Feb-2016-26,79718,306

PIP_Problem/H11-Feb-2016-3,5242,741

Partially_Reduced_Product/H11-Feb-2016-9,8926,685

Polyhedron/H11-Feb-2016-40,28128,257

Powerset/H11-Feb-2016-9,8436,593

Watchdog/H11-Feb-2016-1,2521,029

Makefile.amH A D11-Feb-20161.6 KiB6030

Makefile.inH A D11-Feb-201627.8 KiB864747

READMEH A D11-Feb-20164.1 KiB11882

Random_Number_Generator_defs.hhH A D11-Feb-20161.5 KiB4816

Random_Number_Generator_inlines.hhH A D11-Feb-20162.8 KiB9357

Random_Number_Generator_types.hhH A D11-Feb-2016752 236

files.ccH A D11-Feb-20161.5 KiB5225

files.hhH A D11-Feb-20161.2 KiB379

ppl_test.ccH A D11-Feb-201612.8 KiB488423

ppl_test.hhH A D11-Feb-201637.2 KiB1,160926

valgrind_suppressionsH A D11-Feb-2016153 1918

README

1Copyright (C) 2001-2010 Roberto Bagnara <bagnara@cs.unipr.it>
2Copyright (C) 2010-2016 BUGSENG srl (http://bugseng.com)
3See below for the copying conditions.
4
5How To Use the Test Programs (If You Really Want To Use Them)
6=============================================================
7
8The programs in this directory are part of the extensive test suite of
9the Parma Polyhedra Library (PPL).  They have various origins:
10
111) some have been written to test the expressivity of the library;
122) some have been written to reproduce bugs that have now been fixed;
133) some have been written in order to increase the proportion of the
14   library's code exercised by test suite.
15
16Regardless of their origin, they are only used for the regression
17testing of the library.  For this reason, we do not pay much attention
18to them; we simply keep adding new tests to the test suite and, once
19in, they stay there forever.  Despite any defects, they serve this
20purpose well.
21
22On the other hand, in order to get an idea of how to use the PPL,
23several new users have found it convenient to take one of these test
24programs, change it a bit, and then try to compile it.  If you want to
25do something similar, here is some advice that may help you get
26something working and completely self-contained in a matter of
27minutes:
28
29a) Replace the line
30
31     #include "ppl_test.hh"
32
33   with
34
35     #include <ppl.hh>
36
37b) Erase the line reading
38
39     set_handlers();
40
41c) Either remove the `TRY' and `CATCH' macro invocations from the program
42   or substitute `TRY' with `try' and `CATCH' with something like
43
44     catch (const std::exception& e) {
45       cerr << "std::exception caught: "
46            << e.what() << " (type == " << typeid(e).name() << ")"
47            << endl;
48       exit(1);
49     }
50     catch (...) {
51       cerr << "unknown exception caught"
52            << endl;
53       exit(1);
54     }
55
56d) If you want to print something make sure the expansion of the `NOISY'
57   macro evaluates to true; add the line
58
59     using namespace Parma_Polyhedra_Library::IO_Operators;
60
61   just after the other two using directives of the program; and then
62   use the PPL output facilities directly.  For instance, the effect of a
63   line like
64
65     print_constraints(ph, "*** ph ***");
66
67   can be obtained, more or less, by replacing it with
68
69     cout << "*** ph ***" << endl << ph.constraints() << endl;
70
71   Similarly, a line of the form
72
73     print_generators(ph, "*** ph ***");
74
75   can be replaced by
76
77     cout << "*** ph ***" << endl << ph.generators() << endl;
78
79e) Compile the program with a command like
80
81     g++ mytest.cc -o mytest -lppl -lgmpxx -lgmp
82
83f) Run `mytest' and enjoy!
84
85
86--------
87
88Copyright (C) 2001-2010 Roberto Bagnara <bagnara@cs.unipr.it>
89Copyright (C) 2010-2016 BUGSENG srl (http://bugseng.com)
90
91This document describes the Parma Polyhedra Library (PPL).
92
93Permission is granted to copy, distribute and/or modify this document
94under the terms of the GNU Free Documentation License, Version 1.2
95or any later version published by the Free Software Foundation;
96with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
97The license is included, in various formats, in the `doc' subdirectory
98of each distribution of the PPL in files named `fdl.*'.
99
100The PPL is free software; you can redistribute it and/or modify it
101under the terms of the GNU General Public License as published by the
102Free Software Foundation; either version 3 of the License, or (at your
103option) any later version.  The license is included, in various
104formats, in the `doc' subdirectory of each distribution of the PPL in
105files named `gpl.*'.
106
107The PPL is distributed in the hope that it will be useful, but WITHOUT
108ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
109FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
110for more details.
111
112If you have not received a copy of one or both the above mentioned
113licenses along with the PPL, write to the Free Software Foundation,
114Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1307, USA.
115
116For the most up-to-date information see the Parma Polyhedra Library
117site: http://bugseng.com/products/ppl/ .
118