ChangeLog 272 KB
Newer Older
1
2
3
4
5
6
7
2009-11-10  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Typo from a previous patch.

	* src/tgbaalgos/ltl2tgba_fm.cc (ltl_to_tgba_fm): Fix a typo
	introduced three patches ago in the handling of unobserved events.

8
9
10
11
12
13
14
15
16
17
18
19
20
2009-11-10  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Do not comment states in the never claim by default.  It takes too
	much time when the formula is large, and it is useless when the
	purpose is model-checking with Spin.

	* src/tgbaalgos/neverclaim.hh (never_claim_reachable): Add the
	comments option.
	* src/tgbaalgos/neverclaim.cc (never_claim_bfs,
	never_claim_reachable): Honor the comment option.
	* src/tgba/tests/ltl2tgba.cc (-N): Do not comment states.
	(-NN) New option to output a commented never claim.

21
22
23
24
25
26
27
2009-11-10  Damien Lefortier <dam@lrde.epita.fr>

	* src/tgba/taa.cc, src/tgba/taa.hh: Fix it.
	* src/tgbaalgos/ltl2taa.cc: Do NOT use the same bdd_dict for both
	the translation and the language containment checker.
	* src/tgbatest/spotlbtt.test: Update TAA related tests.

28
29
30
31
32
33
34
35
36
37
38
39
2009-11-10  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Use tgba_explicit_formula instead of tgba_explicit_string in FM.

	This gives a nice speedup (>1.4) in the ltlcounter benchmark,
	because we no longer have to generate a copy the string
	representations of the LTL formulae.

	* src/tgbaalgos/ltl2tgba_fm.cc: Adjust.  Also get rid of the
	formulae_seen map, since we can now ask the tgba_explicit_formula
	if it knows the state.

40
41
42
43
44
45
46
2009-11-10  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Ease debugging of LTL formulae leaks.

	* src/tgbatest/ltl2tgba.cc: Dump all LTLinstances with their
	reference count.

47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
2009-11-10  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Introduce tgba_explicit_labelled<label> so that we can build
	tgba_explicit instances labelled by other objects than strings.

	* src/tgba/tgbaexplicit.cc, src/tgba/tgbaexplicit.hh:
	Split tgba_explicit in two levels: tgba_explicit with unlabelled
	states, and tgba_explicit_labelled templated by the type of
	the label.  Define tgba_explicit_string (with the interface
	of the former tgba_explicit class) and tgba_explicit_formula
	for future use in ltl2tgba.cc.
	* src/tgba/tgbareduc.cc, src/tgba/tgbareduc.hh,
	src/tgbaalgos/cutscc.cc, src/tgbaalgos/dupexp.cc,
	src/tgbaalgos/emptiness.cc, src/tgbaalgos/ltl2tgba_fm.cc,
	src/tgbaalgos/powerset.cc, src/tgbaalgos/randomgraph.cc,
	src/tgbaparse/public.hh, src/tgbaparse/tgbaparse.yy,
	src/tgbatest/explicit.cc, src/tgbatest/ltl2tgba.cc: Adjust to
	use tgba_explicit_string when appropriate.

66
67
68
69
70
71
2009-11-09  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Do not use the Boost macro from the Autoconf macro archive.

	* m4/boost.m4: Rewrite like I already did in Vaucanson.

72
73
74
75
76
2009-11-09  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbatest/ltlcounter.test (run): Do not run with n=12, as
	the test case might become too slow for the autobuilder.

77
78
79
80
81
82
83
84
85
86
87
2009-11-06  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Add a benchmark using Kristin Y. Rozier's LTLcounter scripts.

	* bench/ltlcounter/README, bench/ltlcounter/run,
	bench/ltlcounter/plot.gnu, bench/ltlcounter/defs.in,
	bench/ltlcounter/Makefile.am: New files.
	* bench/Makefile.am (SUBDIRS): Add ltlcounter.
	* configure.ac (AC_CONFIG_FILES): Adjust.
	* THANKS: Add her.

88
89
90
91
92
93
2009-11-06  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Use a timer to clock the different phases of the translation.

	* src/tgbatest/ltl2tgba.cc: Add option -T.

94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
2009-11-08  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Deprecate ltl::destroy(f) in favor of f->destroy()

	* src/ltlast/formula.cc, src/ltlast/formula.hh (formula::clone):
	Transform this static function into a member function.
	* src/ltlvisit/destroy.hh (destroy): Document and declare as
	deprecated.
	* bench/split-product/cutscc.cc, iface/gspn/ltlgspn.cc,
	src/eltlparse/eltlparse.yy, src/eltltest/acc.cc,
	src/evtgbaalgos/tgba2evtgba.cc, src/evtgbatest/ltl2evtgba.cc,
	src/ltlast/automatop.cc, src/ltlast/binop.cc,
	src/ltlast/multop.cc, src/ltlast/unop.cc, src/ltlenv/declenv.cc,
	src/ltlenv/declenv.hh, src/ltlparse/ltlparse.yy,
	src/ltltest/equals.cc, src/ltltest/randltl.cc,
	src/ltltest/readltl.cc, src/ltltest/reduc.cc,
	src/ltltest/syntimpl.cc, src/ltltest/tostring.cc,
	src/ltlvisit/destroy.cc src/ltlvisit/basicreduce.cc,
	src/ltlvisit/contain.cc, src/ltlvisit/reduce.cc,
	src/ltlvisit/syntimpl.cc, src/tgba/bdddict.cc,
	src/tgba/bddprint.cc, src/tgba/taa.cc,
	src/tgba/tgbabddconcretefactory.cc, src/tgba/tgbaexplicit.cc,
	src/tgba/tgbafromfile.cc, src/tgbaalgos/eltl2tgba_lacim.cc,
	src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2tgba_fm.cc,
	src/tgbaalgos/ltl2tgba_lacim.cc, src/tgbaalgos/neverclaim.cc,
	src/tgbaalgos/randomgraph.cc, src/tgbaparse/tgbaparse.yy,
	src/tgbatest/complementation.cc, src/tgbatest/eltl2tgba.cc,
	src/tgbatest/ltl2tgba.cc, src/tgbatest/ltlprod.cc,
	src/tgbatest/mixprod.cc, src/tgbatest/randtgba.cc,
	src/tgbatest/reductgba.cc, wrap/python/cgi/ltl2tgba.in,
	wrap/python/tests/ltl2tgba.py, wrap/python/tests/ltlparse.py,
	wrap/python/tests/ltlsimple.py: Adjust destroy() usage, and remove
	the #include "destroy.hh" when appropriate.

128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
2009-11-08  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Deprecate ltl::clone(f) in favor of f->clone().

	* src/ltlvisit/clone.hh (clone): Document and declare as deprecated.
	* src/ltlast/formula_tree.cc, src/ltlvisit/basicreduce.cc,
	src/ltlvisit/clone.cc, src/ltlvisit/contain.cc,
	src/ltlvisit/lunabbrev.cc, src/ltlvisit/reduce.cc,
	src/ltlvisit/syntimpl.cc, src/tgba/bdddict.cc,
	src/tgba/formula2bdd.cc, src/tgba/tgbabddconcretefactory.cc,
	src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2tgba_fm.cc,
	src/tgbatest/complementation.cc, wrap/python/tests/ltlsimple.py:
	Adjust clone() usage, and remove the #include "clone.hh" when
	appropriate.

143
144
145
146
147
148
149
2009-11-08  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Make it possible to clone const formulae.

	* src/ltlast/formula.hh, src/ltlast/formula.cc (clone): Declare
	as const.

150
151
152
153
154
155
156
157
158
159
160
161
162
2009-11-08  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Rename formula::ref and formula::unref as formula::clone
	and formula::destroy.

	* src/ltlast/atomic_prop.cc, src/ltlast/automatop.cc,
	src/ltlast/binop.cc, src/ltlast/formula.hh, src/ltlast/formula.cc,
	src/ltlast/multop.cc, src/ltlast/unop.cc, src/ltlenv/declenv.cc,
	src/ltlvisit/basicreduce.cc, src/ltlvisit/clone.cc,
	src/ltlvisit/destroy.cc, src/ltlvisit/nenoform.cc,
	src/ltlvisit/randomltl.cc, src/ltlvisit/reduce.cc,
	src/tgbatest/randtgba.cc: Adjust.

163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
2009-11-07  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Change the way references are counted to speedup cloning.

	Before this patch, every time you cloned a formula, the clone
	visitor would recurse into the entire AST to increment the
	reference count of all nodes.  When running ltl2tgba_fm on
	the formula generated by "LTLcounterLinear.pl 8", approx 27% of
	the time was spent in the clone visitor.

	After this patch, cloning a formula is just an increment of the
	reference count of the top node.  Children are decremented only
	when the top node's ref count is decremented to zero.  With this
	change, clone() and destroy() become constant time, the
	ltl2tgba_fm spend only 0.01% of the time cloning formulae.


	* src/ltlast/automatop.cc (~automatop): Decrement children.
	(instance): Decrement children if the instance already exists.
	* src/ltlast/binop.cc, src/ltlast/multop.cc, src/ltlast/unop.cc:
	Likewise.
	* src/ltlvisit/clone.cc (clone): Simplify, now we only need to
	call ref().
	* src/ltlvisit/destroy.cc (destroy): Simplify, now we only need
	to call unref().
	(destroy_visitor): Remove, no longer needed.

190
191
192
193
194
195
196
197
198
199
200
2009-11-07  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Make it easier to debug reference counts in LTL nodes.

	* src/ltlast/automatop.cc, src/ltlast/automatop.hh,
	src/ltlast/binop.cc, src/ltlast/binop.hh, src/ltlast/multop.cc,
	src/ltlast/multop.hh, src/ltlast/unop.cc, src/ltlast/unop.hh:
	Add a dump_instance() static method to all class.
	* src/ltltest/readltl.cc: Add option -r to dump all instances
	with their reference count, after parsing and after deletion.

201
202
203
204
205
206
207
208
209
210
2009-11-07  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Better types for instance maps.

	* src/ltlast/unop.hh (map): Use unop* as values.
	* src/ltlast/binop.hh (map): Use binop* as values.
	* src/ltlast/multop.hh (map): Use multop* as values.
	* src/ltlast/automatop.hh (paircmp): Rename as tripletcmp.
	(map): Use automaton* as values, not formula*.

211
212
213
214
215
216
217
218
219
220
221
222
2009-11-07  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Add missing instance_count() in automatop and eltl2tgba.

	* src/ltlast/automatop.hh, src/ltlast/automatop.cc: Add missing
	instance_count() functions.
	* src/tgbatests/eltl2tgba.cc: Add missing instance_count()
	assertions at the end.
	* src/tgbatests/ltl2tgba.cc: Also call automatop::instance_count(),
	even if automatop are not used in ltl2tgba yet.  This way we won't
	forget once eltl2tgba and ltl2tgba are merged.

223
224
225
226
2009-11-07  Damien Lefortier <dam@lrde.epita.fr>

	* src/tgba/taa.cc, src/tgbatest/taa.cc: Adjust.

227
228
229
230
231
232
2009-11-07  Damien Lefortier <dam@lrde.epita.fr>

	* src/tgba/taa.cc, src/tgba/taa.hh: Speed up the cartesian product
	in taa_succ_iterator and allow multiple initial states in taa.
	* src/tgba/ltl2taa.cc: Remove temporary printing.

233
234
235
236
237
238
239
240
241
242
2009-11-05  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix ltlcounter.test for VPATH builds and n > 2.

	* src/tgbatest/defs.in (srcdir): Adjust from VPATH builds.
	* src/tgbatest/ltlcounter.test (lcdir): Adjust definition to
	new value of $srcdir.
	(run): Fix setting of $run after $n = 2.  Using run=: would in
	fact disable all the big tests...

