simulation: Fix a bug reported by Étienne Renault.

* src/tgbatest/renault.test: New file.
* src/tgbatest/Makefile.am: Add it.
* src/tgbaalgos/simulation.cc: Fix the bug.
This commit is contained in:
Thomas Badie 2012-09-26 17:09:43 +02:00 committed by Alexandre Duret-Lutz
parent f01d30eb91
commit 467bf378a8
3 changed files with 70 additions and 1 deletions

View file

@ -394,7 +394,17 @@ namespace spot
free_var_.pop();
}
assert(bdd_lstate_.size() == used_var_.size());
for (int i = 0; i > nb_new_color; --i)
{
assert(!used_var_.empty());
free_var_.push(bdd_var(used_var_.front()));
used_var_.pop_front();
}
assert((bdd_lstate_.size() == used_var_.size())
|| (bdd_lstate_.find(bddfalse) != bdd_lstate_.end()
&& bdd_lstate_.size() == used_var_.size() + 1));
// Now we make a temporary hash_table which links the tuple
// "C^(i-1), N^(i-1)" to the new class coloring. If we