* src/ltltest/Makefile.am (AM_CXXFLAGS): New variable.

* tgba/bdddict.hh (bdd_dict::register_propositions,
bdd_dict::register_accepting_variables): New methods.
* src/bdddict.cc: Likewise.
* tgba/tgbaexplicit.cc (tgba_explicit::add_conditions,
tgba_explicit::add_accepting_conditions): New methods.
(tgba_explicit::get_init_state): Add an "empty" initial
state to empty automata.
* tgba/tgbaexplicit.hh: (tgba_explicit::add_conditions,
tgba_explicit::add_accepting_conditions): New methods.
* tgbaalgos/Makefiles.am (tgbaalgos_HEADERS, libtgbaalgos_la_SOURCES):
Add dupexp.hh and dupexp.cc.
* tgbaalgos/dupexp.hh, tgbaalgos/dupexp.cc: New files.
* tgbatest/Makefile.am (AM_CXXFLAGS): New variable.
(check_SCRIPTS): Add dupexp.test.
(CLEANFILES): Add output1 and output2.
* tgbatest/dupexp.test: New file.
* tgbatest/ltl2tgba.cc: Handle -s and -S.
* tgbatest/tgbaread.cc: Remove unused variable exit_code.
This commit is contained in:
Alexandre Duret-Lutz 2003-11-14 16:44:12 +00:00
parent 51ff9f8dda
commit 982c5efc6c
13 changed files with 271 additions and 8 deletions

View file

@ -41,6 +41,20 @@ namespace spot
return num;
}
void
bdd_dict::register_propositions(bdd f, const void* for_me)
{
if (f == bddtrue || f == bddfalse)
return;
vf_map::iterator i = var_formula_map.find(bdd_var(f));
assert(i != var_formula_map.end());
var_refs[i->first].insert(for_me);
register_propositions(bdd_high(f), for_me);
register_propositions(bdd_low(f), for_me);
}
int
bdd_dict::register_state(const ltl::formula* f, const void* for_me)
{
@ -88,6 +102,21 @@ namespace spot
return num;
}
void
bdd_dict::register_accepting_variables(bdd f, const void* for_me)
{
if (f == bddtrue || f == bddfalse)
return;
vf_map::iterator i = acc_formula_map.find(bdd_var(f));
assert(i != acc_formula_map.end());
var_refs[i->first].insert(for_me);
register_accepting_variables(bdd_high(f), for_me);
register_accepting_variables(bdd_low(f), for_me);
}
void
bdd_dict::register_all_variables_of(const void* from_other,
const void* for_me)