Commit graph

617 commits

Author SHA1 Message Date
philipp
133896d584 game: reimplement parity game solving
* spot/misc/game.cc, spot/misc/game.hh: More efficient implementation
of Zielonka's algorithm to solve parity games.  Now supports SCC
decomposition and efficient handling of certain special cases.
* doc/org/concepts.org: Document "strategy" and "state-winner"
properties.
* bin/ltlsynt.cc, tests/python/paritygame.ipynb: Adjust.
* tests/core/ltlsynt.test: Add more tests.
2020-09-22 23:15:30 +02:00
Alexandre Duret-Lutz
ef1c49dafd org: greatly reduce the size of satmin.svg
* doc/org/satmin.tex: Use a plain background color instead of some
hashed lines pattern.  This reduces the size of the resulting SVG
file from 1.9MB to 50kB after minification.
* doc/org/satmin.org: Adjust to mention autfilt.
2020-09-10 15:28:55 +02:00
Alexandre Duret-Lutz
760bde093b python: add some parity-game bindings
* python/spot/impl.i: Process game.hh.
* spot/misc/game.cc, spot/misc/game.hh: Make the output of
parity_game_solve() a solved_game object for easier manipulation in
Python.
* bin/ltlsynt.cc: Adjust usage.
* tests/python/paritygame.ipynb: New file.
* tests/Makefile.am, doc/org/tut.org: Add it.
* NEWS: Mention these bindings.
2020-09-09 15:32:44 +02:00
Alexandre Duret-Lutz
41d088ea95 dot: add support for two-player games
* spot/twaalgos/dot.cc: Honor the "state-player" property and draw
player 1 states using diamonds.
* doc/org/hoa.org: Show an example.
* tests/core/gamehoa.test: Make sure diamond is output.
* NEWS: Mention this.
2020-09-08 20:20:48 +02:00
Alexandre Duret-Lutz
ea9384dd4b extend HOA I/O to preserve the state-player property
* spot/parseaut/parseaut.yy, spot/parseaut/scanaut.ll,
spot/twaalgos/hoa.cc: Add input and output support.
* doc/org/hoa.org: Document the HOA extension.
* bin/ltlsynt.cc: Add a --print-game-hoa option to
produce such format.
* tests/core/gamehoa.test: New file to test this.
* tests/Makefile.am: Add it.
* NEWS: Mention this new feature.
2020-09-08 20:20:48 +02:00
Alexandre Duret-Lutz
25c75c55b1 game: git rid of the parity_game class
This class was a simple wrapper on top of twa_graph_ptr, but it's
easier to simply use a twa_graph_ptr with a "state-player" property
instead, this way we will be able to modify the automata I/O routines
to support games directly.

