ltlcross, ltldo: add a --relabel option

* bin/common_trans.cc, bin/common_trans.hh: Add the --relabel option.
* bin/ltlcross.cc, bin/ltldo.cc: Implement it.
* doc/org/ltldo.org, NEWS: Document it.
* tests/core/ltl3ba.test: Test it.
This commit is contained in:
Alexandre Duret-Lutz 2017-01-13 21:19:17 +01:00
parent b0ba6190b7
commit 43520a3e87
7 changed files with 48 additions and 10 deletions

View file

@ -992,10 +992,12 @@ namespace
{
static unsigned round = 0;
// If we need LBT atomic proposition in any of the input or
// output, relabel the formula.
if ((!f.has_lbt_atomic_props() &&
(runner.has('l') || runner.has('L') || runner.has('T')))
if (opt_relabel
// If we need LBT atomic proposition in any of the input or
// output, relabel the formula.
|| (!f.has_lbt_atomic_props() &&
(runner.has('l') || runner.has('L') || runner.has('T')))
// Likewise for Spin
|| (!f.has_spin_atomic_props() &&
(runner.has('s') || runner.has('S'))))
f = spot::relabel(f, spot::Pnn);