Alexandre Duret-Lutz
09c93a3a3d
forbid the use of std::endl on std::cerr
...
std::cerr will flush after each operator<< by default, so it's simpler
to use \n instead of std::endl, especially if we can merge \n into the
previous string. Ideally we should prefer \n for std::cout as well,
but there are reasonable cases where we want to call std::endl there,
so it's hard to enforce.
* tests/sanity/style.test: Diagnose occurrences of cerr.*<<.*endl.
* bin/autcross.cc, bin/autfilt.cc, bin/ltlcross.cc, bin/ltlsynt.cc,
spot/tl/formula.cc, spot/twa/bdddict.cc, tests/core/checkpsl.cc,
tests/core/checkta.cc, tests/core/consterm.cc, tests/core/emptchk.cc,
tests/core/equalsf.cc, tests/core/ikwiad.cc, tests/core/kind.cc,
tests/core/length.cc, tests/core/ltlrel.cc, tests/core/parity.cc,
tests/core/randtgba.cc, tests/core/reduc.cc, tests/core/syntimpl.cc,
tests/ltsmin/modelcheck.cc: Fix them.
2019-07-17 09:15:50 +02:00
Alexandre Duret-Lutz
b4cced9ba8
genltl: add --pps-arbiter-{strict,standard}
...
* spot/gen/formulas.cc, spot/gen/formulas.hh, bin/genltl.cc: Implement
this.
* NEWS, bin/man/genltl.x, doc/spot.bib: Add documentation.
* tests/core/genltl.test, tests/core/ltlfilt.test: Add some tests.
2019-07-12 16:48:10 +02:00
Alexandre Duret-Lutz
eba6f66cb3
* spot/gen/formulas.cc: Add missing delete[].
2019-07-12 16:21:56 +02:00
Alexandre Duret-Lutz
e2fad2d7ae
complement: fix handling of output_aborter with postproc
...
Reported by Salomon Sickert.
* spot/twaalgos/complement.cc: Make sure the output of postproc
is deterministic.
* tests/core/ltlcross.test: Add test case.
* NEWS: Mention the bug.
2019-07-11 14:48:50 +02:00
Alexandre Duret-Lutz
1f8a777e1f
* doc/org/install.org: Debian stable is now Buster.
2019-07-10 14:22:54 +02:00
Alexandre Duret-Lutz
2c2daf6b8a
Bump version to 2.8.0.dev
...
* NEWS, configure.ac: Here.
2019-07-10 06:19:57 +02:00
Alexandre Duret-Lutz
85b2d426d9
Release Spot 2.8
...
* configure.ac, doc/org/setup.org, NEWS: Bump version to Spot 2.8.
2019-07-10 06:13:19 +02:00
Alexandre Duret-Lutz
5b1350cab5
autcross: add shorthand for dra2dpa
...
* bin/common_trans.cc: Add it.
* NEWS: Mention it.
2019-07-09 22:10:09 +02:00
Alexandre Duret-Lutz
1d7ad07c83
product: fix handling of output_aborter
...
* spot/twaalgos/product.cc: The res pointer should be
passed by reference since we reset it to nullptr when
output_aborter says "too large".
* python/spot/impl.i: Add binding for powerset.hh,
so we can use output_aborter in Python.
* tests/python/prodexpt.py: Test it.
2019-07-09 16:09:20 +02:00
Alexandre Duret-Lutz
396dcabd7d
* doc/spot.bib: Fix some urls.
2019-07-09 16:09:20 +02:00
Alexandre Duret-Lutz
5af4612eda
genem: cite our ATVA'19 paper
...
* doc/spot.bib (baier.19.atva): New reference.
* spot/twaalgos/genem.hh: Cite it.
2019-07-09 16:09:20 +02:00
Alexandre Duret-Lutz
9f616e0451
ltldo, ltlcross: add support from ltl2ba, ltl2nba, ltl2dgba
...
* bin/common_trans.cc: Here.
* NEWS: Document this.
2019-07-09 16:09:20 +02:00
Alexandre Duret-Lutz
0d9cc29b46
tl: eight new simplification rules
...
* NEWS, doc/tl/tl.tex: Document the rules.
* spot/tl/simplify.cc: Implement them.
* tests/core/reduccmp.test: Test them.
* tests/core/det.test, tests/core/ltl2tgba2.test,
tests/python/stutter-inv.ipynb, tests/core/385.test: Adjust.
2019-07-09 16:09:15 +02:00
Alexandre Duret-Lutz
d244ff5432
* NEWS: Fix some typos.
2019-07-05 22:43:42 +02:00
Alexandre Duret-Lutz
bfe0ada634
deprecate spot::acc_cond::format()
...
* NEWS: Mention it.
* spot/twa/acc.hh (spot::acc_cond::format): Deprecate.
(spot::acc_cond::mark_t::as_string): New function.
* spot/taalgos/dot.cc: Use mark_t::as_string().
* spot/priv/satcommon.cc, spot/priv/satcommon.hh,
spot/twaalgos/dtwasat.cc, spot/twaalgos/emptiness.cc,
tests/core/acc.cc, tests/core/acc.test: Adjust to use << directly.
2019-07-05 22:43:36 +02:00
Alexandre Duret-Lutz
822fe77891
python: cleanup with autopep8
...
* tests/python/341.py, tests/python/alarm.py, tests/python/bdddict.py,
tests/python/bddnqueen.py, tests/python/bugdet.py,
tests/python/dualize.py, tests/python/except.py, tests/python/gen.py,
tests/python/genem.py, tests/python/implies.py,
tests/python/interdep.py, tests/python/ipnbdoctest.py,
tests/python/kripke.py, tests/python/ltl2tgba.py,
tests/python/ltlf.py, tests/python/ltlparse.py,
tests/python/ltlsimple.py, tests/python/relabel.py,
tests/python/rs_like.py, tests/python/sccsplit.py,
tests/python/semidet.py, tests/python/setacc.py,
tests/python/setxor.py, tests/python/split.py,
tests/python/streett_totgba.py, tests/python/stutter.py,
tests/python/sum.py, tests/python/toparity.py, tests/python/toweak.py,
tests/python/trival.py, python/spot/__init__.py, python/spot/aux.py,
python/spot/jupyter.py: Reformat with autopep8.
fixup! * spot/tl/simplify.cc: Fix typos in tracing code.
2019-07-05 21:22:29 +02:00
Alexandre Duret-Lutz
5b01ce32dd
* spot/tl/simplify.cc: Fix typos in tracing code.
2019-06-30 23:01:03 +02:00
Alexandre Duret-Lutz
caad07cfa4
* doc/tl/tl.tex: Typo.
2019-06-30 19:06:50 +02:00
Alexandre Duret-Lutz
ad2f5524bb
doc: add tut90.org about bdd_dict
...
Fixes #372 .
* doc/org/tut90.org: New file.
* doc/Makefile.am, doc/org/tut.org: Add it.
* NEWS: Mention it.
* python/spot/__init__.py: Allow make_twa_graph with
default bdd_dict.
2019-06-27 10:50:19 +02:00
Alexandre Duret-Lutz
7f48a08ead
postproc: fix a fixme
...
* spot/twaalgos/postproc.cc: Fix reject_bigger argument of
minimize_obligation for --low.
2019-06-22 12:17:31 +02:00
Alexandre Duret-Lutz
030ebed367
scc_has_rejecting_cycle: rewrite without copy
...
* spot/twaalgos/genem.hh, spot/twaalgos/genem.cc
(generic_emptiness_check_for_scc): Add a version that takes an acc.
* spot/twaalgos/isweakscc.cc (scc_has_rejecting_cycle): Use
generic_emptiness_check_for_scc.
2019-06-22 12:17:31 +02:00
Alexandre Duret-Lutz
c830b5db25
* spot/tl/formula.cc: Fix two fixmes.
2019-06-21 22:01:42 +02:00
Alexandre Duret-Lutz
dc34862d3b
twa: get rid of intersecting_run()'s second argument
...
* spot/twa/twa.cc, spot/twa/twa.hh: Here.
* NEWS: Mention the backward incompatibility.
2019-06-21 22:01:27 +02:00
Alexandre Duret-Lutz
f3e57901a4
simulation: improve merging of transiant-SCCs
...
* spot/twaalgos/simulation.cc: Code this.
* tests/core/det.test, tests/core/dra2dba.test,
tests/core/satmin.test, tests/core/sim3.test,
tests/python/decompose.ipynb, tests/python/dualize.py: Adjust test
cases.
* NEWS: Mention the optimization.
2019-06-20 13:25:26 +02:00
Alexandre Duret-Lutz
c9ddbd0a73
ltlsynt: use reduce_parity()
...
* bin/ltlsynt.cc: Here.
* tests/core/ltlsynt.test: Adjust.
2019-06-19 23:15:02 +02:00
Alexandre Duret-Lutz
c66b3d88d0
toparity: revert symmetry-based optimization of LAR
...
Fixes #390 .
* spot/twaalgos/toparity.cc: Revert the relevant part of 516e9536 .
* tests/python/toparity.py: Add test case.
* NEWS: Mention the issue.
2019-06-18 19:12:42 +02:00
Alexandre Duret-Lutz
ed52f3c48c
re-enable tests incorrectly disabled
...
These were disabled by mistake in f6575d2ec .
* tests/python/parity.py: Uncomment test cases.
2019-06-18 19:12:42 +02:00
Alexandre Duret-Lutz
a8e47d0bd2
toparity: typo in pretty print
...
* spot/twaalgos/toparity.cc: Fix pretty print.
2019-06-18 19:12:42 +02:00
Alexandre Duret-Lutz
8c13d7209e
ltlsynt: misc typos
...
* doc/org/ltlsynt.org: Fix example.
* bin/ltlsynt.cc: Fix --help text.
2019-06-18 19:12:42 +02:00
Alexandre Duret-Lutz
8df5f5137e
gfguarantee: fix #357 again
...
The previous patch triggered this issue again, failing
core/ltl2tgba2.test.
* spot/twaalgos/gfguarantee.cc: Separate the replaying of history from
the modification of the automaton.
* NEWS: Mention the bug.
* tests/python/twagraph-internals.ipynb, tests/python/automata.ipynb:
Adjust.
2019-06-18 19:12:36 +02:00
Alexandre Duret-Lutz
da5d23f0a2
simplify: GF(f)=GF(dnf(f)) FG(f)=FG(cnf(f))
...
These rules come from Delag's paper, and help some cases
in issue #385 .
* spot/tl/simplify.cc: Implement the simplification.
* doc/tl/tl.tex, NEWS: Document it.
* tests/core/385.test: New file.
* tests/Makefile.am: Add it.
* tests/core/reduccmp.test: More tests.
* tests/core/ltl2tgba2.test: Adjust one improved case.
* tests/python/automata.ipynb, tests/python/twagraph-internals.ipynb:
Adjust expected output, as the cnf/dnf reorder some subformulas.
2019-06-18 10:03:56 +02:00
Alexandre Duret-Lutz
df326e032b
use a bibtex file to collect all references in Doxygen
...
* doc/tl/tl.bib: Move ...
* doc/spot.bib: ... here, and augment it with all references that
appeared verbatim in Doxygen comments.
* doc/Makefile.am, doc/tl/Makefile.am
doc/tl/tl.tex: Adjust for the move.
* doc/Doxyfile.in: Point to spot.bib.
* spot/gen/automata.hh, spot/gen/formulas.hh, spot/misc/game.hh,
spot/misc/minato.hh spot/taalgos/emptinessta.hh,
spot/taalgos/minimize.hh, spot/taalgos/tgba2ta.hh, spot/tl/formula.hh,
spot/tl/remove_x.hh, spot/tl/simplify.hh, spot/tl/snf.hh,
spot/twaalgos/cobuchi.hh, spot/twaalgos/cycles.hh,
spot/twaalgos/dualize.hh, spot/twaalgos/gtec/gtec.hh,
spot/twaalgos/gv04.hh, spot/twaalgos/ltl2taa.hh,
spot/twaalgos/ltl2tgba_fm.hh, spot/twaalgos/magic.hh,
spot/twaalgos/minimize.hh, spot/twaalgos/parity.hh,
spot/twaalgos/powerset.hh, spot/twaalgos/randomgraph.hh,
spot/twaalgos/se05.hh, spot/twaalgos/simulation.hh,
spot/twaalgos/strength.hh, spot/twaalgos/stutter.hh,
spot/twaalgos/tau03.hh, spot/twaalgos/totgba.hh,
spot/twaalgos/toweak.hh: Use \cite instead of a verbatim bibtex entry.
2019-06-14 21:02:27 +02:00
Alexandre Duret-Lutz
d064b7dad2
is_parity: fix unitialized value of max on False return
...
* spot/twa/acc.cc: Here. This fixes two failures on the buildfarm.
2019-06-13 09:55:35 +02:00
Alexandre Duret-Lutz
b4da0cf660
hierarchy: add a new way to check DBA-realizability via DPA
...
* spot/tl/hierarchy.cc, spot/tl/hierarchy.hh: Here.
* tests/core/hierarchy.test: Test it.
* bin/man/spot-x.x: Document SPOT_PR_CHECK.
* doc/org/hierarchy.org, NEWS: Update.
2019-06-12 23:38:17 +02:00
Alexandre Duret-Lutz
2617c17b45
* NEWS: Typos.
2019-06-12 22:09:07 +02:00
Alexandre Duret-Lutz
eb7b68ad58
use reduce_parity in translator and posprocessor
...
* spot/twaalgos/postproc.cc, spot/twaalgos/translate.cc: Here.
* tests/core/genltl.test, tests/core/parity2.test,
tests/core/sccsimpl.test, tests/python/twagraph-internals.ipynb:
Adjust test cases.
* NEWS: Mention it.
2019-06-12 22:05:04 +02:00
Alexandre Duret-Lutz
ebfa3a377a
parity: introduce reduce_parity()
...
* spot/twaalgos/parity.cc, spot/twaalgos/parity.hh: Here.
* tests/core/parity.cc: Add test case.
* tests/python/parity.ipynb, NEWS: More documentation.
2019-06-12 22:05:02 +02:00
Alexandre Duret-Lutz
f6575d2ec5
improve cleanup_parity() and colorize_parity()
...
Fixes #384 .
* spot/twaalgos/parity.cc: Here.
* tests/core/parity2.test, tests/python/highlighting.ipynb,
tests/python/parity.py: Adjust test cases.
* tests/python/parity.ipynb: Improve the presentation.
* NEWS: Mention the change.
2019-06-11 21:24:55 +02:00
Alexandre Duret-Lutz
f0b77e21c8
autcross: simplify code using complement() and intersecting_word()
...
* bin/autcross.cc: Let complement() decide how to complement automata.
Do not apply remove_fin(), because we have a generic emptiness check
now. Use intersecting_word() instead of product()+accepting_word() so
that the former can maybe be optimized in the future.
* tests/core/autcross2.test: Adjust test case to use TGBA instead
of monitors, as calling complement() had a side-effect of setting
the "weak" property on the input.
2019-06-07 14:56:56 +02:00
Alexandre Duret-Lutz
cba012328e
genaut: introduce --m-nba
...
* bin/genaut.cc: Implement the --m-nba option.
* spot/gen/automata.hh, spot/gen/automata.cc: Add the generation code.
* NEWS, bin/man/genaut.x: Document it.
* doc/org/genaut.org: Update.
* tests/core/genaut.test, tests/core/parity2.test: Add some tests.
2019-06-07 14:16:42 +02:00
Alexandre Duret-Lutz
435fec89b0
Merge branch 'master' into next
2019-06-05 08:12:35 +02:00
Alexandre Duret-Lutz
f30c941583
* NEWS, configure.ac: Bump version to 2.7.5.dev.
2019-06-05 08:09:19 +02:00
Alexandre Duret-Lutz
e9fb50114f
Release Spot 2.7.5
...
* NEWS, configure.ac, doc/org/setup.org: Bump version.
2019-06-05 08:05:24 +02:00
Alexandre Duret-Lutz
0ff6c5c43b
* NEWS: Mention swig4 support.
2019-06-04 13:58:19 +02:00
Alexandre Duret-Lutz
57e6208e1e
Update instructions for divine-ltsmin installation
...
* tests/ltsmin/README: Here.
* THANKS: Reported by Jiraphapa Jiravaraphan.
2019-06-04 13:58:19 +02:00
Alexandre Duret-Lutz
7d6bfe545f
remprop: reset no-terminal property
...
Reported by Yong Li.
* spot/twaalgos/remprop.cc: Here.
* tests/python/removeap.py: New test case.
* tests/Makefile.am: Add it.
* NEWS: Document the issue.
* THANKS: Add Yong Li.
2019-06-04 13:58:19 +02:00
Alexandre Duret-Lutz
65e8d16f57
tests: add missing copyright blobs
...
* tests/python/remfin.py, tests/python/tra2tba.py: Here.
2019-06-04 13:58:19 +02:00
Alexandre Duret-Lutz
4a5259d1fa
work around another swig4 change
...
* python/spot/impl.i: Make sure spot::acc_cond::mark_t::operator<<
exceptions are not ignored.
2019-06-04 13:58:19 +02:00
Alexandre Duret-Lutz
bae8be9333
work around swig4 regression
...
* python/Makefile.am: Here.
2019-06-04 11:32:50 +02:00
Alexandre Duret-Lutz
05b3007885
work around new import statements generated by swig-4.0
...
Those statements are not compatible with the fact that
libtool-generated modules are in .libs/ until they get installed.
* python/spot/__init__.py: Add sys.path to __path__ if SPOT_BUILD is
set.
* tests/run.in: Set SPOT_BUILD.
2019-06-04 11:32:46 +02:00