ltlsynt: replace -x minimization-lvl=N by --simplify
* bin/ltlsynt.cc: Implement the new option, and make it default to bisimulation with output assignment (a.k.a. bwoa). * NEWS, bin/spot-x.cc, doc/org/ltlsynt.org: Update the documentation. * spot/twaalgos/game.hh: Make bwoa the default. * tests/core/ltlsynt.test: Add and adjust test cases. * tests/python/games.ipynb: Adjust.
This commit is contained in:
parent
af5474d791
commit
0ac5bbc05d
7 changed files with 1538 additions and 1529 deletions
|
|
@ -136,23 +136,35 @@ Otherwise, conversion to parity game (represented by the blue zone) is
|
|||
done using one of several algorithms specified by the =--algo= option.
|
||||
The game is then solved, producing a strategy if the game is realizable.
|
||||
|
||||
If an =ltlsynt= is in =--realizability= mode, the process stops here
|
||||
If =ltlsynt= is in =--realizability= mode, the process stops here
|
||||
|
||||
In synthesis mode, the strategy is first simplified. How this is done
|
||||
can be fine-tuned with option =--simplify=:
|
||||
#+BEGIN_SRC sh :exports results
|
||||
ltlsynt --help | sed -n '/--simplify=/,/^$/p' | sed '$d'
|
||||
#+END_SRC
|
||||
#+RESULTS:
|
||||
: --simplify=no|bisim|bwoa|sat|bisim-sat|bwoa-sat
|
||||
: simplification to apply to the controler (no)
|
||||
: nothing, (bisim) bisimulation-based reduction,
|
||||
: (bwoa) bissimulation-based reduction with output
|
||||
: assignment, (sat) SAT-based minimization,
|
||||
: (bisim-sat) SAT after bisim, (bwoa-sat) SAT after
|
||||
: bwoa. Defaults to 'bwoa'.
|
||||
|
||||
In =--aiger= mode, the strategy is first simplified. How this is done
|
||||
is controled by option =-x minimize-level=N=. See the [[./man/spot-x.7.html][=spot-x=]](7)
|
||||
manpage for details.
|
||||
Finally, the strategy is encoded into [[http://fmv.jku.at/aiger/][AIGER]]. The =--aiger= option can
|
||||
take an argument to specify a type of encoding to use: by default
|
||||
it is =ite= for if-then-else, because it follows the structure of BDD
|
||||
used to encode the conditions in the strategy. An alternative encoding
|
||||
is =isop= where condition are first put into irredundant-sum-of-product,
|
||||
or =both= if both encodings should be tried. Additionally, these optiosn
|
||||
can accept the suffix =+ud= (use dual) to attempt to encode each condition
|
||||
and its negation and keep the smallest one, =+dc= (don't care) to take
|
||||
advantage of /don't care/ values in the output, and one of =+sub0=,
|
||||
=+sub1=, or =+sub2= to test various grouping of variables in the encoding.
|
||||
Multiple encodings can be tried by separating them using commas.
|
||||
For instance =--aiger=isop,isop+dc,isop+ud= will try three different encodings.
|
||||
take an argument to specify a type of encoding to use: by default it
|
||||
is =ite= for if-then-else, because it follows the structure of BDD
|
||||
used to encode the conditions in the strategy. An alternative
|
||||
encoding is =isop= where condition are first put into
|
||||
irredundant-sum-of-product, or =both= if both encodings should be
|
||||
tried. Additionally, these optiosn can accept the suffix =+ud= (use
|
||||
dual) to attempt to encode each condition and its negation and keep
|
||||
the smallest one, =+dc= (don't care) to take advantage of /don't care/
|
||||
values in the output, and one of =+sub0=, =+sub1=, or =+sub2= to test
|
||||
various grouping of variables in the encoding. Multiple encodings can
|
||||
be tried by separating them using commas. For instance
|
||||
=--aiger=isop,isop+dc,isop+ud= will try three different encodings.
|
||||
|
||||
* Other useful options
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue