ppl/src ConSys.cc GenSys.cc Makefile.am Matrix ...

CVSROOT: /cvs/ppl Module name: ppl Changes by: roberto@cs.unipr.it 2001-11-04 09:38:35
Modified files: src : ConSys.cc GenSys.cc Makefile.am Matrix.cc Matrix.defs.hh Matrix.inlines.hh Polyhedron.cc Row.cc Row.defs.hh Row.inlines.hh SatRow.inlines.hh conversion.cc globals.hh minimize.cc Removed files: src : globals.cc
Log message: OK() methods changed to allow for ConSys and GenSys with a single column. Temporary Integer's now incapsulated into a function: the source globals.cc is no longer necessary. The funcionality of Matrix::compute_row_capacity() is now provided by Row::compute_capacity(). Tracking of capacity improved (there are still several problems though). Matrix::sort_rows() rewritten: the STL algorithms keep the freedom of making copies of rows and we cannot accept that. Temporaty kludges added to the Matrix::add_row() methods: if the rows vector must grow, the implementation will copy the rows changing their capacity. A proper solution to this problem must be found. OK() safety checks added tp Polyhedron::remove_dimensions() and Polyhedron::remove_higher_dimensions(). Polyhedron::remove_dimensions() and Polyhedron::remove_higher_dimensions() where not clearing the "generators are minimized" flag. With this change the flag is cleared a bit too often. A proper solution must be found. Polyhedron::remove_dimensions() and Polyhedron::remove_higher_dimensions() now use Matrix::resize_no_copy() instead of Matrix::resize() in order to shrink matrices. Row::OK() added and used. When compiling with assertions each rows brings its own capacity in the capacity_ flag. The consistency of this information is checked by Row::OK() which, in turn, is called by Matrix::OK() for each row of the matrix. For internal use, the capacity_ field can be accessed by `size_t Row::capacity() const'. `void Row::assign(Row& y)' added to assign the implementation of y to *this. `std::iter_swap()' specialized both for vector<Row> and vector<SatRow>.
Patches: http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/ConSys.cc.diff?cvsroot=ppl... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/GenSys.cc.diff?cvsroot=ppl... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Makefile.am.diff?cvsroot=p... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Matrix.cc.diff?cvsroot=ppl... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Matrix.defs.hh.diff?cvsroo... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Matrix.inlines.hh.diff?cvs... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Polyhedron.cc.diff?cvsroot... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Row.cc.diff?cvsroot=ppl&am... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Row.defs.hh.diff?cvsroot=p... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Row.inlines.hh.diff?cvsroo... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/SatRow.inlines.hh.diff?cvs... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/conversion.cc.diff?cvsroot... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/globals.hh.diff?cvsroot=pp... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/minimize.cc.diff?cvsroot=p... http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/globals.cc.diff?cvsroot=pp...
participants (1)
-
Roberto Bagnara