- 03 Apr, 2018 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #341. * python/spot/__init__.py (automata): Rewrite and simplify using the subprocess context manager. * tests/python/341.py: New file. * tests/Makefile.am: Add it. * NEWS: Mention the issue.
-
- 30 Mar, 2018 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/priv/satcommon.cc, spot/priv/satcommon.hh: Make it possible to set the log file without setting the environment variable. Adjust print_log to take the input state and print it as a new column. * spot/twaalgos/dtbasat.cc, spot/twaalgos/dtwasat.cc: Adjust all calls to print_log. Fix log output for incremental approaches. Prefer purge_unreachable_states() over stats_reachable(). Do not call scc_filter() on colored automata. * spot/twaalgos/dtwasat.hh: Document the new "log" option. * NEWS: Mention the changes. * tests/python/satmin.ipynb: New file. * tests/Makefile.am: Add it. * doc/org/satmin.org, doc/org/tut.org: Link to it. * doc/org/satmin.org, bin/man/spot-x.x: Adjust description of CSV files. * bench/dtgbasat/gen.py, bench/dtgbasat/tabl.pl, bench/dtgbasat/tabl1.pl, bench/dtgbasat/tabl2.pl, bench/dtgbasat/tabl3.pl, bench/dtgbasat/tabl4.pl: Adjust for the new column. * spot/misc/satsolver.cc, spot/misc/satsolver.hh (stats): Make it const. * python/spot/__init__.py (sat_minimize): Add display_log and return_log options. * tests/python/ipnbdoctest.py: Adjust to not compare SAT-minimization logs as they contain timings.
-
- 19 Mar, 2018 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #335. * bin/common_trans.cc: Add support. * tests/core/autcross4.test: New file. * tests/Makefile.am: Add it. * doc/org/autcross.org, NEWS: Document it.
-
- 21 Feb, 2018 1 commit
-
-
Alexandre Duret-Lutz authored
This helps working around missing C functions like strcasecmp that do not exist everywhere (e.g. on Cygwin), and for which lib/ supplies a replacement. Unfortunately we do not have such build in our current continuous integration suite, so we cannot easily detect files where such config.h inclusion would be useful. Therefore this patch simply makes it mandatory to include config.h in *.cc files. Including this in public *.hh file is currently forbidden. * spot/gen/automata.cc, spot/gen/formulas.cc, spot/kripke/fairkripke.cc, spot/kripke/kripke.cc, spot/ltsmin/ltsmin.cc, spot/misc/game.cc, spot/parseaut/fmterror.cc, spot/parsetl/fmterror.cc, spot/parsetl/parsetl.yy, spot/priv/bddalloc.cc, spot/priv/freelist.cc, spot/priv/satcommon.cc, spot/priv/trim.cc, spot/priv/weight.cc, spot/ta/ta.cc, spot/ta/taexplicit.cc, spot/ta/taproduct.cc, spot/ta/tgtaexplicit.cc, spot/ta/tgtaproduct.cc, spot/taalgos/dot.cc, spot/taalgos/emptinessta.cc, spot/taalgos/minimize.cc, spot/taalgos/reachiter.cc, spot/taalgos/statessetbuilder.cc, spot/taalgos/stats.cc, spot/taalgos/tgba2ta.cc, spot/tl/apcollect.cc, spot/tl/contain.cc, spot/tl/declenv.cc, spot/tl/defaultenv.cc, spot/tl/dot.cc, spot/tl/exclusive.cc, spot/tl/hierarchy.cc, spot/tl/length.cc, spot/tl/ltlf.cc, spot/tl/mark.cc, spot/tl/mutation.cc, spot/tl/nenoform.cc, spot/tl/print.cc, spot/tl/randomltl.cc, spot/tl/relabel.cc, spot/tl/remove_x.cc, spot/tl/simplify.cc, spot/tl/snf.cc, spot/tl/unabbrev.cc, spot/twa/acc.cc, spot/twa/bdddict.cc, spot/twa/bddprint.cc, spot/twa/formula2bdd.cc, spot/twa/taatgba.cc, spot/twa/twa.cc, spot/twa/twagraph.cc, spot/twa/twaproduct.cc, spot/twaalgos/aiger.cc, spot/twaalgos/alternation.cc, spot/twaalgos/are_isomorphic.cc, spot/twaalgos/bfssteps.cc, spot/twaalgos/canonicalize.cc, spot/twaalgos/cleanacc.cc, spot/twaalgos/cobuchi.cc, spot/twaalgos/complement.cc, spot/twaalgos/complete.cc, spot/twaalgos/compsusp.cc, spot/twaalgos/couvreurnew.cc, spot/twaalgos/cycles.cc, spot/twaalgos/degen.cc, spot/twaalgos/determinize.cc, spot/twaalgos/dot.cc, spot/twaalgos/dtbasat.cc, spot/twaalgos/dtwasat.cc, spot/twaalgos/dualize.cc, spot/twaalgos/emptiness.cc, spot/twaalgos/gtec/ce.cc, spot/twaalgos/gtec/gtec.cc, spot/twaalgos/gtec/sccstack.cc, spot/twaalgos/gtec/status.cc, spot/twaalgos/gv04.cc, spot/twaalgos/hoa.cc, spot/twaalgos/iscolored.cc, spot/twaalgos/isdet.cc, spot/twaalgos/isunamb.cc, spot/twaalgos/isweakscc.cc, spot/twaalgos/langmap.cc, spot/twaalgos/lbtt.cc, spot/twaalgos/ltl2taa.cc, spot/twaalgos/ltl2tgba_fm.cc, spot/twaalgos/magic.cc, spot/twaalgos/mask.cc, spot/twaalgos/minimize.cc, spot/twaalgos/neverclaim.cc, spot/twaalgos/parity.cc, spot/twaalgos/postproc.cc, spot/twaalgos/powerset.cc, spot/twaalgos/product.cc, spot/twaalgos/rabin2parity.cc, spot/twaalgos/randomgraph.cc, spot/twaalgos/randomize.cc, spot/twaalgos/reachiter.cc, spot/twaalgos/relabel.cc, spot/twaalgos/remfin.cc, spot/twaalgos/remprop.cc, spot/twaalgos/sbacc.cc, spot/twaalgos/sccfilter.cc, spot/twaalgos/sccinfo.cc, spot/twaalgos/se05.cc, spot/twaalgos/sepsets.cc, spot/twaalgos/simulation.cc, spot/twaalgos/split.cc, spot/twaalgos/stats.cc, spot/twaalgos/strength.cc, spot/twaalgos/stripacc.cc, spot/twaalgos/stutter.cc, spot/twaalgos/sum.cc, spot/twaalgos/tau03.cc, spot/twaalgos/tau03opt.cc, spot/twaalgos/totgba.cc, spot/twaalgos/toweak.cc, spot/twaalgos/translate.cc, spot/twaalgos/word.cc, tests/core/acc.cc, tests/core/bitvect.cc, tests/core/checkpsl.cc, tests/core/checkta.cc, tests/core/consterm.cc, tests/core/emptchk.cc, tests/core/equalsf.cc, tests/core/graph.cc, tests/core/ikwiad.cc, tests/core/intvcmp2.cc, tests/core/intvcomp.cc, tests/core/kind.cc, tests/core/kripkecat.cc, tests/core/length.cc, tests/core/ltlrel.cc, tests/core/ngraph.cc, tests/core/parity.cc, tests/core/randtgba.cc, tests/core/readltl.cc, tests/core/reduc.cc, tests/core/safra.cc, tests/core/sccif.cc, tests/core/syntimpl.cc, tests/core/taatgba.cc, tests/core/tostring.cc, tests/core/trival.cc, tests/core/twagraph.cc, tests/ltsmin/modelcheck.cc, spot/parseaut/scanaut.ll, spot/parsetl/scantl.ll: Include config.h. * spot/gen/Makefile.am, spot/graph/Makefile.am, spot/kripke/Makefile.am, spot/ltsmin/Makefile.am, spot/parseaut/Makefile.am, spot/parsetl/Makefile.am, spot/priv/Makefile.am, spot/ta/Makefile.am, spot/taalgos/Makefile.am, spot/tl/Makefile.am, spot/twa/Makefile.am, spot/twaalgos/Makefile.am, spot/twaalgos/gtec/Makefile.am, tests/Makefile.am: Add the -I lib/ flags. * tests/sanity/includes.test: Catch missing config.h in *.cc, and diagnose config.h in *.hh. * tests/sanity/style.test: Better diagnostics.
-
- 19 Jan, 2018 1 commit
-
-
Alexandre Duret-Lutz authored
* python/spot/impl.i: Add missing bindings from remprop.hh * tests/python/except.py: New file to test several error cases. * tests/Makefile.am: Add it. * spot/twaalgos/rabin2parity.cc (iar): Fix error message.
-
- 16 Jan, 2018 1 commit
-
-
Maximilien Colange authored
* spot/twaalgos/rabin2parity.cc, spot/twaalgos/rabin2parity.hh: implement it * spot/twaalgos/postproc.cc: use it * spot/twaalgos/Makefile.am: build the new files * NEWS: document the new function * python/spot/impl.i: Python bindings for the new function * tests/Makefile.am, tests/core/rabin2parity.test: test the new function
-
- 14 Jan, 2018 3 commits
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/cobuchi.cc: Call sbacc() on transition-based input. * tests/Makefile.am: Remove XFAIL_TESTS. * NEWS: Adjust.
-
Alexandre Duret-Lutz authored
* spot/twaalgos/cobuchi.cc, spot/twaalgos/cobuchi.hh (to_nca): New function. (weak_to_cobuchi): New internal function, used in to_nca and to_dca when appropriate. * spot/twaalgos/postproc.cc, spot/twaalgos/postproc.hh: Implement the CoBuchi option. * python/spot/__init__.py: Support it in Python. * bin/common_post.cc: Add support for --buchi. * bin/autfilt.cc: Remove the --dca option. * tests/core/dca.test, tests/python/automata.ipynb: Adjust and add more tests. In particular, add more complex persistence and recurrence formulas to the list of dca.test. * tests/python/dca.test: Adjust and rename to... * tests/core/dca2.test: ... this. Add more tests, to the point that this is now failing, as described in issue #317. * tests/python/dca.py: Remove. * tests/Makefile.am: Adjust.
-
Alexandre Duret-Lutz authored
Fixes #316. * spot/twaalgos/totgba.cc: Fix confusing definition of scc_inf_wo_fin. * tests/python/streett_totgba2.py: New test case. * tests/Makefile.am: Add it. * NEWS: Mention the bug.
-
- 07 Jan, 2018 1 commit
-
-
Alexandre Duret-Lutz authored
* tests/python/_autparserr.ipynb: New files, containing error checking code from automata-io.ipynb and piperead.ipynb. * tests/python/automata-io.ipynb: Remove error checks, and pipe examples from piperead.ipynb. * tests/python/piperead.ipynb: Delete. * tests/python/word.ipynb: Move error checking code... * tests/python/_word.ipynb: ... in this new file. * doc/org/tut.org, tests/Makefile.am: Adjust.
-
- 06 Jan, 2018 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #315. * spot/twaalgos/cleanacc.cc (simplify_acceptance_here): Do not compare the first edge against previous_a. * tests/core/accsimpl.test: New file. * tests/Makefile.am: Add it. * NEWS: Mention the bug.
-
- 02 Jan, 2018 2 commits
-
-
Alexandre Duret-Lutz authored
* python/spot/__init__.py: Here. * tests/python/parity.py: New file. * tests/Makefile.am: Add it.
-
Alexandre Duret-Lutz authored
* spot/twaalgos/postproc.hh, spot/twaalgos/postproc.cc: Add parity options. * bin/common_post.cc: Add support for --parity. * NEWS: Mention it. * tests/core/parity2.test: New file. * tests/Makefile.am: Add it.
-
- 18 Dec, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/isdet.hh, spot/twaalgos/isdet.cc (check_determinism): New function. * NEWS: Mention it. * tests/python/semidet.py: New file. * tests/Makefile.am: Add it.
-
- 23 Nov, 2017 1 commit
-
-
Maximilien Colange authored
To ease debugging and testing, ltlsynt can output the synthesized strategy as an automaton, not just an aiger circuit. Also, its exit code has been changed to something meaningful. * bin/ltlsynt.cc: Various improvements: options, exit code, code style * spot/twaalgos/aiger.hh, spot/twaalgos/aiger.cc, spot/twaalgos/Makefile.am: Move the aiger printer to separate files * tests/core/ltlsynt.test: Clean up and update test file * tests/Makefile.am: Add the test file to the test suite * NEWS: document the new aiger printer * doc/org/concepts.org: document the named property "synthesis-outputs", used by print_aiger
-
- 05 Nov, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
This improves the coverage for bdd_dict::assert_emptiness() and bdd_dict::dump(). * tests/core/bdddict.cc, tests/core/bdddict.test: New files. * tests/Makefile.am, tests/core/.gitignore: Adjust.
-
- 02 Nov, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
* tests/core/satmin3.test: New file. * tests/Makefile.am: Add it. * spot/misc/satsolver.cc: Cleanup error messages. * spot/misc/satsolver.hh (satsolver_get_solution): Remove this unused function. * tests/core/readsat.cc, tests/core/readsat.test: Delete (unused). * tests/Makefile.am: Adjust.
-
Alexandre Duret-Lutz authored
* tests/core/bdd.test: New file. * tests/Makefile.am: Add it.
-
- 01 Nov, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/stutter.cc, spot/twaalgos/stutter.hh: Cleanup and document the api. * spot/twa/twa.hh, doc/mainpage.dox: Add a stutter-invariant section. * tests/python/stutter-inv-states.ipynb: Rename as ... * tests/python/stutter-inv.ipynb: ... this, and add more comments. * tests/Makefile.am, doc/org/tut.org: Adjust renaming. * bench/stutter/stutter_invariance_randomgraph.cc, bench/stutter/stutter_invariance_formulas.cc, bench/stutter/Makefile.am: Make it compile again. * bin/autfilt.cc: Call inplace variants. * NEWS: Mention the overhaul.
-
- 15 Oct, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Suggested by Tobias Meggendorfer. Fixes #294. * bin/autcross.cc, bin/ltlcross.cc, bin/ltldo.cc: Add the option. * tests/core/autcross3.test, tests/core/ltlcross3.test, tests/core/ltldo.test: Test it. * tests/Makefile.am: Add autcross3.test. * NEWS, doc/org/autcross.org, doc/org/ltlcross.org, doc/org/ltldo.org: Mention the option. * THANKS: Add Tobias.
-
- 11 Oct, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/stutter.cc, spot/twaalgos/stutter.hh: Implement stutter-invariance detection at the state level. * python/spot/impl.i: Instantiate std::vector<bool> * tests/python/stutter-inv-states.ipynb: New file. * tests/Makefile.am, doc/org/tut.org: Add it.
-
- 29 Sep, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Suggested by Maximilien Colange. * spot/twaalgos/degen.cc: If the output has more SCC than the input, detect useless SCCs and remove them. * spot/twaalgos/postproc.cc, spot/twaalgos/postproc.hh, spot/twaalgos/degen.hh: Add support for a degen-remscc option. * bin/spot-x.cc, NEWS: Document it. * tests/core/degenscc.test: New file. * tests/Makefile.am: Add it. * tests/core/det.test: Lower some expected size (yay!).
-
- 25 Sep, 2017 1 commit
-
-
Laurent XU authored
This function changes the parity acceptance of an automaton. * spot/twaalgos/parity.cc, spot/twaalgos/parity.hh: Here * python/spot/impl.i: Add spot/twaalgos/parity.hh * spot/twaalgos/Makefile.am: Add spot/twaalgos/parity.{cc,hh} * tests/core/parity.cc, tests/core/parity.test: Add spot::change_parity() tests * tests/python/parity.ipynb: Add documentation about spot::change_parity() * tests/Makefile.am: Add tests/core/parity.{cc,hh} and tests/python/parity.ipynb * doc/org/tut.org: Add the html page of tests/python/parity.ipynb
-
- 19 Sep, 2017 2 commits
-
-
Alexandre GBAGUIDI AISSE authored
* NEWS: Update. * spot/twaalgos/totgba.hh: Declare dnf_to_streett(). * spot/twaalgos/totgba.cc: Implement dnf_to_streett(). * bin/autfilt.cc: Add --dnf-to-streett cmd line option. * tests/core/dnfstreett.test: Add test. * tests/Makefile.am: Add test file.
-
Alexandre GBAGUIDI AISSE authored
* NEWS: Update. * spot/twaalgos/cobuchi.hh: Declare to_dca() and nsa_to_nca(). * spot/twaalgos/cobuchi.cc: Implement them. * python/spot/impl.i: Include new file for python bindings. * spot/twaalgos/Makefile.am: Add new file. * bin/autfilt.cc: Add --dca command line option. This option does not return a deterministic automaton yet, but it will. * tests/core/dca.test: Add tests for Büchi automata. * tests/python/dca.py: Add a python script that builds a nondet. Streett automaton. * tests/python/dca.test: Add tests for Streett automata. * tests/Makefile.am: Add all tests.
-
- 31 Aug, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twa/acc.cc, spot/twa/acc.hh: Add a LaTeX output for acceptance conditions. * spot/twaalgos/dot.cc: Implement the 'x' option and refactor the code a bit to limit duplication. * tests/core/dot2tex.test: New test case (requires dot2tex). * tests/Makefile.am: Add dot2tex.test. * tests/core/alternating.test, tests/core/readsave.test, tests/python/automata-io.ipynb: Adjust expected output. * NEWS, doc/org/oaut.org: Mention the new option.
-
- 28 Jul, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #252. * NEWS: Mention it. * bin/autcross.cc, bin/man/autcross.x, doc/org/autcross.org: New files. * bin/Makefile.am, bin/man/Makefile.am, doc/org/tools.org, doc/Makefile.am: Add them. * bin/autfilt.cc: Use is_universal() instead of is_deterministic(). * bin/common_hoaread.hh, bin/common_trans.cc, bin/common_trans.hh, bin/ltlcross.cc, bin/ltldo.cc: Factor some bits common between ltlcross, ltldo and autcross. * tests/core/autcross.test, tests/core/autcross2.test: New files. * tests/Makefile.am: Add them. * tests/core/dra2dba.test, tests/core/sbacc.test, tests/core/streett.test: Use autcross.
-
- 19 Jul, 2017 1 commit
-
-
Thomas Medioni authored
* NEWS: mention the modification. * python/spot/impl.i: makes to_weak_alternating visible from python * spot/twaalgos/Makefile.am, spot/twaalgos/toweak.cc, spot/twaalgos/toweak.hh: Implements to_weak_alternating. * tests/Makefile.am, tests/python/toweak.py: Test the results of to_weak_alternating.
-
- 17 Jul, 2017 3 commits
-
-
Henrich Lauko authored
* spot/twaalgos/tra2tba.cc: Support Rabin like input * tests/core/tra2tba.cc: Remove C tests * tests/core/tra2tba.test: Remove C tests * tests/python/tra2tba.py: Convert C tests to python * tests/Makefile.am: Remove C tests and add python tests
-
Henrich Lauko authored
* python/spot/impl.i: Add bindings for tra2tba * spot/twaalgos/Makefile.am: Record tra2tba.cc, tra2tba.hh * spot/twaalgos/tra2tba.cc: Implement transformation of TRA to TBA * spot/twaalgos/tra2tba.hh: Introduce declaration of tra_to_tba * tests/Makefile.am: Record tra2tba tests * tests/core/tra2tba.cc: Add driver for tests * tests/core/tra2tba.test: Add tests of tra2tba transformation
-
Alexandre Duret-Lutz authored
Fixes #274. * python/spot/impl.i: Bind sbacc(). * tests/python/sbacc.py: New tesat. * tests/Makefile.am: Add sbacc.py.
-
- 11 Jun, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
The libtool version distributed by Debian is patched to *not* propagate dependencies (i.e., if libA depends on libB, then linking against libA will not automatically link against libB, it has to be explicit), contrary to what the Libtool manual document. So now we explicitly link against both libA and libB in such case. * configure.ac: Remove the workaround that does not work for MinGW. * doc/org/compile.org: Mention the issue. * bin/Makefile.am, tests/Makefile.am, spot/ltsmin/Makefile.am, doc/org/g++wrap.in: Make the dependencies explicit.
-
- 08 Jun, 2017 2 commits
-
-
Thomas Medioni authored
* NEWS: Mention the modification. * spot/twaalgos/remfin.cc: Adapt to avoid infinite recursion. * spot/twaalgos/totgba.cc: Work on Streett-like. * tests/Makefile.am, tests/python/streett_totgba.py: Tests the modification. * tests/core/remfin.test: Fix one test case that is now handled by the modification.
-
Thomas Medioni authored
Simplify some automata where some marks are identical, or complementary to another. Fixes #216. * NEWS: mention the new function. * spot/twaalgos/cleanacc.cc, spot/twaalgos/cleanacc.hh: Implement the function. * tests/Makefile.am, tests/python/merge.py: Test this implementation.
-
- 07 Jun, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
The libtool version distributed by Debian is patched to *not* propagate dependencies (i.e., if libA depends on libB, then linking against libA will not automatically link against libB, it has to be explicit), contrary to what the Libtool manual document. So now we explicitly link against both libA and libB in such case. * configure.ac: Remove the workaround that does not work for MinGW. * doc/org/compile.org: Mention the issue. * bin/Makefile.am, tests/Makefile.am, spot/ltsmin/Makefile.am, spot/gen/Makefile.am, doc/org/g++wrap.in: Make the dependencies explicit.
-
- 31 May, 2017 3 commits
-
-
Alexandre Duret-Lutz authored
* tests/sanity/getenv.test: New file. * tests/Makefile.am: Add it. * bin/man/spot-x.x: Document SPOT_STUTTER_CHECK and SPOT_DEBUG_PARSER.
-
Alexandre Duret-Lutz authored
* tests/sanity/namedprop.test: New file. * tests/Makefile.am: Add it. * doc/org/concepts.org: Add documentation for degen-levels and simulated-states.
-
Maximilien Colange authored
* NEWS: Document the change. * spot/twaalgos/simulation.cc: Implement the change. * spot/twa/twagraph.cc: `copy_state_names_from` uses simulated states info if present. * spot/twaalgos/determinize.cc: Pretty-print in determinization follows simulated states, avoiding possible confusion. * tests/Makefile.am, tests/python/simstate.py: Add a test.
-
- 30 May, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/sccinfo.hh, spot/twaalgos/sccinfo.cc: Take a filter function as optional argument. * tests/core/sccif.cc, tests/core/sccif.test: New files. * tests/Makefile.am, tests/core/.gitignore: Adjust. * NEWS: Mention the new feature.
-
- 05 May, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #255. * spot/twaalgos/split.cc, spot/twaalgos/split.hh, tests/core/split.test: New files. * spot/twaalgos/Makefile.am, tests/Makefile.am: Add them. * bin/autfilt.cc (--split-edges): New option. * python/spot/impl.i: Process split.hh. * tests/python/alternating.py: Test split_edges() on an alternating automaton.
-