1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* Makefile.am (noinst_HEADERS): we'd better submit the
 	header-files too :-)
	* Makefile.in: regen

1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>, Islene Calciolari Garcia  <islene@dcc.unicamp.br>

	* article.tex: final review for submission

1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* article.tex (Abstract, Introduction, Definitions, Method,
	Cycles): reviewed
	(Framework, Performance, Conclusion): completed

	* testme: removed tests that would not fit in memory or that would 
	run ``forever''
	* charts.in: new file, output of testme
	* genchart: use the new test float instead of table; ensure that
 	all pictures have the same size; add library-name and crash tags.
	* charts.tex: produced from charts.in by genchart

	* configure.in (DVIPS): find it
	* Makefile.am (noinst_DATA): build article.dvi and .ps
	(CLEANFILES): remove all latex temporary files
	(DISTCLEANFILES): remove noinst_DATA
	* configure, Makefile.in: regen

1998-11-29  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* configure.in: look for latex and bibtex
	* configure: regen

	* testme: New file, run performance tests
	* genchart: New file, generate performance charts
	* charts.tex: New file, generated by genchart
	* Makefile.am (EXTRA_DIST): added testme, genchart and charts.tex
	* Makefile.in: regen

1998-11-29  Islene Calciolari Garcia  <islene@dcc.unicamp.br>

	* bf.cc, bfp.cc, pape.cc, twoq.cc, gor.cc, gor1.cc: a header
	describes each algorithm in the source code.
	
	* article.tex: sections 1--4 modified.
	
1998-11-29  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* gor.cc, gor1.cc: need not clear visit mark when pushing

	* in2bin.cc: declare node_count as int, so that vector constructor 
	properly matches it

	* graph.h: force arc count in 8Kb chunk to be unsigned; sizeof is
	unsigned long on some platforms

	* in2bin.cc (search_cycles): tick counter at most once per arc

1998-11-28  Islene Calciolari Garcia  <islene@dcc.unicamp.br>

	* article.tex, article.bib: new files
	* Makefile.am (EXTRA_DIST): added article.tex and article.bib
	* Makefile.in: regen
	
	* bfpu.cc: new variant of parent-checking
	* Makefile.am: add bfpu
	* Makefile.in: regen

1998-11-28  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* in2bin_node.h (in2bin_container): new class to encapsulate the
 	delayed queue implementation.  It uses direct stack/deque by
 	default, and contains work-arounds for a bug on template
 	instantiations in egcs 1.1.  The bug does not affect direct stacks
 	based on vector or list, or indirect stacks of any type, allocated
 	on-demand or not, but these are slower :-(

	* configure.in: add -ftemplate-depth-20 to CXXFLAGS, needed to
	build in2bin
	* configure: regen

1998-11-28  Islene Calciolari Garcia  <islene@dcc.unicamp.br>

	* node.h: parent_arc returns an arc_t.

1998-11-28  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* in2bin_node.h: new node type, that does not maintain states,
 	useless for in2bin, and adds delayed node queues
	* in2bin.cc (search_cycles): delay the processing of forward-arcs
 	to the point in which their head nodes are to be scanned

1998-11-27  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* visit_node.h: new file; visit_node is a base class for other
	node types, that introduces the visiting abilities needed by
	Topological Sort algorithms
	* ts1node.h: new file; simplified from tsnode.h, because we don't
	need unreached_labeled for gor1.
	* gor1.cc: use ts1node instead of tsnode.

	* spalgo.h, bf.cc, bfp.cc, pape.cc, twoq.cc, gor.cc, gor1.cc,
	in2bin.cc, tsnode.h: added javadoc-like comments
	* timing.h: javadoc-unlike comments
	
	* spalgo.h (shortest_path): moved to shortest_path_algorithm::run()
	(shortest_path_algorithm): take algorithm_T as template argument,
	so that run() can invoke methods from derived classes without
	virtual dispatching
	(~shortest_path_algorithm): removed virtual destructor, class is
	no longer explicitly abstract, but it doesn't make sense to
	instantiate it directly, since select() is missing

	* distance.h: new header-file, to provide means for defining
	a default large value for a distance type.  It helps saving time
	when comparing with uninitialized distances.
	* node.h: initialize distance with this large value.

	* arc.h, adjlist.h, node.h, basic_node.h, graph.h, main.h:
	added javadoc-like comments

1998-11-27  Islene Calciolari Garcia  <islene@dcc.unicamp.br>, Alexandre Oliva <oliva@dcc.unicamp.br>

	* in2bin.cc (search_cycles): new O(n^2 m) algorithm for
	removing negative cycles

1998-11-23  Islene Calciolari Garcia  <islene@dcc.unicamp.br>

	* gor.cc: Implementation compatible with Goldberg's.

	* bf.cc, bfp.cc, pape.cc, twoq.cc, gor.cc, gor1.cc: test_relabel
	now takes an arc; include basic_node.h
	* in2bin.cc: include basic_node.h

	* spalgo.h (constructor): call set_source
	(test_relabel): take an arc

1998-11-23  Islene Calciolari Garcia  <islene@dcc.unicamp.br>, Alexandre Oliva <oliva@dcc.unicamp.br>

	* node.h: moved basic_node into basic_node.h;
	(status_t) now template argument
	(parent) now save parent_arc
	(reached) renamed to is_reached
	(is_reached, is_labeled, mark_labeled): use new status
	(force_label): removed
	(set_source, mark_label): new methods
	* basic_node.h: New file
	* tsnode.h: created tsnode_state_type
	(force_label, force_labeled): removed
	(test_relabel): no longer specialized
	(mark_labeled): specialize
	
1998-11-23  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* graph.h: support JUST_READ

1998-11-18  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* configure.in: try getrusage between gethrvtime and times
	* timing.h: ditto
	* configure, config.h.in, stamp-h.in: regen

1998-11-12  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* in2bin.cc: attempt to remove cycles with Ford-Fulkerson; it's
	still too slow :-(

	* graph.h: move header_t and arc_data_t out of operator>>, so that 
	newer egcs snapshots, with stricter C++ checking, can compile it

	* main.h, timing.h: moved timing functions into timing.h

	* arc.h, bf.cc, bfp.cc, gor.cc, gor1.cc, graph.h, pape.cc,
	spalgo.h, twoq.cc: rename `tail' and `head' to `from' and `to'

1998-11-10  Alexandre Oliva  <oliva@dcc.unicamp.br>

	* arc.h: added set_length
	* node.h: added set_distance
	* in2bin.cc: integrated bin2in and added support for removing
	negative cycles
	* README: ditto
	* bin2in.cc: removed
	* Makefile.am: ditto
	* Makefile.in: regen

	* configure.in: create config.h
	* Makefile.in, aclocal.m4, configure: regen
	* acconfig.h, config.h.in, stamp-h.in: new files
	* main.h: #include config.h

	* graph.h (main): optimize binary read by reading larger blocks

	* spalgo.h (summarize): added missing endls

	* graph.h (prealloc_arcs): fix typo that caused out of memory
	
	* graph.h: test if source node was not specified

	* main.h (main): call summarize from shortest_path_algorithm
	* spalgo.h (summarize): new method, with code moved from main.h
	(scanned): needs not be virtual, since the general algorithm is
	templatized

	* graph.h (title): do not simply discard it
	* in2bin.cc (main): preserve title
	* bin2in.cc (main): ditto

	* configure.in: enable -O9 by default

	* AUTHORS, NEWS, README, COPYING, INSTALL, ChangeLog: new files