243
244
245
246
247
248
2009-11-05  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbatest/ltlcounter.test (run): Only construct small
	formulae (i.e. n<=2) under valgrind.  The test case is too
	slow otherwise.

249
250
251
252
253
254
255
2009-11-04  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix spurious failure of style.test.

	* src/sanity/style.test: Make sure sh does not abort when read
	exits with false.

256
257
2009-11-04  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

258
	Fix a longstanding bug reported by Kristin Y. Rozier.
259
260
261
262
263
264
265
266

	* src/ltlast/formula.hh (formula_ptr_less_than::operator()):
	Fix a typo where `l' was typed as `1'.
	* src/tgbatest/ltlcounter/: New files from Kristin Y. Rozier.
	* src/tgbatest/ltlcounter.test: New
	* src/tgbatest/Makefile.am (TESTS): Add ltlcounter.test.
	(EXTRA_DIST): Add files in ltlcounter/.

267
268
269
270
271
272
273
2009-11-03  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix the help text of ltl2tgba.

	* src/tgbatest/ltl2tgba.cc (syntax): Add missing std::endl
	before -taa.  Remove -r8 and -fr8, since they do not exist.

274
275
276
277
278
279
280
2009-10-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgba/tgbacomplement.cc (state_complement): Remove the copy
	constructor.  It does the same thing as the default copy
	constructor, and g++ 4.2.3 complained that the copy constructor
	of spot::state was not called.  Reported by Denis Poitrenaud.

281
282
283
284
285
286
2009-10-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/ltlast/formula_tree.cc (instanciate, arity): Add a useless
	return 0 at the end to prevent g++ 4.2.3 from complaining about
	a missing return.  Reported by Denis Poitrenaud.

287
288
289
290
2009-10-23  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbatest/kv.test: Don't run valgrind on dot!

291
292
293
294
295
296
297
298
299
2009-10-16  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Escape labels in -KV output.

	* src/tgbaalgos/scc.cc (dump_scc_dot): Escape labels and other
	strings output between quote in dot.
	* src/tgbatest/kv.test: New file.
	* src/tgbatest/Makefile.am (TESTS): Add it.

300
301
302
303
2009-10-16  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbaalgos/ltl2tgba_fm.cc: Typos.

Damien Lefortier's avatar
Damien Lefortier committed
304
305
306
307
308
309
310
311
312
313
314
315
316
2009-10-22  Damien Lefortier <dam@lrde.epita.fr>

	Improve ltl_to_taa.

	* src/tgba/taa.cc, src/tgba/taa.hh: taa_succ_iterator is not
	on-the-fly anymore allowing some redundant transitions to be
	removed. Also a new function to output a TAA.
	* src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2taa.hh: Add the
	refined rules from Tauriainen.
	* src/tgbatest/ltl2tgba.cc: Use -c to activate refined rules in
	ltl_to_taa.
	* src/tgbatest/spotlbtt.test: More tests.

Damien Lefortier's avatar
Damien Lefortier committed
317
318
319
320
321
322
2009-10-17  Damien Lefortier <dam@lrde.epita.fr>

	Fix make check in sanity.

	* src/tgba/taa.cc, src/tgbaalgos/ltl2taa.cc: Fix style.

Damien Lefortier's avatar
Damien Lefortier committed
323
324
325
326
327
328
329
330
331
332
333
2009-10-16  Damien Lefortier <dam@lrde.epita.fr>

	Minor fixes.

	* src/misc/bddop.hh, src/tgba/taa.hh, src/tgbaalgos/ltl2taa.hh:
	Fix sanity (incorrect include guard).
	* src/tgba/tgbacomplement.cc, src/tgba/tgbacomplement.hh:
	Copyright 2009.
	* src/tgbaalgos/eltl2tgba_lacim.cc: Use abbreviations.
	* src/tgbatest/taa.cc: Fix it.

334
335
336
337
338
339
340
341
2009-10-16  Damien Lefortier <dam@lrde.epita.fr>

	Add a new algorithm (from Tauriainen) to translate LTL formulae to
	TGBA which uses TAA as an intermediate representation.  This is a
	basic version, optimizations and enhancements will come later.

	* src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2taa.hh: The algortihm.
	* src/tgbaalgos/Makefile.am: Adjust.
Damien Lefortier's avatar
Damien Lefortier committed
342
	* src/tgbatest/ltl2tgba.cc: New option: -taa, which uses this new
343
344
345
	translation algorithm.
	* src/tgbatest/spotlbtt.test: Add ltl2tgba -taa.

346
347
348
349
350
351
352
353
354
355
356
357
2009-10-04  Damien Lefortier <dam@lrde.epita.fr>

	Add a class to represent Transition-based Alternating Automata (TAA).

	* misc/Makefile.am, misc/bbop.cc, misc/bddop.hh: Factorize some
	code on BDDs to compute all_acceptance_conditions from
	neg_acceptance_condition.
	* src/tgba/Makefile.am, src/tgbatest/Makefile.am: Adjust.
	* src/tgba/taa.cc, src/tgba/taa.hh: The TAA class.
	* src/tgba/tgbaexplicit.hh: Use the factorized code in bddop.hh.
	* src/tgbatest/taa.cc, src/tgbatest/taa.test: Some test cases.

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
358
359
360
361
362
2009-10-07  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* AUTHORS: Add Damien Lefortier, Guillaume Sadegh, and Flix
	Abecassis.

363
364
365
366
367
368
369
370
371
2009-10-01  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	The sgba proxy adds an acceptance condition to every states when
	the original automaton has no acceptance condition.

	* src/tgba/tgbasgba.cc, src/tgba/tgbasgba.hh: New option:
	when the original automaton has no accepting condition, it
	explicitly considers that every state is accepting.

372
373
374
375
376
377
378
379
2009-09-30  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	* src/tgba/tgbacomplement.cc: Move functions related to
	shared_ptr on states...
	* src/tgba/state.hh: ... here.
	* src/tgbatest/complementation.test: Do not apply some tests on
	the new algorithm because it takes to much time to run.

380
381
382
383
384
385
386
387
388
389
390
391
392
2009-09-29  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	A new complementation construction based on ranking.

	* src/tgba/tgbacomplement.cc, src/tgba/tgbacomplement.hh: The
	construction.
	* src/tgbatest/Makefile.am: Adjust.
	* src/tgbatest/complementation.cc: Add options to support this
	construction in addition to Safra construction.
	* src/tgba/Makefile.am: Adjust.
	* src/tgbatest/complementation.test: Adjust to test also this
	complementation.

393
394
395
396
397
2009-09-29  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	* src/ltltest/randltl.cc, src/ltltest/reduc.test,
	src/tgbatest/dfs.test: Adjust headers to 80 columns.

398
399
400
401
402
403
404
405
406
407
2009-09-24  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	A wrapper around tgba to produce state-labeled automata.

	* src/tgba/tgbasgba.hh, src/tgba/tgbasgba.hh: Here.
	* src/tgbatest/ltl2tgba.cc: New option `-lS' for state-labeled
	automata.
	* src/tgba/Makefile.am: Adjust and sort files in tgba_HEADERS
	and libtgba_la_SOURCES.

408
409
410
411
412
413
414
415
416
417
418
2009-09-21  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	Rename files related to Safra complementation.

	* src/tgba/tgbacomplement.cc, src/tgba/tgbacomplement.hh: Rename
	as...
	* src/tgba/tgbasafracomplement.cc,
	src/tgba/tgbasafracomplement.hh: ... these, and adjust class name.
	* src/tgba/Makefile.am, src/tgbatest/Makefile.am: Adjust.
	* src/tgbatest/complementation.cc: Adjust.

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
419
420
421
422
423
424
425
2009-09-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix previous patch.

	* src/tgbaalgos/scc.cc (scc_map::update_supp_rec): Also take the
	label of the outgoing edges into account.

426
427
428
429
430
431
432
433
2009-09-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Optimize previous patch.

	* src/tgbaalgos/scc.hh (scc_map::scc::supp_rec): Initialize to
	bddfalse, since this cannot occur in reallife.
	* src/tgbaalgos/scc.cc (scc_map::update_supp_rec): Adjust.

434
435
436
437
438
439
440
441
442
443
444
445
2009-09-17  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Have scc_map keep track of APs that are reachable from a SCC.

	* src/tgbaalgos/scc.hh (scc_map::scc): Add a supp_rec member to
	hold reachable APs.
	* src/tgbaalgos/scc.cc (scc_map::update_supp_rec): New function,
	to update supp_rec.
	(scc_map::build_map): Call it.
	(scc_map::aprec_set_of): New function.
	(dump_scc_dot): Show the output of aprec_set_of().

446
447
448
449
450
451
452
453
454
2009-09-17  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Have scc_map keep track of APs that are occurring in a SCC.

	* src/tgbaalgos/scc.hh (scc_map::scc): Add a supp member to hold APs.
	* src/tgbaalgos/scc.cc (scc_map::build_map): Update supp.
	(scc_map::ap_set_of): New function.
	(dump_scc_dot): Show the output of ap_set_of().

Damien Lefortier's avatar
Damien Lefortier committed
455
456
457
458
459
460
461
462
2009-09-07  Damien Lefortier <dam@lrde.epita.fr>

	Fix some memory leaks.

	* src/eltlparse/eltlparse.yy: Free the automatop::vec when
	CHECK_ARITY fails while parsing an automatop.
	* src/eltltest/acc.cc: Free all constructed formulae.

463
464
465
466
467
468
469
2009-09-07  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix a memory leak in reduce_tau03().

	* src/ltlvisit/contain.cc (reduce_tau03_visitor::visit): Free
	the operand array when a multop reduces to a constant.

470
471
472
473
474
475
476
2009-09-07  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix a memory leak in randltl.

	* src/ltltest/randltl.cc: Free the atomic properties from AP
	before exit.

477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
2009-09-04  Damien Lefortier <dam@lrde.epita.fr>

	Add an algorithm (from Couvreur) working on BDDs to reduce the
	size of TGBAs represented as BDDs by deleting unaccepting SCCs.

	* src/eltlparse/eltlparse.yy: Remove a warning.
	* src/tgba/tgbabddconcrete.cc, src/tgba/tgbabddconcrete.hh,
	src/tgba/tgbabddcoredata.cc, src/tgba/tgbabddcoredata.hh: Add a
	new function delete_unaccepting_scc in both classes.
	* src/tgbatest/eltl2tgba.cc, src/tgbatest/spotlbtt.test: Use this
	new function in LaCIM for ELTL and bench it.
	* src/tgbatest/defs.in: Fix it.
	* bench/ltl2tgba/algorithms, bench/ltl2tgba/defs.in: Add LaCIM for
	ELTL in benchs.

492
493
494
495
496
497
498
499
2009-09-01  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix path to libtool in test suites.

	* src/ltltest/defs.in, src/eltltest/defs.in, src/tgbatest/defs.in,
	src/evtgbatest/defs.in (run): Use ../../../libtool instead of
	../../libtool, now that testcases have been moved down one directory.

500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
2009-08-31  Alexandre Duret-Lutz  <adl@va-et-vient.net>

	Use Automake 1.11's parallel-tests feature.

	* configure.ac: Enable parallel-tests.
	* src/eltltest/defs.in, src/evtgbatest/defs.in,
	src/ltltest/defs.in, src/tgbatest/defs.in: Always output verbose
	tests.  Make a subdirectory for each test case.
	* src/ltltest/Makefile.am, src/eltltest/Makefile.am,
	src/tgbatest/Makefile.am, src/evtgbatest/Makefile.am: Remove
	CLEANFILES and clean the test subdirectories in a distclean-local
	rule instead.
	* src/eltltest/acc.test, src/eltltest/nfa.test,
	src/evtgbatest/explicit.test, src/evtgbatest/ltl2evtgba.test,
	src/evtgbatest/product.test, src/evtgbatest/readsave.test,
	src/ltltest/equals.test, src/ltltest/lunabbrev.test,
	src/ltltest/nenoform.test, src/ltltest/parse.test,
	src/ltltest/parseerr.test, src/ltltest/reduc.test,
	src/ltltest/reduccmp.test, src/ltltest/syntimpl.test,
	src/ltltest/tostring.test, src/ltltest/tunabbrev.test,
	src/ltltest/tunenoform.test, src/tgbatest/bddprod.test,
	src/tgbatest/complementation.test, src/tgbatest/dfs.test,
	src/tgbatest/dupexp.test, src/tgbatest/eltl2tgba.test,
	src/tgbatest/emptchk.test, src/tgbatest/emptchke.test,
	src/tgbatest/emptchkr.test, src/tgbatest/explicit.test,
	src/tgbatest/explpro2.test, src/tgbatest/explpro3.test,
	src/tgbatest/explpro4.test, src/tgbatest/explprod.test,
	src/tgbatest/ltl2neverclaim.test, src/tgbatest/ltl2tgba.test,
	src/tgbatest/ltlprod.test, src/tgbatest/mixprod.test,
	src/tgbatest/readsave.test, src/tgbatest/reduccmp.test,
	src/tgbatest/reductgba.test, src/tgbatest/scc.test,
	src/tgbatest/spotlbtt.test, src/tgbatest/tgbaread.test,
	src/tgbatest/tripprod.test: Adjust to run from a subdirectory.

534
535
536
537
2009-08-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* configure.ac: Switch to Automake 1.11 and enable color-tests.

538
539
540
541
542
543
2009-08-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* configure.ac: Switch from Libtool 1.5.x to Libtool 2.x, and
	add an AC_CONFIG_MACRO_DIR call.
	* m4/libtool.m4, tools/ltmain.sh: Remove.

544
545
546
547
548
549
550
551
2009-07-30  Felix Abecassis <abecassis@lrde.epita.fr>

	Add TGBA union implementation.

	* src/tgba/tgbaunion.cc, src/tgba/tgbaunion.hh: New files.
	Union of two TGBAs.
	* src/tgba/Makefile.am: Adjust.

552
553
554
555
2009-07-09  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	* m4/intel.m4: Fix to support the cache.

556
557
558
2009-07-08  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	* src/tgba/tgbacomplement.cc: Stay on 80 columns.
559

Flix Abecassis's avatar
Flix Abecassis committed
560
561
562
563
564
565
566
567
568
569
570
571
572
2009-07-08  Flix Abecassis <abecassis@lrde.epita.fr>

	Add 2 benchmarks directories.
	Add an algorithm to split an automaton in several automata.

	* bench/scc-stats: New directory.  Contains input files and test
	program for computing statistics.
	* bench/split-product: New directory.  Contains test program for
	synchronised product on splitted automata.
	* bench/split-product/models: New directory.  Contains Promela
	files, and LTL formulae that should be verified by the models.
	* src/tgba/tgbafromfile.cc, src/tgba/tgbafromfile.hh:
	New files.  Small class to avoid long initializations with numerous
573
	constants when translating to TGBA many LTL formulae from a
Flix Abecassis's avatar
Flix Abecassis committed
574
575
576
577
578
579
580
	given file.
	* src/tgbaalgos/cutscc.cc, src/tgbaalgos/cutscc.hh:
	New file.  From a single automaton, create, at most,
	X sub automata.
	* src/tgbaalgos/scc.cc, src/tgbaalgos/scc.hh:
	Adjust to compute self-loops count.

581
582
583
584
585
2009-07-07  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	* src/tgba/tgbacomplement.cc: Fix the transformation from
	Streett to TGBA.
	* src/tgbatest/complementation.test: Modify tests.
586

587
588
589
590
2009-06-17  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* bench/emptchk/pml2tgba.pl: Adjust to work with Spin 5.2.0.

591
592
593
594
595
596
597
598
2009-06-12  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	Adjust the build system for ICC.

	* m4/intel.m4: Remove the `-W' option from CXXFLAGS since icpc
	does not support it. Inhibit the warning ``method was declared
	but never referenced''.

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
599
600
601
602
603
604
605
2009-06-11  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Kill a g++-4.2 warning.

	* src/tgba/tgbacomplement.cc (state_complement::state_complement)
	explicitly initialize the base class spot::state.

