ltlsynt: generalization of the bypass

* spot/twaalgos/synthesis.cc, spot/twaalgos/synthesis.hh: generalize the
  bypass and avoid to construct a strategy when we want realizability.
* bin/ltlsynt.cc: adapt for realizability
* tests/core/ltlsynt.test: update tests
This commit is contained in:
Florian Renkin 2022-03-22 14:50:49 +01:00
parent 0a6b627914
commit 328cf95816
4 changed files with 212 additions and 197 deletions

View file

@ -376,7 +376,7 @@ namespace
// we never use the direct approach
if (!want_game)
m_like =
spot::try_create_direct_strategy(*sub_f, *sub_o, *gi);
spot::try_create_direct_strategy(*sub_f, *sub_o, *gi, !opt_real);
switch (m_like.success)
{
@ -431,7 +431,8 @@ namespace
// the direct approach yielded a strategy
// which can now be minimized
// We minimize only if we need it
assert(m_like.mealy_like && "Expected success but found no mealy!");
assert(opt_real ||
(m_like.mealy_like && "Expected success but found no mealy!"));
if (!opt_real)
{
// Keep the machine split for aiger