Commit graph

6651 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
41751b80a1 * NEWS, configure.ac: Bump version to 2.11.6.dev. 2023-08-01 14:22:32 +02:00
Alexandre Duret-Lutz
f4b397a2bf Release Spot 2.11.6
* NEWS, configure.ac, doc/org/setup.org: Update version.
2023-08-01 12:19:47 +02:00
Alexandre Duret-Lutz
bb95705d52 mention the bug fixed in BuDDy
* NEWS: Explain the bug fixed in previous patch and reported in
issue #535.
* THANKS: Add Guillermo.
2023-08-01 11:12:49 +02:00
Alexandre Duret-Lutz
e37bc9e1ae [buddy] fix cache index of bdd_forall
Fix a 20 year old typo that caused a bug reported by Guillermo Perez.

* src/bddop.c (bdd_forall, bdd_forallcomp): Fix the cache index.
2023-08-01 11:12:49 +02:00
Alexandre Duret-Lutz
de7d5a956f * .gitlab-ci.yml: temporary disable raspbian. 2023-08-01 11:12:49 +02:00
Alexandre Duret-Lutz
44d9e34e32 improve coverage of LaTeX/utf8 printers for SERE
* bin/common_output.cc, bin/common_output.hh,
bin/randltl.cc: Adjust so that running "randltl -S" use
the SERE flavor of the spot/latex/utf8 formula printers.
* tests/core/latex.test, tests/core/utf8.test,
tests/python/ltlparse.py: Add more test cases.
2023-08-01 11:12:49 +02:00
Alexandre Duret-Lutz
15857385a5 bin: cover more tmpfile failure when running as root
* tests/core/ltlcross5.test: reorganize to test missing directory
before permission issues, as the latter cannot be run as root.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
3d412fbb78 tests: add some test to cover autcross' univ-edges removal
* tests/core/ltl3ba.test: Here.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
531252119c aiger: order the inputs of binary AND gates
* spot/twaalgos/aiger.cc: Here.
* tests/core/ltlsynt.test: Adjust, and add test case for aiger=optim.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
e548bf0a8e acc: remove some dead functions
* spot/twa/acc.hh, spot/twa/acc.cc (has_parity_prefix,
is_parity_max_equiv): Remove.
* spot/twa/acc.hh, spot/twa/twagraph.cc,
spot/twa/twagraph.hh (apply_permutation): Remove.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
69b9ffef9a bin: fix handling for --output & --format with LTL outputs
* bin/common_output.cc: Set the output stream for LTL formats.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
8065759fbd * HACKING: Mention the svgo version we use. 2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
090dcf17eb work around spurious GCC 13 warnings
* spot/graph/graph.hh (new_univ_dests): Add an overload taking
a temporary vector.
* spot/twa/twagraph.cc (defrag_states): Use it.
* tests/core/parity.cc: Remove some temporary variables.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
bd1809f758 bin: handle thousands of output files
Fixes #534.  Test case is only on next branch.

* bin/common_file.hh, bin/common_file.cc: Make it possible
to reopen a closed file.
* bin/common_output.cc, bin/common_aoutput.cc: Add a heuristic
to decide when to close files.
* NEWS: Mention the issue.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
adca03a30a * tests/core/ltlcross4.test: Work around recent Pandas change. 2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
47674c0d2f fix spurious failure of ltlcross4.test
Reported by Yuri Victorovich.

* tests/core/ltlcross4.test: Drop the 'formula' column before
computing aggregates.  It causes warnings in some Pandas versions, and
errors in others.
2023-08-01 10:51:33 +02:00
Florian Renkin
330b34e84d parity_type_to_parity: Add missing cases
* spot/twaalgos/toparity.cc: Correct some cases where the solution was
not detected.
* tests/python/toparity.py: Update tests.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
75bd595d28 bitvect: work around incorrect warning from gcc
* spot/misc/bitvect.hh: Don't free the old ptr if realloc() returns
NULL, as this confuse GCC who warns that we are freeing something that
has already been freed.   Instead, let the ~bitvect() destructor
handle this.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
9c6fa4921b debian: add missing build dependencies
* debian/control: Add Build-Depends on graphviz, jupyter-nbconvert,
doxygen.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
2495004afd avoid a g++-12 warning about potential null pointer dereference
* spot/twaalgos/determinize.cc (sorted_nodes): Rewrite to
avoid reallocation of temporary vector.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
16373cfb10 Work around spurious g++-12 warnings
* spot/twaalgos/ltl2tgba_fm.cc, spot/tl/formula.hh,
spot/twaalgos/translate.cc: Add SPOT_ASSUME in various places to help
g++.
2023-08-01 10:51:33 +02:00
Alexandre Duret-Lutz
69d9b78a55 mention the bug fixed in BuDDy
* NEWS: Explain the bug fixed in previous patch and reported in
issue #535.
* THANKS: Add Guillermo.
2023-08-01 09:19:03 +02:00
Alexandre Duret-Lutz
d58b7da562 [buddy] fix cache index of bdd_forall
Fix a 20 year old typo that caused a bug reported by Guillermo Perez.

* src/bddop.c (bdd_forall, bdd_forallcomp): Fix the cache index.
2023-07-31 21:07:07 +02:00
Alexandre Duret-Lutz
e3e50672b5 * .gitlab-ci.yml: temporary disable raspbian. 2023-07-28 16:20:18 +02:00
Alexandre Duret-Lutz
7358a26492 improve coverage of LaTeX/utf8 printers for SERE
* bin/common_output.cc, bin/common_output.hh,
bin/randltl.cc: Adjust so that running "randltl -S" use
the SERE flavor of the spot/latex/utf8 formula printers.
* tests/core/latex.test, tests/core/utf8.test,
tests/python/ltlparse.py: Add more test cases.
2023-07-27 16:30:35 +02:00
Alexandre Duret-Lutz
95e3bb815c bin: cover more tmpfile failure when running as root
* tests/core/ltlcross5.test: reorganize to test missing directory
before permission issues, as the latter cannot be run as root.
2023-07-27 16:30:35 +02:00
Alexandre Duret-Lutz
e1e9f960e6 tests: add some test to cover autcross' univ-edges removal
* tests/core/ltl3ba.test: Here.
2023-07-27 16:30:35 +02:00
Alexandre Duret-Lutz
95379c18cc aiger: order the inputs of binary AND gates
* spot/twaalgos/aiger.cc: Here.
* tests/core/ltlsynt.test: Adjust, and add test case for aiger=optim.
2023-07-27 16:30:35 +02:00
Alexandre Duret-Lutz
37325f1942 acc: remove some dead functions
* spot/twa/acc.hh, spot/twa/acc.cc (has_parity_prefix,
is_parity_max_equiv): Remove.
* spot/twa/acc.hh, spot/twa/twagraph.cc,
spot/twa/twagraph.hh (apply_permutation): Remove.
2023-07-27 16:30:35 +02:00
Alexandre Duret-Lutz
61e43edde8 bin: fix handling of -o '>>-' in the close/reopen path
* tests/core/serial.test: Add test case.
* bin/common_file.cc: Fix it.
2023-07-26 21:50:16 +02:00
Alexandre Duret-Lutz
0923f8efe2 bin: fix handling for --output & --format with LTL outputs
* bin/common_output.cc: Set the output stream for LTL formats.
* tests/core/serial.test: Add a test case about this issue that also
improve the covering of the previous patch about saving file
descriptors.
2023-07-26 21:33:36 +02:00
Alexandre Duret-Lutz
7f1a33cc61 * HACKING: Mention the svgo version we use. 2023-07-26 16:19:35 +02:00
Alexandre Duret-Lutz
06b1ecb50b work around spurious GCC 13 warnings
* spot/graph/graph.hh (new_univ_dests): Add an overload taking
a temporary vector.
* spot/twa/twagraph.cc (defrag_states): Use it.
* tests/core/parity.cc: Remove some temporary variables.
2023-07-26 16:19:23 +02:00
Alexandre Duret-Lutz
3b59240133 gen: generalize fin_unit to mafins()
Based on work with Jan Strejček.

* spot/twa/acc.cc, spot/twa/acc.hh (acc_cond::mafins,
acc_cond::acc_code::mafins): New methods.
(fin_unit_one_split, fin_unit_one_split_improved): Use mafins()
instead on fin_unit().
* spot/twaalgos/genem.cc: Use mafins() instead on fin_unit().
2023-07-25 16:44:21 +02:00
Alexandre Duret-Lutz
40e30df7e3 bin: handle thousands of output files
Fixes #534.

* bin/common_file.hh, bin/common_file.cc: Make it possible
to reopen a closed file.
* bin/common_output.cc, bin/common_aoutput.cc: Add a heuristic
to decide when to close files.
* tests/core/serial.test: Add a test case.
* NEWS: Mention the issue.
2023-07-24 16:56:24 +02:00
Alexandre Duret-Lutz
17a5b41d8c * tests/core/ltlcross4.test: Work around recent Pandas change. 2023-07-24 12:16:30 +02:00
Alexandre Duret-Lutz
61b457a37e bin: allow %l to be used to print serial numbers
* NEWS: Mention it.
* bin/autfilt.cc, bin/common_aoutput.cc, bin/common_aoutput.hh,
bin/common_output.cc, bin/common_output.hh, bin/dstar2tgba.cc,
bin/genaut.cc, bin/genltl.cc, bin/ltl2tgba.cc, bin/ltldo.cc,
bin/ltlfilt.cc, bin/ltlgrind.cc, bin/randaut.cc, bin/randltl.cc:
Implement it.
* doc/org/oaut.org: Add a short example.
* tests/core/serial.test: New file.
* tests/Makefile.am: Add it.
2023-07-21 17:16:19 +02:00
Alexandre Duret-Lutz
8369663380 fix spurious failure of ltlcross4.test
Reported by Yuri Victorovich.

* tests/core/ltlcross4.test: Drop the 'formula' column before
computing aggregates.  It causes warnings in some Pandas versions, and
errors in others.
2023-06-12 11:05:54 +02:00
Florian Renkin
7868115a8b parity_type_to_parity: Add missing cases
* spot/twaalgos/toparity.cc: Correct some cases where the solution was
not detected.
* tests/python/toparity.py: Update tests.
2023-05-24 20:05:43 +02:00
Alexandre Duret-Lutz
abe7222973 bitvect: work around incorrect warning from gcc
* spot/misc/bitvect.hh: Don't free the old ptr if realloc() returns
NULL, as this confuse GCC who warns that we are freeing something that
has already been freed.   Instead, let the ~bitvect() destructor
handle this.
2023-05-15 09:43:46 +02:00
Alexandre Duret-Lutz
134da9209c genem: Add yet another version of the algorithm
* spot/twa/acc.hh, spot/twa/acc.cc (fin_unit_one_split_improved): New
function.
* python/spot/impl.i: Add bindings for fin_unit_one_split_improved.
* spot/twaalgos/genem.cc: Add the spot212 version.
* tests/python/genem.py: Test it.
2023-05-15 09:43:46 +02:00
Alexandre Duret-Lutz
747ec8b1c5 debian: add missing build dependencies
* debian/control: Add Build-Depends on graphviz, jupyter-nbconvert,
doxygen.
2023-05-15 09:43:43 +02:00
Alexandre Duret-Lutz
b487ff4190 Merge branch 'master' into next 2023-04-20 09:50:23 +02:00
Alexandre Duret-Lutz
d0ae0dfc38 * NEWS, configure.ac: Bump version to 2.11.5.dev. 2023-04-20 09:48:22 +02:00
Alexandre Duret-Lutz
b6c076ce19 release Spot 2.11.5
* NEWS, configure.ac, doc/org/setup.org: Update version.
2023-04-20 09:45:41 +02:00
Alexandre Duret-Lutz
184aa9931e org: replace version references with org-babel blocks
This way we have fewer lines to edit multiple when making releases.

* doc/org/index.org, doc/org/init.el.in, doc/org/install.org,
doc/org/setup.org, doc/org/tools.org: Use org-babel instead of macros
for release version and links.
2023-04-19 09:07:02 +02:00
Alexandre Duret-Lutz
eb80f5d5af powerset: fix segfault when the initial state is a sink
Reported by Raven Beutner.

* spot/twaalgos/minimize.cc: Improve comment.
* spot/twaalgos/powerset.cc: Fix handling of an initial state that
is also a sink.
* tests/core/wdba2.test: Add test case.
* NEWS: Mention the bug.
2023-04-19 09:06:58 +02:00
Alexandre Duret-Lutz
eb0f40b9d6 twa_run: let as_twa work on the result of intersecting_run
Reported by Philipp Schlehuber-Caissier.

* spot/twaalgos/emptiness.cc (as_twa): Simplify considerably.  Don't
try to replay the run, and don't merge identical states.
* spot/twaalgos/word.hh, spot/twaalgos/emptiness.hh: Improve
documentation.
* tests/python/intrun.py: Add a test case.
* NEWS: Mention the bug.
2023-04-19 09:06:55 +02:00
Philipp Schlehuber-Caissier
993695a2c4 Fix parity solver if edgevector is not contiguous
Validity of strategies was tested relying on
num_edges() which might be smaller than the edge_number

* spot/twaalgos/game.cc: Fix here
* tests/python/game.py: Test here
2023-04-19 09:06:25 +02:00
Alexandre Duret-Lutz
0c8093eded correctly fails if emacs needed and missing
Fixes #528.

* configure.ac: Define EMACS using tools/missing.
* NEWS: Mention the bug.
2023-04-19 09:06:01 +02:00