606
607
608
609
610
611
612
613
614
615
616
2009-06-10  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	During the complementation, transform the auxiliary Streett
	automaton into a TGBA instead of a TBA.

	* src/tgba/tgbacomplement.hh, src/tgba/tgbacomplement.cc:
	Adjust the transformation from Streett to Bchi to support
	generalized acceptance conditions.
	* src/tgbatest/complementation.cc: Improve output messages.
	* src/tgbatest/complementation.test: New tests.

617
618
2009-06-09  Guillaume Sadegh  <sadegh@lrde.epita.fr>

619
620
	* src/tgba/tgbacomplement.cc, src/tgbatest/complementation.cc:
	Fix style.
621

622
623
624
625
626
2009-06-07  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	* src/tgba/tgbacomplement.cc (state_complement::hash): Improve
	the hash function.

627
628
629
630
631
632
2009-06-09  Damien Lefortier <dam@lrde.epita.fr>

	* src/eltlparse/eltlparse.yy: Fix a memory leak.
	* src/eltltest/nfa.cc: Adjust.
	* src/tgbaalgos/eltl2tgba_lacim.cc: Fix a memory leak.

633
634
635
636
637
638
639
2009-06-05  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	Remove generated files that git follows.

        * INSTALL, lbtt/INSTALL, lbtt/doc/texinfo.tex: Do not track
	anymore these generated files.

640
641
642
643
644
645
646
647
648
649
650
651
652
653
2009-06-05  Guillaume Sadegh  <sadegh@lrde.epita.fr>

	Add an algorithm to complement Bchi automata.

	* src/tgba/tgbacomplement.hh, src/tgba/tgbacomplement.cc: New
	files. The complementation algorithm.
	* src/tgba/Makefile.am: Adjust.
	* src/tgbatest/complementation.test,
	src/tgbatest/complementation.cc: New files. Test suite for the
	complementation algorithm.
	* src/tgbatest/Makefile.am: Adjust.
	* src/tgbaalgos/Makefile.am: Reformat the header using 80
	columns.

654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
2009-06-05  Damien Lefortier <dam@lrde.epita.fr>

	Modify the ELTL parser to be able to support PSL operators.  Add a
	new keyword in the ELTL format: finish, which applies to an
	automaton operator and tells whether it just completed.

	* src/eltlparse/eltlparse.yy: Clean it. Add finish.
	* src/eltlparse/eltlscan.ll: Add finish.
	* src/formula_tree.cc, src/formula_tree.hh: New files. Define a
	small AST representing formulae where atomic props are unknown
	which is used in the ELTL parser.
	* src/ltlast/automatop.cc, ltlast/automatop.hh, ltlast/nfa.cc,
	ltlast/nfa.hh: Adjust.
	* src/ltlast/unop.cc, src/ltlast/unop.hh: Finish is an unop.
	* src/ltlvisit/basicreduce.cc, src/ltlvisit/nenoform.cc,
	src/ltlvisit/reduce.cc, src/ltlvisit/syntimpl.cc,
	src/ltlvisit/tostring.cc, src/ltlvisit/tunabbrev.cc,
	src/tgba/formula2bdd.cc, src/tgbaalgos/ltl2tgba_fm.cc,
	src/tgbaalgos/ltl2tgba_lacim.cc: Handle finish in switches.
	* src/tgbaalgos/eltl2tgba_lacim.cc: Translate finish.
	* src/tgbatest/eltl2tgba.test: More tests.

676
677
678
679
680
681
2009-06-02  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbatest/scc.test: Redirect stdout into file `stdout'
	instead of `out', to conform to other tests, and add a missing
	call to diff.

682
683
684
685
686
687
688
689
690
691
692
2009-06-02  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Introduce some experimental kripke classes to simplify writing
	interfaces.

	* src/kripke/Makefile.am, src/kripke/fairkripke.cc,
	src/kripke/fairkripke.hh, src/kripke/kripke.cc,
	src/kripke/kripke.hh: New files.
	* src/Makefile.am: Recurse into kripke and link libkripke.la.
	* configure.ac: Output src/kripke/Makefile.

693
694
695
696
697
698
699
700
701
2009-06-02  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbatest/scc.test: New file.
	* src/tgbatest/Makefile.am: Adjust.
	* src/tgbaalgos/scc.hh: More documentation.
	* src/tgbaalgos/scc.cc (scc_recurse): Fix computation of
	acc_paths and dead_paths.  Prevent recursions in states that
	have already been visited.

702
703
704
705
706
707
708
709
710
2009-05-31  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Lift the SCC computation off future_condition_collectors, into
	a new tgba_scc class.

	* src/tgba/futurecondcol.cc, src/tgba/futurecondcol.hh: Move
	all delegation functions and scc_map into ...
	* src/tgba/tgbascc.cc, src/tgba/tgbascc.hh: ... these new files.

711
712
713
714
715
716
717
718
719
720
2009-05-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Test "ltl2tgba -FC" and plug the memory leaks of scc_map.

	* src/tgbaalgos/scc.hh (scc_map::~scc_map): Declare it.
	* src/tgbaalgos/scc.cc (scc_map::~scc_map): Implement it.
	(scc_map::build_map): Delete duplicate states.
	* src/tbbatest/ltl2tgba.test: Run ltl2tgba -FV to catch
	memory leaks with valgrind.

721
722
723
724
725
726
727
728
729
2009-05-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Implement spot::future_conditions_collector.

	* src/tgba/futurecondcol.hh, src/tgba/futurecondcol.cc:
	New files.
	* src/tgba/Makefile.am: Adjust.
	* src/tgbatest/ltl2tgba.cc: Add option -FC.

730
731
732
733
734
2009-05-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbaalgos/scc.cc (dump_scc_dot): Use a bit vector instead of
	a map to track visited SCC since they are sequentially numbered.

735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
2009-05-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Number states using negative values and SCCs using nonnegative
	values.

	Before this change states were numbered using positive values and
	SCCs using negative values.  That meant the user had to work with
	negative values.  With this changes, the nonnegative values used
	to label SCCs can also directly be used as index in the scc_map_.

	* src/tgbaalgos/scc.hh (scc_map::scc_of_state,
	scc_map::cond_set_of, scc_map::acc_set_of, scc_map::states_of,
	scc_map::initial, scc_map::scc_type, scc_map::succ,
	scc_map::accepting): Adjust prototypes to take or return unsigned
	arguments.
	* src/tgbaalgos/scc.cc: Adjust prototypes of the above functions.
	(scc_map::build_map, scc_map::relabel_component): Number states
	using negative values, and SCCs using nonnegative values.
	(dump_scc_dot): Adjust to use nonnegative values.

755
756
757
758
759
760
761
762
763
764
765
766
767
2009-05-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Store the scc_map_ as a vector instead of a std::map.  There is no
	point in using a map since the SCC are numbered in sequence.

	* src/tgbaalgos/scc.hh (scc_map::relabel_component): Return the
	number of the SCC instead of taking it as argument.
	(scc_map::scc_num_): Delete this variable.  scc_map_.size() gives
	the same information.
	(scc_map::scc_map_type): Define using std::vector instead of
	std::map.
	* src/tgbaalgos/scc.cc: Adjust all uses.

