Commit graph

20 commits

Author SHA1 Message Date
Guillaume SADEGH
1d58493be3 Update to compile with the Intel compiler. 2008-12-18 23:41:10 +01:00
Alexandre Duret-Lutz
3f22bc17ff * src/tgbaalgos/tau03opt.cc: Include <vector>.
(tau03_opt_search): Add option "ordering" (off by default).
If enabled, initialize an explicit ordering for acceptance
conditions into the new member "cond" (a vector of bdds).
(project_acc): New helper function for projecting a set of
acceptance conditions to a subset that maximizes the number
of initial consecutive conditions covered by the set in the
condition ordering.
(dfs_blue): Implement the ordering heuristic.
(dfs_red): Use a sentinel in condition_stack to avoid explicit
checks for the stack's emptiness.
Consider also the conditions in acc when checking for the
completion of an accepting cycle.
Fix the implementation of condition heuristic.
Implement the ordering heuristic.
Simplify the removal of elements from condition_stack (due to
the way in which elements are pushed on the stack, there can
be at most one element with a given depth in the stack at any
one time).
2008-02-25 14:36:55 +01:00
Alexandre Duret-Lutz
dd1bc78786 * src/tgbaalgos/tau03opt.cc (tau03_opt_search): Add options "weights"
and "redweights" (on by default).
2005-02-22 17:37:33 +00:00
Alexandre Duret-Lutz
fa9614e997 * src/tgbaalgos/tau03opt.cc (tau03_opt_search): Do not
account for the size of condition_stack.
2005-02-22 13:43:47 +00:00
Alexandre Duret-Lutz
a2cbe9cab8 * src/sanity/style.test: Catch occurrences of "accepting condition".
* bench/emptchk/ltl-human.sh, bench/emptchk/ltl-random.sh,
src/sanity/style.test, src/tgba/bdddict.cc,
src/tgba/succiterconcrete.hh, src/tgba/tgbabddcoredata.hh,
src/tgba/tgbareduc.cc, src/tgba/tgbareduc.hh,
src/tgbaalgos/gv04.cc, src/tgbaalgos/gv04.hh,
src/tgbaalgos/magic.cc, src/tgbaalgos/magic.hh,
src/tgbaalgos/se05.cc, src/tgbaalgos/se05.hh,
src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03.hh,
src/tgbaalgos/tau03opt.cc, src/tgbaalgos/tau03opt.hh,
src/tgbatest/dfs.test: Replace them by "acceptance condition".
2005-02-20 22:41:11 +00:00
Alexandre Duret-Lutz
ff8fe6802b * src/tgbaalgos/tau03opt.cc (tau03_opt_search): Implement the
"condition heuristic".  Suggested by Heikki Tauriainen.
* src/tgbatest/randtgba.cc: Test it.
2005-02-18 14:13:26 +00:00
Alexandre Duret-Lutz
f3effb9da0 * src/misc/optionmap.cc, src/misc/optionmap.hh (option_map::get,
option_map::set): Handle default values.
(anonymous::to_int): Do not print anything.
* src/tgbaalgos/gv04.cc, src/tgbaalgos/gv04.hh,
src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03.hh,
src/tgbaalgos/tau03opt.cc, src/tgbaalgos/tau03opt.hh,
src/tgbaalgos/ce.cc, src/tgbaalgos/ce.hh: Take an option_map in
the constructor.
* src/tgbaalgos/gtec.cc, src/tgbaalgos/gtec.hh: Likewise.  Handle
the "poprem", "group", and "shy" options via the option_map.
Supply a couvreur99() wrapper to the shy/non-shy variant.
* src/tgbatest/ltl2tgba.cc, src/tgbatest/randtgba.cc,
iface/gspn/ssp.cc: Adjust.
2005-02-16 18:53:18 +00:00
Alexandre Duret-Lutz
7c07f3149f * src/tgbaalgos/ndfs_result.hxx (ndfs_result, acss_interface):
Conditionally inherit from acss_statistics.
* src/tgbaalgos/magic.cc, src/tgbaalgos/se05.cc, src/tgbaalgos/tau03.cc,
src/tgbaalgos/tau03opt.cc: Define Has_Size in all heaps.
2005-01-07 10:27:17 +00:00
Denis Poitrenaud
603b49e216 * src/ltltest/randltl.cc: Include cassert.
* src/tgbaalgos/ndfs_result.hxx: Implement the spot::acss_statistics
interface.
* src/tgbaalgos/magic.cc, src/tgbaalgos/se05.cc, src/tgbaalgos/tau03.cc,
src/tgbaalgos/tau03opt.cc: Add to each heap class a method returning its
size.
2005-01-06 15:54:48 +00:00
Alexandre Duret-Lutz
b054139e6d * doc/Doxyfile.in (FILE_PATTERNS): Remove *.hxx.
* src/sanity/80columns.test, src/sanity/style.test: Process *.hxx files.
* src/tgbaalgos/ndfs_result.hh: Rename as ..
* src/tgbaalgos/ndfs_result.hxx: ... this, so it does not get
documented (and so Doxygen do not complain).
* src/tgbaalgos/magic.cc, src/tgbaalgos/se05.cc, src/tgbaalgos/tau03.cc,
src/tgbaalgos/tau03opt.cc: Adjust include.
* src/tgbaalgos/Makefile.am: Rename ndfs_result.hh as ndfs_result.hxx
and do not install it, this is a private header.
2005-01-03 17:39:43 +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
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
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
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
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
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
Denis Poitrenaud
976a86ba2b * src/tgbaalgos/tau03opt.cc: Fix a warning. 2004-11-23 13:54:34 +00:00
Denis Poitrenaud
0f15d28fe8 * src/tgbaalgos/emptiness_stats.hh, src/tgbaalgos/weight.cc,
src/tgbaalgos/weight.hh: New files.
* src/tgbaalgos/Makefile.am: Add them.
* src/tgbaalgos/magic.cc, src/tgbaalgos/se05.cc,
src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03opt.cc,
src/tgbaalgos/gtec/gtec.cc, src/tgbaalgos/gtec/status.cc,
src/tgbaalgos/gtec/status.hh, : Add emptiness check statistics
capability.
* src/tgbatest/randtgba.cc: Print these statistics.
* src/tgbatest/ltl2tgba.cc: tau03opt search can deal without acceptance
condition.
* src/tgbatest/emptchk.test: Test tau03opt search.
2004-11-22 12:06:03 +00:00
Alexandre Duret-Lutz
fc775a8b1f * src/tgbaalgos/magic.hh, src/tgbaalgos/magic.cc,
src/tgbaalgos/se05.hh, src/tgbaalgos/se05.cc,
src/tgbaalgos/tau03.hh, src/tgbaalgos/tau03.cc,
src/tgbaalgos/tau03opt.hh, src/tgbaalgos/tau03opt.cc: Fix
copyright year, and do not include <iterator>.
2004-11-19 13:29:39 +00:00
Denis Poitrenaud
121d582480 * src/tgbaalgos/se05.hh, src/tgbaalgos/tau03.hh: Typo.
* src/tgbaalgos/tau03.cc: Suppress optimisations, the algorithm is now
the original one.
* src/tgbaalgos/tau03opt.hh, src/tgbaalgos/tau03opt.cc: New files
implementing most of all the optimisations of tau03.
* src/tgbaalgos/Makefile.am: Add them.
* src/tgbatest/ltl2tgba.cc, src/tgbatest/randtgba.cc: Make them public.
* src/tgbatest/tba_samples_from_spin.test: Test them.
2004-11-18 16:09:41 +00:00