Commit graph

923 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
13183893dd * src/tgbaalgos/ndfs_result.hh (construct_prefix): Do not call
erase() after splice(), splice() already removes the elements.
2005-01-03 12:11:28 +00:00
Alexandre Duret-Lutz
000c041a95 * src/evtgba/evtgbaiter.hh, src/ltlast/formula.hh,
src/ltlast/refformula.hh, src/ltlenv/defaultenv.hh,
src/misc/bareword.hh, src/tgba/succiter.hh,
src/tgba/tgbabddfactory.hh, src/tgba/tgbareduc.hh,
src/tgbaalgos/dupexp.hh, src/tgbaalgos/emptiness_stats.hh,
src/tgbaalgos/ltl2tgba_fm.hh, src/tgbaalgos/ltl2tgba_lacim.hh,
src/tgbaalgos/reductgba_sim.hh, src/tgbaalgos/tau03opt.hh: Add
or fix include guards.
* src/sanity/includes.test: Check the presence of the include
guard.
2005-01-03 10:20:26 +00:00
Alexandre Duret-Lutz
93f77c5782 * src/tgbaalgos/gtec/nsheap.hh, src/tgbaalgos/gtec/nsheap.cc
(index_and_insert): New function.
* src/tgbaalgos/gtec/gtec.cc (couvreur99_check_shy::check): Rewrite.
(couvreur99_check_shy::clear_todo): New method.
* src/tgbaalgos/gtec/gtec.hh (couvreur99_check_shy::todo_item): New
struct.
* iface/gspn/ssp.cc (numbered_state_heap_ssp_semi::index_and_insert):
New method.
2004-12-29 15:29:26 +00:00
Alexandre Duret-Lutz
988dbbd367 * doc/Doxyfile.in (EXCLUDE_SYMLINKS): Set to YES, since we have no
legitimate symlink in our source tree.  Requested by Akim Demaille.
2004-12-20 13:35:33 +00:00
Denis Poitrenaud
8dbc9424c1 * src/tgbaalgos/ndfs_result.hh: Rewrite the computation of accepting
runs.
* src/tgbaalgos/bfssteps.hh, src/tgbaalgos/bfssteps.cc: Add the method
finalize witch compute (by default) the traversed path.
* src/tgbaalgos/magic.cc, src/tgbaalgos/se05.cc: Fix a bug concerning
the heap used for bit state hashing version and ajust the prototype of
has_been_visited and pop_notify.
* src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03opt.cc: ajust the prototype
of has_been_visited and pop_notify.
2004-12-20 10:09:45 +00:00
Alexandre Duret-Lutz
0c2c12a80f * src/tgbaalgos/ndfs_result.hh: Include misc/hash.hh. 2004-12-17 08:33:32 +00:00
Alexandre Duret-Lutz
e7a3ebb16a * src/tgbaalgos/reducerun.cc (reduce_run): Do not call erase() after
splice(), splice() already remove the elements.
* src/tgbaalgos/gtec/ce.cc (couvreur99_check_result::accepting_run):
Likewise.
2004-12-16 23:13:33 +00:00
Alexandre Duret-Lutz
58aff37db9 * src/tgbatest/randtgba.cc: Add option -O, so we can profile each
emptiness-check on its own.
2004-12-16 21:49:46 +00:00
Alexandre Duret-Lutz
0efca0f644 * src/ltlparse/ltlscan.ll: Pass yyleng to the std::string constructor,
so it doesn't have to compute it.
* src/tgbaparse/tgbascan.ll: Likewise.
(YY_USER_INIT, current_file): Remove, it is too costly to use
yy::Location::filename in the current implementation
of yy::Location (this attribute is duplicated for each token).
Leaving it empty divides the parsing time by 3.
* src/tgbaparse/fmterror.cc, src/tgbaparse/public.hh
(format_tgba_parse_errors): Take the filename as argument.
* src/tgbatest/explprod.cc, src/tgbatest/ltl2tgba.cc,
src/tgbatest/mixprod.cc, src/tgbatest/powerset.cc,
src/tgbatest/readsave.cc, src/tgbatest/reductgba.cc,
src/tgbatest/tgbaread.cc, src/tgbatest/tripprod.cc,
iface/gspn/dottyssp.cc, iface/gspn/ltlgspn.cc: Adjust calls
to format_tgba_parse_errors.
2004-12-16 12:33:37 +00:00
Alexandre Duret-Lutz
704f237a22 * src/tgbaparse/tgbaparse.yy: Cache parsed formulae to speedup
reading of TGBAs with lots of identical conditions.
2004-12-15 17:13:44 +00:00
Alexandre Duret-Lutz
752d4afc31 * src/tgba/bdddict.hh (bdd_dict) <fv_map, vf_map, ref_set,
vr_map, free_annonymous_list_of_type>: Redeclare as std::map,
instead of Sgi::hash_map.  It proved to be faster.
* src/tgbaalgos/ltl2tgba_fm.cc (translate_dict) <fv_map, vf_map>:
Use the same definition as in bdd_dict.
* tgbaalgos/reachiter.hh, tgbaalgos/replayrun.cc: Explicitly
include misc/hash.hh.
2004-12-15 16:23:07 +00:00
Alexandre Duret-Lutz
b0a51a0656 Adjust Swig rules for Swig 1.3.24 (and probably 1.3.23 too).
Compiling the runtime in a separate modules is no longer required,
and actually it does not work anymore...
* wrap/python/swigpy.i: Remove.
* wrap/python/Makefile.am (_swigpy.la): Remove all references.
($(srcdir)/spot_wrap.cxx, $(srcdir)/buddy_wrap.cxx): Do not
use -noruntime.
2004-12-15 12:59:46 +00:00
Alexandre Duret-Lutz
73c42db23d * src/tgbatest/ltl2tgba.cc: Add option -P. 2004-12-14 18:40:57 +00:00
Denis Poitrenaud
60f50d66e0 * src/tgbaalgos/ndfs_result.hh: Define the trace output stream. 2004-12-14 14:10:56 +00:00
Denis Poitrenaud
964f856bb5 * src/tgbaalgos/ndfs_result.hh: New file factorizing the computation of
accepting runs for ndfs emptiness check algoritms.
* src/tgbaalgos/Makefile.am: Add it.
* src/tgbaalgos/magic.cc, src/tgbaalgos/se05.cc,
src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03opt.cc: Remove the old
result classes and use the new one.
2004-12-13 08:43:05 +00:00
Alexandre Duret-Lutz
abbd0eee07 * src/tgbaalgos/gtec/status.hh
(couvreur99_check_status::cycle_seed): New attribute.
* src/tgbaalgos/gtec/gtec.cc (couvreur99_check::check,
couvreur99_check_shy::check): Fill cycle_seed.
* src/tgbaalgos/gtec/ce.hh, src/tgbaalgos/gtec/ce.cc:
(couvreur99_check_result::accepting_run,
couvreur99_check_result::accepting_cycle): Revamp to compute a
cycle from the cycle_start, and then the shortest prefix to this
cycle.
2004-12-10 18:33:39 +00:00
Alexandre Duret-Lutz
27966c28f0 * src/tgbaalgos/gtec/nsheap.hh (numbered_state_heap::find): Clarify
comment.
2004-12-10 18:24:15 +00:00
Alexandre Duret-Lutz
3763c2c16b * src/tgba/tgbareduc.hh: Include tgbaalgos/gtec/nsheap.hh,
not tgbaalgos/gtec/status.hh.
2004-12-10 18:22:33 +00:00
Denis Poitrenaud
0222c5e186 * src/misc/timer.cc, src/tgbatest/randtgba.cc: Format the statistics. 2004-12-10 18:15:20 +00:00
Alexandre Duret-Lutz
0fc279c56e * src/tgbatest/emptchkr.test: Tune the "big degeneralized" test
so it actually explore some accepting automata.
2004-12-10 16:23:05 +00:00
Alexandre Duret-Lutz
9782b822f0 * src/tgbaalgos/gtec/gtec.hh, src/tgbaalgos/gtec/gtec.cc
(couvreur99_check_shy::couvreur99_check_shy): Add the group option,
and redefine todo as a list so it can be iterated over.
* src/tgbatest/ltl2tgba.cc, src/tgbatest/randtgba.cc: Introduce
couvreur99_shy- (for group=false) in addition to couvreur99_shy
(for group=true).
* iface/gspn/ssp.cc (couvreur99_check_ssp_shy_semi,
couvreur99_check_ssp_shy): Use group=true;
2004-12-10 16:16:38 +00:00
Alexandre Duret-Lutz
8b8257b157 * src/tgbaalgos/randomgraph.cc (random_graph): Do not use the
pointer of the state created as keys in sets; otherwise the graph
created depends on the memory layout.
2004-12-10 15:10:19 +00:00
Alexandre Duret-Lutz
d4b9ebaaff * src/tgba/tgbaexplicit.cc (tgba_explicit::create_transition):
Make sure to create the source state before the destination state.
2004-12-09 08:20:12 +00:00
Denis Poitrenaud
d645e0ac54 * src/tgbaalgos/emptiness.cc: Suppress a horrible space before a ')'. 2004-12-08 18:14:46 +00:00
Denis Poitrenaud
446b85a842 * src/tgba/tgbaexplicit.hh, src/tgba/tgbaexplicit.cc
(set_init_state): Return a pointer to the initial state.

