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
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2017-2020 Laboratoire de Recherche et Développement
|
||||
// Copyright (C) 2017-2021 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -587,11 +587,10 @@ int
|
|||
main(int argc, char **argv)
|
||||
{
|
||||
return protected_main(argv, [&] {
|
||||
extra_options.set("simul", 0);
|
||||
extra_options.set("ba-simul", 0);
|
||||
extra_options.set("det-simul", 0);
|
||||
extra_options.set("tls-impl", 1);
|
||||
extra_options.set("wdba-minimize", 2);
|
||||
extra_options.set("simul", 0); // no simulation, except...
|
||||
extra_options.set("dpa-simul", 1); // ... after determinization
|
||||
extra_options.set("tls-impl", 1); // no automata-based implication check
|
||||
extra_options.set("wdba-minimize", 2); // minimize only syntactic oblig
|
||||
const argp ap = { options, parse_opt, nullptr,
|
||||
argp_program_doc, children, nullptr, nullptr };
|
||||
if (int err = argp_parse(&ap, argc, argv, ARGP_NO_HELP, nullptr, nullptr))
|
||||
|
|
|
|||
|
|
@ -123,15 +123,16 @@ will be returned.")},
|
|||
{ DOC("det-scc", "Set to 0 to disable scc-based optimizations in \
|
||||
the determinization algorithm.") },
|
||||
{ DOC("det-simul", "Set to 0 to disable simulation-based optimizations in \
|
||||
the determinization algorithm. (Do not confuse this with option dpa-simul, \
|
||||
the determinization algorithm. This is enabled by default, unless \"simul\" \
|
||||
is set to 0. (Do not confuse this with option \"dpa-simul\", \
|
||||
which runs a simulation-based reduction after determinization.)") },
|
||||
{ DOC("det-stutter", "Set to 0 to disable optimizations based on \
|
||||
the stutter-invariance in the determinization algorithm.") },
|
||||
{ DOC("dpa-simul", "Set to 1 to enable simulation-based reduction after \
|
||||
running a Safra-like determinization to obtain a DPA, or 0 to disable. By \
|
||||
default is is enabled at all levels except low. (Do not confuse this with \
|
||||
option det-simul, which uses a simulation-based optimizations during \
|
||||
the determinization.)") },
|
||||
default this is disabled at low level or if parameter \"simul\" is set to 0. \
|
||||
(Do not confuse this with option det-simul, which uses a simulation-based \
|
||||
optimizations during the determinization.)") },
|
||||
{ DOC("gen-reduce-parity", "When the postprocessor routines are \
|
||||
configured to output automata with any kind of acceptance condition, \
|
||||
but they happen to process an automaton with parity acceptance, they \
|
||||
|
|
@ -160,7 +161,8 @@ only to Büchi automata for historical reasons; it really applies to any \
|
|||
state-based acceptance nowadays. \
|
||||
Set to 1 to use only direct simulation. Set to 2 to use only reverse \
|
||||
simulation. Set to 3 to iterate both direct and reverse simulations. \
|
||||
The default is 3 in --high mode, and 0 otherwise.") },
|
||||
The default is the value of parameter \"simul\" in --high mode, and 0 \
|
||||
therwise.") },
|
||||
{ DOC("simul-max", "Number of states above which simulation-based \
|
||||
reductions are skipped. Defaults to 4096. Set to 0 to disable. This \
|
||||
applies to all simulation-based optimization, including thoses of the \
|
||||
|
|
@ -193,6 +195,9 @@ or when det-max-states is set.") },
|
|||
{ DOC("tba-det", "Set to 1 to attempt a powerset determinization \
|
||||
if the TGBA is not already deterministic. Doing so will degeneralize \
|
||||
the automaton. This is disabled by default, unless sat-minimize is set.") },
|
||||
{ DOC("dba-simul", "Set to 1 to enable simulation-based reduction after \
|
||||
running the powerset determinization enabled by \"tba-det\". By default this \
|
||||
is disabled at low level or if parameter \"simul\" is set to 0.") },
|
||||
{ DOC("sat-minimize",
|
||||
"Set to a value between 1 and 4 to enable SAT-based minimization \
|
||||
of deterministic ω-automata. If the input has n states, a SAT solver is \
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue