[PPL-devel] ppl/src ConSys.cc GenSys.cc Makefile.am Matrix ...

Roberto Bagnara roberto at spartacus.cs.unipr.it
Sun Nov 4 09:38:35 CET 2001


CVSROOT:	/cvs/ppl
Module name:	ppl
Changes by:	roberto at 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&r1=1.17&r2=1.18
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/GenSys.cc.diff?cvsroot=ppl&r1=1.18&r2=1.19
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Makefile.am.diff?cvsroot=ppl&r1=1.15&r2=1.16
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Matrix.cc.diff?cvsroot=ppl&r1=1.9&r2=1.10
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Matrix.defs.hh.diff?cvsroot=ppl&r1=1.7&r2=1.8
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Matrix.inlines.hh.diff?cvsroot=ppl&r1=1.5&r2=1.6
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Polyhedron.cc.diff?cvsroot=ppl&r1=1.75&r2=1.76
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Row.cc.diff?cvsroot=ppl&r1=1.10&r2=1.11
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Row.defs.hh.diff?cvsroot=ppl&r1=1.9&r2=1.10
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/Row.inlines.hh.diff?cvsroot=ppl&r1=1.6&r2=1.7
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/SatRow.inlines.hh.diff?cvsroot=ppl&r1=1.5&r2=1.6
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/conversion.cc.diff?cvsroot=ppl&r1=1.8&r2=1.9
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/globals.hh.diff?cvsroot=ppl&r1=1.1.1.1&r2=1.2
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/minimize.cc.diff?cvsroot=ppl&r1=1.5&r2=1.6
http://www.cs.unipr.it/cgi-bin/cvsweb.cgi/ppl/src/globals.cc.diff?cvsroot=ppl&r1=1.1.1.1&r2=NONE




More information about the PPL-devel mailing list