* src/tgba/succiterconcrete.cc (tgba_succ_iterator_concrete::next):
Fix computation of states sharing the same accepting state.
This commit is contained in:
parent
2a8b1b7471
commit
d14eee25bf
2 changed files with 17 additions and 3 deletions
|
|
@ -1,5 +1,8 @@
|
||||||
2003-07-09 Alexandre Duret-Lutz <aduret@src.lip6.fr>
|
2003-07-09 Alexandre Duret-Lutz <aduret@src.lip6.fr>
|
||||||
|
|
||||||
|
* src/tgba/succiterconcrete.cc (tgba_succ_iterator_concrete::next):
|
||||||
|
Fix computation of states sharing the same accepting state.
|
||||||
|
|
||||||
Make sure we only output one initial state in LBTT's output.
|
Make sure we only output one initial state in LBTT's output.
|
||||||
* src/tgbaalgos/lbtt.cc (fill_todo): Add the 'first' argument
|
* src/tgbaalgos/lbtt.cc (fill_todo): Add the 'first' argument
|
||||||
to designate initial states.
|
to designate initial states.
|
||||||
|
|
|
||||||
|
|
@ -100,10 +100,21 @@ namespace spot
|
||||||
bdd prop = bdd_exist(cube, data_.acc_set);
|
bdd prop = bdd_exist(cube, data_.acc_set);
|
||||||
// prop = (!a)&b
|
// prop = (!a)&b
|
||||||
current_acc_ = bdd_forall(bdd_restrict(as, prop), data_.var_set);
|
current_acc_ = bdd_forall(bdd_restrict(as, prop), data_.var_set);
|
||||||
// acc = (Acc[a] | Acc[b])
|
// current_acc_ = (Acc[a] | Acc[b])
|
||||||
bdd all = as & current_acc_;
|
assert(current_acc_ != bddfalse);
|
||||||
|
// Find other transitions included in each of these
|
||||||
|
// accepting sets.
|
||||||
|
bdd all = bddtrue;
|
||||||
|
bdd acc = current_acc_;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
bdd one_acc = bdd_satone(acc);
|
||||||
|
acc &= !one_acc;
|
||||||
|
all &= bdd_relprod(as, one_acc, data_.acc_set);
|
||||||
|
}
|
||||||
|
while (acc != bddfalse);
|
||||||
// all = (a | (!a)&b) & (Acc[a] | Acc[b])
|
// all = (a | (!a)&b) & (Acc[a] | Acc[b])
|
||||||
current_ = bdd_exist(all, data_.acc_set) & dest;
|
current_ = all & dest;
|
||||||
// current_ = (a | (!a)&b) & (Next...)
|
// current_ = (a | (!a)&b) & (Next...)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue