Commit graph

6157 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
c70a06ae0a Release Spot 2.10.5
* NEWS, configure.ac, doc/org/setup.org: Update.
2022-05-03 08:59:17 +02:00
Alexandre Duret-Lutz
385da8ebd0 update NEWS for upcoming release
* NEWS: Here.
2022-05-02 17:47:53 +02:00
Florian Renkin
0f3ffd59ce ltlsynt: don't solve games when we want to display them
* bin/ltlsynt.cc: here
2022-05-02 17:24:23 +02:00
Alexandre Duret-Lutz
fa6912a574 debian: simplify LTO configuration to work around newer libtool
Libtool 2.4.7 breaks if AR_FLAGS contains a space. See
https://lists.gnu.org/archive/html/bug-libtool/2022-03/msg00009.html

* debian/rules: Use gcc-{nm,ar,ranlib} so we do not have to pass
the plugin explicitly.
2022-05-02 17:24:23 +02:00
Philipp Schlehuber-Caissier
add2fced44 Correct bug in zielonka
Optimization in Zielonka failed
under certain circumstances
todo: Devise a specialized test
for direct attr computation

* spot/twaalgos/game.cc: Correction
* tests/python/game.py: Test
2022-05-02 17:24:23 +02:00
Alexandre Duret-Lutz
58f39ec287 * doc/org/tut40.org: Clarify, as suggested by a CAV'22 reviewer. 2022-05-02 17:24:23 +02:00
Florian Renkin
d1f49c721a ltlsynt: don't fail if --outs or --ins is set to empty
* bin/ltlsynt.cc: here
* tests/core/ltlsynt.test: add tests
2022-05-02 17:24:23 +02:00
Alexandre Duret-Lutz
53118d9314 * spot/twaalgos/gfguarantee.hh: Typos in comments. 2022-05-02 17:24:23 +02:00
Alexandre Duret-Lutz
96e051d2bb graph: fix invalid read
Reported by Florian Renkin.

* spot/graph/graph.hh (sort_edges_of): Fix invalid read when sorting a
state without successor.  Seen on core/tgbagraph.test.
2022-05-02 17:24:23 +02:00
Florian Renkin
968ef0f7b8 ltlsynt: typo in help
* bin/ltlsynt.cc: here
2022-05-02 17:24:23 +02:00
Alexandre Duret-Lutz
2aecf9a79e fix typos and make formula_from_bdd more usable in Python
* python/spot/impl.i (formula_from_bdd): Instantiate for twa_graph.
* spot/twa/twa.hh (register_aps_from_dict): Typo in exception.
* tests/python/except.py: More tests for the above.
* tests/python/bdddict.py: Typo in comment.
2022-05-02 17:24:23 +02:00
734de00bfd tests: don't wipe python environment
* tests/run.in: keep original PYTHONPATH contents
* NEWS: mention the bug
2022-05-02 15:36:27 +02:00
Alexandre Duret-Lutz
d61d6e5e2f tests: avoid seq
Partial fix for #501.

* tests/core/prodchain.test: Hardcode the seq output.
* tests/core/bricks.test: Use $AWK instead of seq.
* tests/core/defs.in: Define $AWK.
* NEWS: Mention the bug.
2022-05-02 15:36:11 +02:00
Alexandre Duret-Lutz
7149e5a34d * .gitlab-ci.yml (alpine-gcc): Fix path for logs. 2022-05-02 15:35:51 +02:00
Alexandre Duret-Lutz
7d9fddadce work around an issue in Flex 2.6.4
The fallback definition of SIZE_MAX supplied by flex was not
preprocessor friendly and prevented robin_hood.hh from doing "#if
SIZE_MAX == UINT64_MAX", as observed by Marc Espie on OpenBSD.

* spot/parseaut/scanaut.ll, spot/parsetl/scantl.ll: Define
__STDC_VERSION__ just so that the code generated by Flex
include <inttypes.h>.
* NEWS: Mention the bug.
* THANKS: Add Marc.
2022-05-02 15:35:09 +02:00
Alexandre Duret-Lutz
64020279cb reduce_parity: fix to work on automata with deleted edges
* spot/twaalgos/parity.cc (reduce_parity): Use the
size of the edge vector to initialize piprime1 and piprime2,
not the number of edges.
* tests/python/parity.py: Add test case, based on a report
by Yann Thierry-Mieg.
2022-05-02 15:34:57 +02:00
Alexandre Duret-Lutz
b7825552f8 remove uses of unary_function and binary_function
These were deprecated in C++11, and are supposed to be removed from
C++17, however gcc-snapshot just started warning about those.

* spot/misc/bddlt.hh, spot/misc/hash.hh, spot/misc/ltstr.hh,
spot/twa/taatgba.hh, spot/twaalgos/ltl2tgba_fm.cc: Here.
2022-05-02 15:34:14 +02:00
Alexandre Duret-Lutz
664788bb16 * NEWS, configure.ac: Bump version to 2.10.4.dev. 2022-02-01 13:52:13 +01:00
Alexandre Duret-Lutz
bf77d0f0d3 Release Spot 2.10.4
* NEWS, configure.ac, doc/org/setup.org: Bump version to 2.10.4.
2022-02-01 13:50:56 +01:00
Alexandre Duret-Lutz
de295e4632 python: fix a memory leak in all added __iter__ methods
Reported by Yechuan Xia

* python/spot/impl.i: Add %newobject to all __iter__ methods.
* NEWS: Mention the list of affected methods.
* THANKS: Update.
2022-02-01 12:04:01 +01:00
Alexandre Duret-Lutz
c12842c16f * NEWS, configure.ac: Bump version to 2.10.3.dev. 2022-01-15 08:09:05 +01:00
Alexandre Duret-Lutz
dd33950836 Release Spot 2.10.3
* NEWS, configure.ac, doc/org/setup.org: Update version.
2022-01-15 08:09:01 +01:00
Alexandre Duret-Lutz
4692b89629 * NEWS: Prepare for next release. 2022-01-14 20:34:16 +01:00
Alexandre Duret-Lutz
34646bc0ab allow RPM build failure until we can fix it
The current building issue is a docker issue unrelated to Spot,
so it should not prevent us from doing a release.

* .gitlab-ci.yml (rpm-pkg): Allow failure.
2022-01-14 20:29:10 +01:00
Alexandre Duret-Lutz
346260c684 org: install from GNU
Fixes #496.

* doc/org/init.el.in: Install org-mode from GNU ELPA.
2022-01-14 20:29:10 +01:00
Alexandre Duret-Lutz
cdbf830010 * doc/org/tut40.org: Finish a sentence. 2022-01-14 20:29:10 +01:00
Alexandre Duret-Lutz
25d6bfd64d bib: more references
* doc/spot.bib (blahoudek.16.atva, degiacomo.13.ijcai): New entries.
* spot/tl/ltlf.hh, spot/twaalgos/complement.hh: Use them.
2022-01-14 20:29:10 +01:00
Alexandre Duret-Lutz
480289867f sccinfo: fix accepting run computation
* spot/twaalgos/sccinfo.cc (scc_info::get_accepting_run): Ignore edges
whose colors are not part of the colors gathered in the SCC up to
deciding acceptance.
* tests/python/genem.py: New test case, reported by Clément Tamines.
* THANKS: Add him.
* NEWS: Mention the bug.
2022-01-14 20:29:10 +01:00
Alexandre Duret-Lutz
da681e6b4d dot: improve output to work around GraphViz bug
The related GraphViz issue is
https://gitlab.com/graphviz/graphviz/-/issues/2179

* spot/twaalgos/dot.cc: Avoid initial newline in title.
* NEWS: Mention the bug.
* tests/core/det.test, tests/core/dstar.test,
tests/core/neverclaimread.test, tests/python/automata-io.ipynb: Adjust
test cases.
2022-01-14 20:29:10 +01:00
Alexandre Duret-Lutz
cfb782ce75 bump copyright year
* bin/common_setup.cc, debian/copyright: Here.
2022-01-14 20:29:10 +01:00
philipp
2298743479 Fixes #495
Monitors can now be split AND completed at the same time.
Split can be called on games without providing
"synthesis-outputs" - relying on named prop.

* spot/twaalgos/synthesis.cc,
spot/twaalgos/synthesis.hh: Here
2022-01-14 20:27:49 +01:00
Alexandre Duret-Lutz
852abc770f complement: fix a regression with 2.9.8
Reported by Reuben Rowe.

* spot/twaalgos/complement.cc (complement): Remove the hard-coded
simul=0 option on automata with >32 states.  In 2.10 simul=0 now
implies det-simul=0, causing the regression, and most importantly it
is not needed anymore, because we have other threashold like simul-max
and simul-trans-pruning in place.
* tests/core/complement.test: Add Reuben's automaton as test case.
* NEWS: Mention the fix.
2022-01-14 20:26:44 +01:00
Alexandre Duret-Lutz
80fd158ed5 sbacc: remove spurious initial state in some output
This fixes #492, based on a report from Jérôme Dubois.

* spot/twaalgos/sbacc.cc: If the initial state is in a rejecting
component, start with an initial state whose colors are unsat_mark.
* tests/core/sbacc.test: Add test case.
* tests/python/pdegen.py: Adjust it.
2022-01-14 20:26:44 +01:00
Alexandre Duret-Lutz
9d6ba3ff77 * tests/python/word.ipynb: Typo. 2022-01-14 20:26:44 +01:00
Alexandre Duret-Lutz
b860bb242e tl: fix first_match definition
* doc/tl/tl.tex: Here.
2022-01-14 20:26:44 +01:00
Alexandre Duret-Lutz
6dd7097148 org: update mailman urls
* doc/org/index.org, tests/python/bdditer.py: Here.
2022-01-14 20:26:44 +01:00
philipp
1bd1129494 Fixing state reorder bug for mealy minimization
Isomorph but different machines were created
depending on ARM vs Intel

* spot/twaalgos/mealy_machine.cc: Fix here
2022-01-14 20:25:47 +01:00
Alexandre Duret-Lutz
3612f3416d * NEWS, configure.ac: Bump version to 2.10.2.dev. 2022-01-14 20:21:30 +01:00
Alexandre Duret-Lutz
6eabc517ad Release Spot 2.10.2
* NEWS, configure.ac, doc/org/setup.org: Set version to 2.10.2.
2021-12-03 08:54:57 +01:00
Alexandre Duret-Lutz
4d2262600e formula: is_literal should be const
Reported by Ayrat Khalimov.

* spot/tl/formula.hh (is_literal): Mark as const.
2021-12-02 17:42:59 +01:00
Alexandre Duret-Lutz
8ffd06e9a6 catch overflow in SVA delays during parsing
* spot/parsetl/scantl.ll: Diagnose delays (##n) larger than
unbounded().  Remove all checks for delays with 1 or 2 characters.
* tests/core/parseerr.test: Add a test case.
* NEWS: Mention this fix.
2021-12-02 14:36:23 +01:00
Alexandre Duret-Lutz
6b46401d36 * doc/org/install.org: Stable Debian packages are for Bullseye. 2021-11-23 10:22:23 +01:00
Jérôme Dubois
81f146f648 build: fix multiple Clang13 warnings
* spot/kripke/kripkegraph.hh, spot/misc/hash.hh, spot/twa/taatgba.cc,
  spot/twa/twagraph.hh, tests/core/ngraph.cc: Replace subtraction of
  pointeur minus nullptr by an explicit cast to size_t.
* spot/twa/acc.hh: Add explicit default copy assignment operator for
  rs_pair.
2021-11-22 10:29:15 +01:00
Alexandre Duret-Lutz
2a408bbed1 sched_getcpu() and pthread_setaffinity_np() are non-portable
Reported by Yuri Victorovich, on FreeBSD.

* configure.ac: Test for them.
* spot/mc/mc_instanciator.hh: Only use them if they are present.
* NEWS: Mention the fix.
2021-11-22 10:24:52 +01:00
Alexandre Duret-Lutz
5f49209caf twagraph: remove bddfalse edges in purge_dead_states
* spot/twa/twagraph.cc (purge_dead_states): Be bddfalse-aware!
* spot/twa/twagraph.hh, NEWS: Document this.
* tests/python/alternating.py, tests/python/twagraph.py: Add some
test cases.
2021-11-19 22:13:20 +01:00
Alexandre Duret-Lutz
59690dd041 * NEWS, configure.ac: Bump version to 2.10.1.dev. 2021-11-19 09:48:07 +01:00
Alexandre Duret-Lutz
1782af3924 Release Spot 2.10.1
* NEWS, configure.ac, doc/org/setup.org: Update for release.
2021-11-19 09:46:12 +01:00
Alexandre Duret-Lutz
58b349d3ca sbacc: define original-states
* spot/twaalgos/sbacc.cc (sbacc): Define the original-states
property on the created automaton.
* spot/twaalgos/sbacc.hh: Improve documentation.
* tests/python/sbacc.py: Update test cases.
2021-11-18 22:03:47 +01:00
Alexandre Duret-Lutz
afdd38277d formula: catch min/max overflows at construction
For issue #485.

* spot/tl/formula.cc, spot/tl/formula.hh: Catch min/max overflow
when the operators are constructed.  Also disable travial
simplification rules that would create such overflow.
For instance x[*200][*2] will not become x[*400] anymore.
* python/spot/impl.i: Catch std::overflow_error.
* tests/core/equals.test, tests/python/except.py: Add test cases.
2021-11-18 22:03:23 +01:00
Alexandre Duret-Lutz
59b361babd fix some unused variable warning in mingw
* spot/twaalgos/mealy_machine.cc (is_split_mealy_specialization): Hide
spl in NDEBUG.
* spot/twaalgos/synthesis.cc (apply_strategy): sp is not always used.
2021-11-18 13:24:53 +01:00