(tgba_run_to_tgba): New function.
2004-12-08 18:03:38 +00:00
Alexandre Duret-Lutz
8279667300 * src/tgbaalgos/replayrun.cc (replay_tgba_run): More comments. 2004-12-08 15:44:17 +00:00
Alexandre Duret-Lutz
688587d700 * src/tgba/tgbaexplicit.cc, src/tgba/tgbaexplicit.hh
(tgba_explicit::create_transition(state*, const state*)): New function.
* src/tgbaalgos/randomgraph.cc, src/tgbaalgos/randomgraph.hh:
(random_graph): Revamp the algorithm to call rand() less often.
* src/tgbatest/randtgba.cc: Add option -0 to easy profiling.
2004-12-08 15:39:15 +00:00
Alexandre Duret-Lutz
7917841fbe * src/misc/random.hh: Add include guard. 2004-12-08 08:28:51 +00:00
Alexandre Duret-Lutz
541705a36a * src/misc/random.hh (nrand, bmrand, prand): New functions.
(barand): New class.
* src/misc/random.cc (nrand, bmrand, prand): New functions.
* wrap/python/spot.i: Process src/misc/random.hh.
2004-12-07 18:52:10 +00:00
Alexandre Duret-Lutz
d771a3a019 * src/misc/timer.cc: Do not include cassert, then. 2004-12-07 18:05:19 +00:00
Denis Poitrenaud
acfcade04a * src/tgbaalgos/tau03opt.cc: Fix a memory leak in the computation of
accepting runs

