Add support for finite behaviors in the DVE interface.

* iface/dve2/dve2.hh (load_dve2): Take a "dead" argument.
* iface/dve2/dve2.cc (callback_context): Add a destructor
to simplify...
(dve2_succ_iterator::~dve2_succ_iterator) ... this one.
(convert_aps): Skip the dead proposition.
(dve2_kripke::dve2_kripke): Take a dead argument, and
setup alive_prop and dead_prop.
(compute_state_condition, get_succ): Use a cache for the
conditions and successor of the last state, to share
some work between these two function.  Add loops on dead
states.
(load_dve2): Pass dead to dve2_kripke and convert_aps.
* iface/dve2/dve2check.cc: Add a -dDEAD option.
* iface/dve2/finite.test, iface/dve2/finite.dve: New file.
* iface/dve2/Makefile.am: Declare them.
This commit is contained in:
Alexandre Duret-Lutz 2011-03-10 22:37:44 +01:00
parent ef976c93d0
commit cb83e855a4
7 changed files with 246 additions and 20 deletions

View file

@ -38,8 +38,8 @@ dve2check_LDADD = libspotdve2.la
check_SCRIPTS = defs
TESTS = dve2check.test
EXTRA_DIST = $(TESTS) beem-peterson.4.dve
TESTS = dve2check.test finite.test
EXTRA_DIST = $(TESTS) beem-peterson.4.dve finite.dve
distclean-local:
rm -rf $(TESTS:.test=.dir)