768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
2009-05-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Keep track of conditions in SCC, and add a more verbose dump.

	* src/tgbaalgos/scc.hh (scc_map::scc_of_state,
	scc_map::cond_set_of, scc_map::acc_set_of, scc_map::states_of):
	New functions.
	(scc_map::scc::conds): New attribute.
	(dump_scc_dot): Take an optional VERBOSE argument.
	* src/tgbaalgos/scc.cc (scc_map::scc_of_state,
	scc_map::cond_set_of, scc_map::acc_set_of, scc_map::states_of):
	Implement these new functions.
	(dump_scc_dot): Display number of states, conditions and
	acceptance conditions, with VERBOSE is set.
	(build_map): Fill the new scc_map::scc::cond field.

Alexandre Duret-Lutz's avatar
Alexandre Duret-Lutz committed
784
785
786
787
788
789
790
2009-05-28  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbaalgos/scc.cc (scc_map::relabel_component): Make sure
	that the old label of each state is strictly positive.  The
	previous assertion (inherited from gtec) of "!= -1" is wrong,
	because all negative values are now used to number SCCs.

791
792
793
794
795
796
2009-05-26  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgba/tgba.hh (format_state): s/automata who/automata that/.
	* src/evtgba/evtgba.hh (format_state): Likewise.
	* src/evtgba/product.hh (format_state): Likewise.

797
798
799
800
801
802
803
804
805
806
807
808
809
810
2009-04-18  Damien Lefortier <dam@lrde.epita.fr>

	Extend the ELTL parser to support more complex aliases of
	automaton operators such as Strong=G(F($0))->G(F($1)) and
	G=R(false, $0).

	* src/eltlparse/eltlparse.yy, src/eltlparse/eltlscan.ll: Add
	support for more complex aliases.
	* src/eltltest/acc.cc, src/eltltest/acc.test: Adjust.
	* src/ltlast/nfa.cc, src/ltlast/nfa.hh (arity): Now returns an
	unsigned value.
	* src/tgbatest/eltl2tgba.test: Adjust.
	* src/tgbalagos/eltl2tgba_lacim.cc: Fix sanity.

811
812
813
814
815
816
817
818
819
2009-04-09  Guillaume SADEGH  <sadegh@lrde.epita.fr>

	Minor fixes to compile with GCC 4.4.

	* src/eltlparse/eltlparse.yy (subformula): Avoid a comparaison
	between a signed and an unsigned value.
	* src/ltlast/automatop.hh, src/ltlast/automatop.cc (nfa): Avoid
	a name clash with the `nfa' class.

820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
2009-04-08  Damien Lefortier <dam@lrde.epita.fr>

	Correct LaCIM for ELTL and make it work with LBTT.

	* src/eltlparse/eltlparse.yy: Adjust.
	* src/ltlast/automatop.cc, src/ltlast/automatop.hh,
	src/ltlvisit/clone.cc, src/ltlvisit/nenoform.cc: Clean the way we
	handle the negation of automaton operators.
	* src/ltlvisit/tostring.cc, src/ltlvisit/tostring.hh: Add an
	optional argument to output a fully parenthesized string.
	* src/tgbaalgos/eltl2tgba_lacim.cc: Fix it.
	* src/tgbatest/eltl2tgba.cc: Add a new option (-L) to read formulae
	from an LBTT-compatible file.
	* src/tgbatest/eltl2tgba.test: A new tests.
	* src/tgbatest/spotlbtt.test: Add LaCIM for ELTL.

836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
2009-04-04  Damien Lefortier <dam@lrde.epita.fr>

	Extend the ELTL parser to support basic aliases of automaton
	operators such as F=U(true,$0) or R=!U(!$0,!$1), and infix
	notation for binary automaton operators.

	* README: Document the ELTL directories.
	* src/eltlparse/eltlparse.yy, src/eltlparse/eltlscan.ll: Add
	support for aliases and infix notation.
	* src/eltlparse/public.hh, src/ltlast/nfa.cc, src/ltlast/nfa.hh:
	Clean them.
	* src/eltltest/acc.test, src/tgbatest/eltl2tgba.test: Add tests
	for the ELTL parser's extensions.
	* src/tgbatest/eltl2tgba.cc: Adjust.

851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
2009-03-26  Damien Lefortier <dam@lrde.epita.fr>

	Add support for ELTL (AST & parser), and an adaptation of LaCIM
	for ELTL.

        * configure.ac: Adjust for src/eltlparse/ and src/eltltest/
	directories, and call AX_BOOST_BASE.
	* m4/boost.m4: New file defining AX_BOOST_BASE([MINIMUM-VERSION]).
	* src/Makefile.am: Add eltlparse and eltltest.
	* src/eltlparse/: New directory.  Contains the ELTL parser.
	* src/eltltest/: New directory.  Contains tests related to
	ELTL (parser and AST).
	* src/ltlast/Makefile.am: Adjust for ELTL AST files.
	* src/ltlast/automatop.cc, src/ltlast/automatop.hh: New files.
	Represent automaton operators nodes used in ELTL ASTs.
	* src/ltlast/nfa.cc, src/ltlast/nfa.hh: New files.  Represent
	simple NFAs used internally by automatop nodes.
	* src/ltlast/allnode.hh, src/ltlast/predecl.hh,
	src/ltlast/visitor.hh: Adjust for automatop.
	* src/ltlvisit/basicreduce.cc, src/ltlvisit/clone.cc,
	src/ltlvisit/clone.hh, src/ltlvisit/contain.cc,
	src/ltlvisit/dotty.cc, src/ltlvisit/nenoform.cc,
	src/ltlvisit/postfix.cc, src/ltlvisit/postfix.hh,
	src/ltlvisit/reduce.cc, src/ltlvisit/syntimpl.cc,
	src/ltlvisit/tostring.cc: Because LTL and ELTL formulae share the
	same class hierarchy, LTL visitors need to handle automatop nodes
	to compile.  When it's meaningful the visitor applies on automatop
	nodes or simply assert(0) otherwise.
	* src/tgba/tgbabddconcretefactory.cc (create_anonymous_state),
	src/tgba/tgbabddconcretefactory.hh (create_anonymous_state): New
	function used by the LaCIM translation algorithm for ELTL.
	* src/tgbaalgos/Makefile.am: Adjust for eltl2tgba_lacim* files.
	* src/tgbaalgos/eltl2tgba_lacim.cc,
	src/tgbaalgos/eltl2tgba_lacim.hh: New files.  Implementation of
	the LaCIM translation algorithm for ELTL.
	* src/tgbaalgos/ltl2tgba_fm.cc, src/tgbaalgos/ltl2tgba_lacim.cc:
	Handle automatop nodes in the translation by an assert(0).
	* src/tgbatest/Makefile.am: Adjust for eltl2tgba.* files.
	* src/src/tgbatest/eltl2tgba.cc, src/tgbatest/eltl2tgba.test: New
	files.

892
893
894
895
2009-03-25  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/evtgbaparse/evtgbaparse.yy: Stay on 80 columns.

896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
2009-03-25  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Update parsers to work with Bison 2.4.1.

	* HACKING: Mention that we require Bison >= 2.4 for developers.
	* src/evtgbaparse/evtgbaparse.yy, src/tgbaparse/tgbaparse.yy,
	src/ltlparse/ltlparse.yy: The sections "%{ ... %}" should now be
	renamed "%code requires { ... }" or "%code { ... }" depending on
	whether they should end up in the parser's header file or its cc
	file.  Also use %language, %locations, %defines, instead of
	command-line arguments.
	* src/evtgbaparse/Makefile.am, src/tgbaparse/Makefile.am,
	src/ltlparse/Makefile.am: Remove the --locations, --defines
	and --languages in the call to bison.  Add -Wall -Werror to
	catch more errors.
	Thanks to Akim Demaille <akim@lrde.epita.fr> for the help.

913
914
915
916
2009-03-25  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbaalgos/scc.hh: Add missing misc/hash.hh inclusion.

Alexandre Duret-Lutz's avatar
typo    
Alexandre Duret-Lutz committed
917
918
919
920
921
2009-02-23  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgba/tgbaproduct.cc (tgba_succ_iterator_product::first):
	Typo in comment.

Alexandre Duret-Lutz's avatar
typos    
Alexandre Duret-Lutz committed
922
923
924
925
2009-02-23  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgba/tgba.hh: Typos.

Alexandre Duret-Lutz's avatar
Typos    
Alexandre Duret-Lutz committed
926
927
928
929
930
2009-02-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgba/succiterconcrete.cc (tgba_succ_iterator_concrete::next):
	Typos.

931
932
933
934
935
936
2008-12-17  Guillaume SADEGH  <sadegh@lrde.epita.fr>
	Update to compile with GCC 4.4.0 (trunk).

	* src/tgba/tgbabddconcrete.cc (tgba_bdd_concrete::succ_iter):
	Rename `state' as `local_state'.