* src/misc/timer.hh: Include cassert.
2004-12-07 17:58:16 +00:00
Alexandre Duret-Lutz
e9b260c081 * src/misc/timer.cc: Include cassert. 2004-12-06 09:04:59 +00:00
Alexandre Duret-Lutz
668666d246 * src/misc/timer.hh, src/misc/timer.cc: New files.
* src/misc/Makefile.am (misc_HEADERS, libmisc_la_SOURCES): Add them.
* src/tgbatest/randtgba.cc: Use time_map to measure the algorithms.
Add the -R option.
* src/sanity/style.sh: Let me use `for (.*;;)'.
2004-11-29 16:50:49 +00:00
Denis Poitrenaud
0531dfe6e5 * src/tgbaalgos/tau03opt.cc: Add a first version of the computation of
accepting runs
2004-11-29 10:36:21 +00:00
Alexandre Duret-Lutz
e58743dbb7 * src/tgbaalgos/minimizerun.cc, src/tgbaalgos/minimizerun.hh
(minimize_run): Rename as ...
* src/tgbaalgos/reducerun.cc, src/tgbaalgos/reducerun.hh:
(reduce_run): ... this.
* src/tgbaalgos/Makefile.am, src/tgbatest/ltl2tgba.cc,
src/tgbatest/randtgba.cc: Adjust all references.
2004-11-29 10:01:08 +00:00
Alexandre Duret-Lutz
3c9f4c6d0d * src/tgbatest/emptchkr.test: Try degeneralized automata.
* src/tgbatest/randtgba.cc (main): Pass the correct automaton to
minimize_run().
2004-11-29 09:48:01 +00:00
Alexandre Duret-Lutz
13870bbaab * src/ltltest/equals.cc (main): Add option -E.
* src/ltltest/parseerr.test: Use `equals -E' instead of `readltl'
to check the parsing of erroneous strings without being sensible
to the ordering for formulae in memory.
2004-11-28 20:17:06 +00:00
Alexandre Duret-Lutz
896dc5afec * src/tgbatest/randtgba.cc (to_float): Use strtod() instead of
strtof() to please Solaris 9.
2004-11-28 19:42:10 +00:00
Alexandre Duret-Lutz
8b67d86e39 * configure.ac (AM_INIT_AUTOMAKE): Use option tar-ustar, we have
filenames longer than 99 bytes.
2004-11-28 18:08:08 +00:00
Alexandre Duret-Lutz
fdeea6dbf8 * wrap/python/tests/run.in: Do not override PYTHONPATH, just add
to it.
Report from Akim Demaille.
2004-11-28 17:12:21 +00:00
Alexandre Duret-Lutz
c0ed084e7d * src/sanity/style.test: Make sure grep supports the options put
into GREP_OPTIONS.
2004-11-28 15:25:01 +00:00
Alexandre Duret-Lutz
b61fab1eb0 * wrap/python/tests/run.in: Define DYLD_LIBRARY_PATH so that
Darwin finds non-installed libraries.
Report from Akim Demaille.
2004-11-28 13:52:27 +00:00
Alexandre Duret-Lutz
39ffa27338 * src/tgbatest/ltl2tgba.cc (syntax): Mention gv04 in help text. 2004-11-28 12:48:51 +00:00
Alexandre Duret-Lutz
a5608a7ec4 * src/tgbaalgos/minimizerun.cc: Shut up a GCC warning when assert
are disabled.
2004-11-27 01:03:43 +00:00
Alexandre Duret-Lutz
6724f4bfbb * src/tgbaalgos/minimizerun.hh, src/tgbaalgos/minimizerun.cc: New
files.
* src/tgbaalgos/Makefile.am (tgbaalgos_HEADERS,
libtgbaalgos_la_SOURCES): Add them/
* src/tgbatest/randtgba.cc, src/tgbatest/ltl2tgba.cc: Add option -m.
* src/tgbatest/emptchkr.test: Use -m.
2004-11-26 23:54:53 +00:00
Denis Poitrenaud
15329c5618 * src/tgbaalgos/magic.cc, src/tgbaalgos/magic.hh,
src/tgbaalgos/se05.cc, src/tgbaalgos/se05.hh,
src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03opt.hh,
src/tgbaalgos/tau03opt.cc: Fix comments and debug traces

* src/tgbatest/randtgba.cc: Adjust names of algorithms.
2004-11-25 14:40:17 +00:00
Alexandre Duret-Lutz
2143d6c4b6 * src/tgbatest/randtgba.cc: Add option -D. 2004-11-25 12:52:01 +00:00
Alexandre Duret-Lutz
f47f955a34 * src/tgbaalgos/emptiness.hh (emptiness_check, emptiness_check_result):
Add the TGBA considered as a protected attribute, and provide an
automaton() accessor.
* src/tgbaalgos/gv04.cc, src/tgbaalgos/magic.cc, src/tgbaalgos/se05.cc,
src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03opt.cc,
src/tgbaalgos/gtec/ce.cc, src/tgbaalgos/gtec/gtec.cc: Adjust to follow
this new interface.
2004-11-25 12:51:04 +00:00
Alexandre Duret-Lutz
16e54b2fc4 * src/tgbaalgos/bfssteps.hh, src/tgbaalgos/bfssteps.cc: Revert
previous change (bfs_steps_with_path_conditions turned up
useless), and document bfs_step.
2004-11-24 17:47:48 +00:00
Alexandre Duret-Lutz
18b22a5250 * src/tgbaalgos/bfssteps.hh (bfs_steps_with_path_conditions): New
class.
* src/tgbaalgos/bfssteps.cc: Remove includes that are now superfluous.
2004-11-24 16:31:21 +00:00