* spot/misc/game.cc, spot/misc/game.hh: Rewrite the solver and
pg_printer interface.
* bin/ltlsynt.cc: Adjust.
* NEWS: Mention this change.
* doc/org/concepts.org: Mention the state-player property.
2020-09-08 20:20:48 +02:00
Alexandre Duret-Lutz
6379d9889f * doc/org/spot.css: Remove margin-bottom from pre.example. 2020-09-07 16:06:47 +02:00
Alexandre Duret-Lutz
2879c1d8e2 Merge branch 'master' into next 2020-09-07 10:56:53 +02:00
Alexandre Duret-Lutz
b956bfe90f Release Spot 2.9.4
* NEWS, configure.ac, doc/org/setup.org: Bump to version 2.9.4.
2020-09-07 10:52:51 +02:00
Alexandre Duret-Lutz
af108d0556 * doc/org/ioltl.org: Document prefix operators. 2020-08-03 09:27:16 +02:00
Alexandre Duret-Lutz
b013077af3 doc: improve css
* doc/org/spot.css: Display input and output closer and separate them
with dash.
2020-08-03 09:25:09 +02:00
Alexandre Duret-Lutz
50a33cbc8c org: fix shadow of hierarchy figure
* doc/org/hierarchy.tex: Draw the shadow manually, so that it is part
of the bounding box when we extract the SVG.
2020-08-03 09:24:16 +02:00
Alexandre Duret-Lutz
f179c79409 * doc/org/ioltl.org: Document prefix operators. 2020-07-31 12:05:32 +02:00
Alexandre Duret-Lutz
cba762a60f doc: improve css
* doc/org/spot.css: Display input and output closer and separate them
with dash.
2020-07-27 17:05:58 +02:00
Alexandre Duret-Lutz
91db0e1e29 org: fix shadow of hierarchy figure
* doc/org/hierarchy.tex: Draw the shadow manually, so that it is part
of the bounding box when we extract the SVG.
2020-07-23 15:46:21 +02:00
Alexandre Duret-Lutz
1784671ca1 Merge branch 'master' into next 2020-07-22 08:13:26 +02:00
Alexandre Duret-Lutz
0b6a7998af Release Spot 2.9.3
* configure.ac, NEWS, doc/org/setup.org: Set version to 2.9.3.
2020-07-22 08:09:56 +02:00
Alexandre Duret-Lutz
cc498e7080 org: run a spell checker on the documentation
* doc/org/autcross.org, doc/org/autfilt.org, doc/org/citing.org,
doc/org/compile.org, doc/org/concepts.org, doc/org/csv.org,
doc/org/dstar2tgba.org, doc/org/genaut.org, doc/org/genltl.org,
doc/org/hierarchy.org, doc/org/hoa.org, doc/org/index.org,
doc/org/install.org, doc/org/ltl2tgba.org, doc/org/ltl2tgta.org,
doc/org/ltlcross.org, doc/org/ltlfilt.org, doc/org/ltlgrind.org,
doc/org/ltlsynt.org, doc/org/oaut.org, doc/org/randaut.org,
doc/org/randltl.org, doc/org/satmin.org, doc/org/tut.org,
doc/org/tut01.org, doc/org/tut02.org, doc/org/tut03.org,
doc/org/tut04.org, doc/org/tut10.org, doc/org/tut11.org,
doc/org/tut12.org, doc/org/tut20.org, doc/org/tut21.org,
doc/org/tut22.org, doc/org/tut23.org, doc/org/tut24.org,
doc/org/tut30.org, doc/org/tut31.org, doc/org/tut50.org,
doc/org/tut51.org, doc/org/tut52.org, doc/org/tut90.org,
doc/org/upgrade2.org: Run ispell-buffer on all these.
* bin/autfilt.cc, python/spot/__init__.py: Fix typos in
help texts noticed while spell-checking the org files.
2020-07-21 22:21:58 +02:00
Alexandre Duret-Lutz
0342161b20 org: fix python execution with in-tree source and Swig4
* doc/org/.dir-locals.el.in, doc/org/init.el.in: Set the
SPOT_UNINSTALLED envvar, as we already do in the test suite.
2020-07-21 22:20:21 +02:00
Alexandre Duret-Lutz
f3b8bf8e56 org: run a spell checker on the documentation
* doc/org/autcross.org, doc/org/autfilt.org, doc/org/citing.org,
doc/org/compile.org, doc/org/concepts.org, doc/org/csv.org,
doc/org/dstar2tgba.org, doc/org/genaut.org, doc/org/genltl.org,
doc/org/hierarchy.org, doc/org/hoa.org, doc/org/index.org,
doc/org/install.org, doc/org/ltl2tgba.org, doc/org/ltl2tgta.org,
doc/org/ltlcross.org, doc/org/ltlfilt.org, doc/org/ltlgrind.org,
doc/org/ltlsynt.org, doc/org/oaut.org, doc/org/randaut.org,
doc/org/randltl.org, doc/org/satmin.org, doc/org/tut.org,
doc/org/tut01.org, doc/org/tut02.org, doc/org/tut03.org,
doc/org/tut04.org, doc/org/tut10.org, doc/org/tut11.org,
doc/org/tut12.org, doc/org/tut20.org, doc/org/tut21.org,
doc/org/tut22.org, doc/org/tut23.org, doc/org/tut24.org,
doc/org/tut30.org, doc/org/tut31.org, doc/org/tut50.org,
doc/org/tut51.org, doc/org/tut52.org, doc/org/tut90.org,
doc/org/upgrade2.org: Run ispell-buffer on all these.
* bin/autfilt.cc, python/spot/__init__.py: Fix typos in
help texts noticed while spell-checking the org files.
2020-07-21 22:18:03 +02:00
Alexandre Duret-Lutz
0fbc83e9c2 org: fix python execution with in-tree source and Swig4
* doc/org/.dir-locals.el.in, doc/org/init.el.in: Set the
SPOT_UNINSTALLED envvar, as we already do in the test suite.
2020-07-21 22:18:03 +02:00
Alexandre Duret-Lutz
1a0c8a44ba Merge branch 'master' into next 2020-07-21 08:28:13 +02:00
Alexandre Duret-Lutz
66a6fbdcb1 Release Spot 2.9.2
* configure.ac, NEWS, doc/org/setup.org: Set version to 2.9.2.
2020-07-21 08:22:06 +02:00
Alexandre Duret-Lutz
df39000d8e * doc/org/setup.org: Fix release date. 2020-07-20 14:33:04 +02:00
Alexandre Duret-Lutz
4f23097619 build in C++17 mode by default
* configure.ac: Activate C++17, and replace --enable-c++17 by
--enable-c++20.
* NEWS: Mention the news.
* .gitlab-ci.yml: Use C++20 for the former C++17 builds.
* HACKING, README, doc/org/compile.org, doc/org/concepts.org,
doc/org/index.org, doc/org/install.org, doc/org/tut.org,
doc/org/upgrade2.org, spot/misc/escape.hh: Adjust mentions
of C++14.
2020-07-16 12:12:21 +02:00
Alexandre Duret-Lutz
a770727ee8 * doc/org/setup.org: Fix release date. 2020-07-16 10:33:33 +02:00
Alexandre Duret-Lutz
6205664297 Release Spot 2.9.1
* configure.ac, NEWS, doc/org/setup.org: Set version to 2.9.1.
2020-07-15 13:40:59 +02:00
Alexandre Duret-Lutz
8744751ec0 * doc/org/satmin.org: Remove extra newlines (fixes #410). 2020-07-13 16:30:29 +02:00
Alexandre Duret-Lutz
eeb5713a30 release Spot 2.9
* configure.ac, doc/org/setup.org, NEWS: Set version to 2.9.
2020-04-30 09:00:35 +02:00
Alexandre Duret-Lutz
ce2529b27b * doc/org/oaut.org: Refresh some examples; remove unecessary output. 2020-04-30 08:44:23 +02:00
Alexandre Duret-Lutz
52fbb09e55 org: more examples for autfilt
* doc/org/autfilt.org: Add examples for --simplify-acc and --parity.
2020-04-16 08:37:59 +02:00
Alexandre Duret-Lutz
e827d3a634 Merge branch 'master' into next 2020-03-13 08:07:16 +01:00
Alexandre Duret-Lutz
32e9bd4dbf Release Spot 2.8.7
* NEWS, configure.ac, doc/org/setup.org: Update.
2020-03-13 07:53:38 +01:00
Alexandre Duret-Lutz
fa90a97d54 org: fix some typos
* doc/org/tut12.org: Here.
2020-03-12 22:49:14 +01:00
Alexandre Duret-Lutz
73277bed96 org: fix some typos
* doc/org/tut12.org: Here.
2020-03-04 23:22:21 +01:00
Alexandre Duret-Lutz
b44daef42a Merge branch 'master' into next 2020-02-19 15:09:25 +01:00
Alexandre Duret-Lutz
39fa829340 Release Spot 2.8.6
* NEWS, configure.ac, doc/org/setup.org: Update version.
2020-02-19 14:45:07 +01:00
Alexandre Duret-Lutz
80b04e10b5 update citations of generic emptiness-check
* doc/org/citing.org, doc/spot.bib: Here.
2020-02-19 10:52:15 +01:00
Alexandre Duret-Lutz
abab62dd3e * doc/org/concepts.org: Typo. 2020-02-19 10:42:11 +01:00
Alexandre Duret-Lutz
7d81748aa4 update citations of generic emptiness-check
* doc/org/citing.org, doc/spot.bib: Here.
2020-02-15 15:46:36 +01:00
Alexandre Duret-Lutz
da3333477f * doc/org/concepts.org: Typo. 2020-01-28 09:37:33 +01:00
Alexandre Duret-Lutz
9d70eeef97 ltlcross: display short names when supplied
Suggested by František Blahoudek.

* bin/ltlcross.cc: Implement this.
* NEWS, doc/org/ltlcross.org: Document it.
* tests/core/ltlcross4.test: Test it.
2020-01-04 15:54:18 +01:00
Alexandre Duret-Lutz
6a531be052 Merge branch 'master' into next 2020-01-04 14:25:35 +01:00
Alexandre Duret-Lutz
68435915e7 Release Spot 2.8.5
* NEWS, configure.ac, doc/org/setup.org: Bump version number.
2020-01-04 14:19:33 +01:00
Alexandre Duret-Lutz
894fda21f9 Merge branch 'master' into next 2019-12-08 13:38:01 +01:00
Alexandre Duret-Lutz
625a2e2836 Release Spot 2.8.4
* NEWS, configure.ac, doc/org/setup.org: Set version to 2.8.4.
2019-12-08 13:35:01 +01:00
Alexandre Duret-Lutz
317520efe8 org: improve architecture diagram
* doc/org/arch.tex: Improve diagram, add links and online services.
* doc/org/concepts.org: Update text.
2019-12-08 13:29:14 +01:00
Alexandre Duret-Lutz
44df3c0837 add a --check=stutter-sensitive-example option
* spot/twaalgos/stutter.cc,
spot/twaalgos/stutter.hh (check_stutter_invariance): Add a
find_counterexamples argument.
* spot/twaalgos/hoa.cc: Output accepted-word and rejected-word examples.
* bin/common_aoutput.cc: Handle --check=stutter-sensitive-example.
* NEWS: Mention it.
* tests/core/stutter-tgba.test: Test it.
* doc/org/concepts.org, doc/org/hoa.org: Document accepted-word and
rejected-word named properties.
* bin/man/spot-x.x: Mention that --check=stutter-sensitive-example
ignores SPOT_STUTTER_CHECK.
2019-12-05 08:00:47 +01:00
Alexandre Duret-Lutz
3be394d2eb org: improve architecture diagram
* doc/org/arch.tex: Improve diagram, add links and online services.
* doc/org/concepts.org: Update text.
2019-12-03 17:51:11 +01:00
Alexandre Duret-Lutz
3d4e400cda Merge branch 'master' into next 2019-11-06 09:57:42 +01:00