postproc: introduce dba-simul, and have simul=0 disable all *-simul
* spot/twaalgos/postproc.cc, spot/twaalgos/postproc.hh: Implement the dba-simul option, and disable ba-simul, dba-simul, dpa-simul, det-simul when simul=0. * bin/ltlsynt.cc: Adjust. * bin/spot-x.cc: Document dba-simul and adjust other variables. * tests/core/minusx.test: Add some test.
This commit is contained in:
parent
0744052bc0
commit
23323b743f
6 changed files with 53 additions and 19 deletions
|
|
@ -69,13 +69,14 @@ namespace spot
|
|||
degen_lowinit_ = opt->get("degen-lowinit", 0);
|
||||
degen_remscc_ = opt->get("degen-remscc", 1);
|
||||
det_scc_ = opt->get("det-scc", 1);
|
||||
det_simul_ = opt->get("det-simul", 1);
|
||||
det_simul_ = opt->get("det-simul", -1);
|
||||
det_stutter_ = opt->get("det-stutter", 1);
|
||||
det_max_states_ = opt->get("det-max-states", -1);
|
||||
det_max_edges_ = opt->get("det-max-edges", -1);
|
||||
simul_ = opt->get("simul", -1);
|
||||
simul_method_ = opt->get("simul-method", -1);
|
||||
dpa_simul_ = opt->get("dpa-simul", -1);
|
||||
dba_simul_ = opt->get("dba-simul", -1);
|
||||
scc_filter_ = opt->get("scc-filter", -1);
|
||||
ba_simul_ = opt->get("ba-simul", -1);
|
||||
tba_determinisation_ = opt->get("tba-det", 0);
|
||||
|
|
@ -266,9 +267,14 @@ namespace spot
|
|||
if (simul_ < 0)
|
||||
simul_ = (level_ == Low) ? 1 : 3;
|
||||
if (ba_simul_ < 0)
|
||||
ba_simul_ = (level_ == High) ? 3 : 0;
|
||||
ba_simul_ = (level_ == High) ? simul_ : 0;
|
||||
int detaut_simul_default = (level_ != Low && simul_ > 0) ? 1 : 0;
|
||||
if (dpa_simul_ < 0)
|
||||
dpa_simul_ = (level_ != Low) ? 1 : 0;
|
||||
dpa_simul_ = detaut_simul_default;
|
||||
if (dba_simul_ < 0)
|
||||
dba_simul_ = detaut_simul_default;
|
||||
if (det_simul_ < 0)
|
||||
det_simul_ = simul_ > 0;
|
||||
if (scc_filter_ < 0)
|
||||
scc_filter_ = 1;
|
||||
if (type_ == BA)
|
||||
|
|
@ -530,7 +536,7 @@ namespace spot
|
|||
// There is no point in running the reverse simulation on
|
||||
// a deterministic automaton, since all prefixes are
|
||||
// unique.
|
||||
dba = simulation(tmp);
|
||||
dba = do_simul(tmp, dba_simul_);
|
||||
}
|
||||
if (dba && PREF_ == Deterministic)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -247,7 +247,7 @@ namespace spot
|
|||
bool degen_lowinit_ = false;
|
||||
bool degen_remscc_ = true;
|
||||
bool det_scc_ = true;
|
||||
bool det_simul_ = true;
|
||||
int det_simul_ = -1;
|
||||
bool det_stutter_ = true;
|
||||
int det_max_states_ = -1;
|
||||
int det_max_edges_ = -1;
|
||||
|
|
@ -255,6 +255,7 @@ namespace spot
|
|||
int simul_method_ = -1;
|
||||
int simul_trans_pruning_ = 512;
|
||||
int dpa_simul_ = -1;
|
||||
int dba_simul_ = -1;
|
||||
int scc_filter_ = -1;
|
||||
int ba_simul_ = -1;
|
||||
bool tba_determinisation_ = false;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue