Improving split and reorganizing
* spot/twaalgos/synthesis.cc, spot/twaalgos/synthesis.hh: New files regrouping the functionnalities split and apply_strategy for synthesis * python/spot/impl.i, spot/twaalgos/Makefile.am: Add them. * spot/twaalgos/split.cc, spot/twaalgos/split.hh: No longer contains the splits necessary for for synthesis, moved to spot/twaalgos/synthesis.cc, spot/twaalgos/split.hh Split is now faster and reduces the number of intermediate states, reducing the overall size of the arena * spot/misc/game.cc, spot/misc/game.hh: Renaming propagate_players to alternate_players. * tests/core/ltlsynt.test, tests/python/split.py: Update tests. * bin/ltlsynt.cc: Adjust to new split. Swap order of split and to_parity for lar.
This commit is contained in:
parent
ca043bd62d
commit
29055c8109
11 changed files with 641 additions and 308 deletions
|
|
@ -806,13 +806,13 @@ namespace spot
|
|||
}
|
||||
}
|
||||
|
||||
void propagate_players(spot::twa_graph_ptr& arena,
|
||||
void alternate_players(spot::twa_graph_ptr& arena,
|
||||
bool first_player, bool complete0)
|
||||
{
|
||||
auto um = arena->acc().unsat_mark();
|
||||
if (!um.first)
|
||||
throw std::runtime_error
|
||||
("propagate_players(): game winning condition is a tautology");
|
||||
("alternate_players(): game winning condition is a tautology");
|
||||
|
||||
unsigned sink_env = 0;
|
||||
unsigned sink_con = 0;
|
||||
|
|
@ -843,7 +843,7 @@ namespace spot
|
|||
{
|
||||
delete owner;
|
||||
throw
|
||||
std::runtime_error("propagate_players(): odd cycle detected");
|
||||
std::runtime_error("alternate_players(): odd cycle detected");
|
||||
}
|
||||
}
|
||||
if (complete0 && !(*owner)[src] && missing != bddfalse)
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ namespace spot
|
|||
/// If \a complete0 is set, ensure that states of player 0 are
|
||||
/// complete.
|
||||
SPOT_API
|
||||
void propagate_players(spot::twa_graph_ptr& arena,
|
||||
void alternate_players(spot::twa_graph_ptr& arena,
|
||||
bool first_player = false,
|
||||
bool complete0 = true);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue