ChangeLog 8.12 KB
Newer Older
1
2
3
4
5
6
7
2003-07-10  Alexandre Duret-Lutz  <aduret@src.lip6.fr>

	Spot wants `^', not `xor'.
	* src/SpotWrapper.hh (SpotWrapper::SPOT_XOR): Declare.
	* src/SpotWrapper.cc (SpotWrapper::SPOT_XOR): Define.
	(SpotWrapper::translateFormula): Use SPOT_XOR.
	
8
9
2003-07-09  Alexandre Duret-Lutz  <aduret@src.lip6.fr>

10
11
12
13
14
	I want $? = 1 whenever some test fails.
	* src/main.cc (testLoop): Return 1 iff an error occured.
	(main): Use testLoop's output as exit status.

	* src/ExternalTranslator.h (class ExternalTranslator):
15
16
17
18
19
20
21
	Declare class SpotWrapper as a friend.
	* src/SpotWrapper.h, src/SpotWrapper.cc: New files.
	* src/Makefile.am (lbtt_translate_SOURCES): Add SpotWrapper.cc
	and SpotWrapper.h.
	* src/translate.cc (main): Add the --spot option, and build
	a SpotWrapper of required.

22
23
24
25
26
27
2003-07-04  Alexandre Duret-Lutz  <aduret@src.lip6.fr>

	* src/Config-parse.yy: Remove stray `,' in %token arguments.
	* src/Alloc.h (__INT_TO_PTR): Redefine to work around glibc 2.3.
	* doc/texinfo.tex: New upstream version.

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
28
29
30
31
32
33
34
35
2002-10-01  Heikki Tauriainen  <heikki.tauriainen@hut.fi>

	* Version 1.0.1 released.

2002-01 -- 2002-09-25  Heikki Tauriainen  <heikki.tauriainen@hut.fi>

	* Alloc.h: Use preprocessor macro HAVE_SINGLE_CLIENT_ALLOC
	instead of HAVE_SGI_STL in #ifdef conditionals.
36

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
37
38
39
	* BitArray.cc (BitArray::BitArray): Do not clear the allocated
	array after initialization. All callers updated to reflect the
	changed constructor semantics.
40

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
41
42
43
44
45
	* BitArray.cc (BitArray::bitwiseAnd, BitArray::bitwiseOr)
	(BitArray::bitwiseXor): New functions.

	* BitArray.cc (BitArray::equal, BitArray::subset)
	(BitArray::count): Fix `&' operator precedence in comparisons.
46

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
47
48
49
	* BitArray.cc (BitArray::hammingDistance): Use the `bit_counts'
	array to compute the result instead of scanning the array bit by
	bit.
50

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
	* BitArray.cc: Documentation fixes.

	* BitArray.h (BitArray::bitwiseAnd, BitArray::bitwiseOr)
	(BitArray::bitwiseXor): New functions.

	* BitArray.h: Documentation fixes.

	* Bitset.h (Bitset::Bitset(const BitArray&, const unsigned long))
	(Bitset::Bitset(const Bitset&)): Use `memcpy' instead of
	`BitArray::copy'.

	* Bitset.h (Bitset::operator=(const Bitset&)): Reallocate memory
	only if necessary.

	* Bitset.h: Documentation fixes.

	* BuchiAutomaton.cc (BuchiAutomaton::regularize): Changed
	semantics: instead of modifying the object itself, the function
	now returns a pointer to a newly allocated BuchiAutomaton (the
	regularized automaton).

	* BuchiAutomaton.cc: Documentation fixes.

74
	* BuchiAutomaton.h (BuchiAutomaton::regularize): Changed
Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
	semantics (see above).

	* BuchiAutomaton.h
	(BuchiAutomaton::BuchiTransition::enabled(const BitArray&,
	const unsigned int)): New function.
	(BuchiAutomaton::BuchiTransition::enabled(const Bitset&)):
	Use the above function internally.

	* BuchiAutomaton.h
	(BuchiAutomaton::BuchiState::print(ostream&, const int, const
	GraphOutputFormat)): New function.

	* BuchiAutomaton.h (BuchiAutomaton::BuchiTransition::operator<)
	(BuchiAutomaton::BuchiTransition::operator==): Fix function
	prototypes to match those of the base class. Make functions
	private to prevent external comparison of plain Graph::Edges
	with BuchiAutomaton::BuchiTransitions.

	* Configuration.cc (Configuration::read): Use autoconf-generated
	PACKAGE_VERSION macro for displaying program version instead of
	including version.h.

	* configure.in: Renamed to configure.ac. Updated to Autoconf
	2.53 and Automake 1.6. Improved checking for the presence of
	the slist STL extension. Revised checking for the availability of
	the GNU readline library and the libraries to include.
	Replace the old preprocessor macro HAVE_SGI_STL with new macros
	HAVE_SINGLE_CLIENT_ALLOC and HAVE_SLIST. Introduce new
	preprocessor macro SLIST_NAMESPACE.

	* EdgeContainer.h: Remove uses of redundant preprocessor macros.
106

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
107
108
109
110
111
112
	* Graph.h: Renamed to Graph.h.in to implement the optional
	inclusion of the slist header using an autoconf substitution
	variable.

	* Graph.h.in: Use HAVE_SLIST macro instead of HAVE_SGI_STL in
	#ifdef conditionals.
113

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
	* Graph.h.in (Graph::Edge, Graph::Node): Make classes public (to
	prevent warnings from Intel C++ Compiler).

	* Graph.h.in (Graph::operator[], Graph::node, Graph::size)
	(Graph::expand, Graph::stats, Graph::subGraphStats)
	(Graph::Edge::targetNode, Graph::Node::operator=)
	(operator<<(ostream&, const Graph<GraphEdgeContainer>::Edge&)
	(operator<<(ostream&, const Graph<GraphEdgeContainer>::Node&):
	Added explicit `typename' specifiers to parameter and/or return
	types (to prevent warnings from gcc 3.1).

	* Graph.h.in (Graph::subGraphStats): Make `s' a const variable.

	* Graph.h.in (Graph::Edge::ptr_equal::ptr_equal): Change
	definition to match that of `Graph::Edge::ptr_less'. All callers
	modified accordingly.

	* Graph.h.in (Graph::Edge::operator<, Graph::Edge::operator==):
	Make member functions protected.
	Make class Graph::Edge a friend of Graph::Edge::ptr_equal and
	Graph::Edge::ptr_less.

	* LtlFormula.cc (LtlFormula): New static variable
	`eval_proposition_id_limit' stores the maximum proposition
	id during the evaluation of a strictly propositional formula.

	* LtlFormula.cc (LtlFormula::sat_eval): Make `max_atom' a const
	variable.
	Access the identifier of a proposition through Atom::getId.

	* LtlFormula.h
	(LtlFormula::evaluate(const BitArray&, const unsigned long int)):
	New function.
	(LtlFormula::evaluate(const Bitset&)): Use the above function
	internally.

	* LtlFormula.h (ptr_less): Make class public.

	* LtlFormula.h (LtlFormula::eval): Use a BitArray instead of a
	Bitset internally.

	* LtlFormula.h (Atom::eval, Constant::eval, LtlNegation::eval)
	(UnaryFormula::eval, LtlNext::eval, LtlFinally::eval)
	(LtlGlobally::eval, BinaryFormula::eval, LtlDisjunction::eval)
	(LtlConjunction::eval, LtlImplication::eval, LtlEquivalence::eval)
	(LtlXor::eval, LtlUntil::eval, LtlV::eval, LtlWeakUntil::eval)
	(LtlStrongRelease::eval, LtlBefore::eval): Use BitArray instead
	of a Bitset for evaluation. Make subformula parameters (if any)
	`const'.

	* main.cc (testLoop): Use autoconf-generated PACKAGE_VERSION
	macro for displaying program version instead of including
	version.h.

	* src/Makefile.am: Remove redundant references to @LEXLIB@ (the
	sources are independent of any external lexer library).
170

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
171
172
173
174
175
176
177
178
179
180
181
182
	* NeverClaimAutomaton.cc (NeverClaimAutomaton::write): Add
	detection for jumps to undefined never claim labels.

	* NeverClaim-parse.yy (yyerror): Fix computation of the position
	of a parse error.

	* PathEvaluator.cc (PathEvaluator::eval) Avoid creating a
	temporary Bitset object during evaluation of atomic propositions.

	* ProductAutomaton.cc (ProductAutomaton::computeProduct):
	Avoid creating a temporary Bitset object when checking the
	enabledness of a product transition.
183

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
	* ProductAutomaton.cc (ProductAutomaton::findAcceptingExecution)
	Use BitArrays instead of Bitsets.

	* ProductAutomaton.h (ProductAutomaton::operator[])
	(ProductAutomaton::node): Make state id parameter `const'.

	* ProductAutomaton.h (ProductAutomaton::ProductState::print):
	Change function prototype to match that of the base class.

	* SccIterator.h: Add `typename' specifiers to prevent warnings
	from gcc 3.1.

	* SpinWrapper.cc (SpinWrapper::SpinAutomaton::parseAutomaton):
	Remove redundant `try' block.

	* StateSpace.cc (StateSpace::State::print): Fix typo when
	displaying empty sets of propositions in dot format (the open
	brace was previously missing).

	* StateSpace.h
	(StateSpace::print(ostream&, const int, const GraphOutputFormat):
	New function.

	* TestOperations.cc (performEmptinessCheck): Added a colon to
	the end of the "Accepting cycles" message.
209

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
210
211
212
213
	* TestRoundInfo.h: Removed redundant inclusion of BitArray.h.

	* translate.cc (main): Use autoconf-generated PACKAGE_VERSION
	macro for displaying program version.
214

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
215
216
217
218
219
220
221
222
223
224
	* translate.cc (main): Fix bug in checking the number of
	command line arguments.

	* UserCommands.cc (printCrossComparisonAnalysisResults): Fix
	bug in the construction of the witness path in which the formula
	should be evaluated when the witness path is extracted directly
	from the original state space (i.e., when analyzing results
	against the internal model checking algorithm).

	* version.h.in: Removed.
225

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
226
227
228
2001-11-12  Heikki Tauriainen  <heikki.tauriainen@hut.fi>

	* Version 1.0.0 released.