937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
2008-12-11  Guillaume SADEGH  <sadegh@lrde.epita.fr>

	Update to compile with the Intel compiler.

  	* m4/intel.m4: New file.
	* configure.ac: Update.
	* src/tgbaalgos/emptiness.cc (tgba_run): Modify s.s->clone() in
	i->s->clone().
	* src/misc/optionmap.hh, src/misc/optionmap.cc: Remove the extra
	`;' after the namespace.
        * src/tgbaalgos/tau03opt.cc
	(tau03_opt_search::add_new_state): Remove unreferenced method.
        * src/tgbaalgos/ltl2tgba_fm.cc
	(translate_dict::dump): Remove unreferenced method.
        * src/tgbaalgos/lbtt.cc
	(acceptance_cond_splitter::count): Remove unreferenced method.
        * src/tgba/tgbabddconcreteproduct.cc
	(tgba_bdd_product_factory::get_dict): Remove unreferenced method.
        * src/ltlvisit/syntimpl.cc
        (eventual_universal_visitor::recurse): Remove unreferenced method.
	* src/tgbaalgos/reductgba_sim.cc: Reindent.

959
960
961
962
963
964
965
966
967
968
2008-12-11  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Compute more statistics about SCCs.

	* src/tgbaalgos/scc.hh (scc_stats): Add new attributes:
	acc_scc, dead_scc, acc_paths, dead_paths.
	* src/tgbaalgos/scc.hh (scc_stats::dump): Display them.
	(build_scc_stats): Compute them.
	(scc_recurse_data, scc_recurse): New helper structure and function.

969
970
971
972
973
974
975
976
977
978
2008-12-11  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	Fix tracking of SCCs on the search stack.

	* src/tgbaalgos/scc.hh (scc::arc_): Rename as ...
	(scc::arc_acc_): ... this.
	(scc::arc_cond_): New attribute.
	* src/tgbaalgos/scc.cc (build_map): Adjust and keep
	track of transitions between SCCs on the search stack.

979
980
981
982
983
984
985
2008-12-10  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbaalgos/scc.hh, src/tgbaalgos/scc.cc: New files.
	* src/tgbaalgos/Makefile.am: Add them.
	* src/tgbatest/ltl2tgba.cc (-k): Also call build_scc_stats().
	(-K): New option that dumps the SCCs for dot.

986
987
988
989
990
991
992
2008-12-05  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* src/tgbatest/ltl2tgba.cc (-k): New option that calls
	stats_reachable(a).dump().
	* src/tgbaalgos/stats.cc, src/tgbaalgos/stats.hh:
	Add tgba_statistics::dump().

993
994
995
996
997
998
999
2008-08-29  Alexandre Duret-Lutz  <adl@lrde.epita.fr>

	* bench/gspn-ssp/tools/modelgen-create: Remove and fold into ...
	* bench/gspn-ssp/tools/bench-create: ... this.
	* bench/gspn-ssp/Makefile.am: Update.
	* bench/gspn-ssp/bench.mk: Regen.

1000
2008-08-29  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
For faster browsing, not all history is shown. View entire blame