- 07 Apr, 2017 2 commits
-
-
Thomas Medioni authored
* NEWS: Mention of the deprecation * bench/stutter/stutter_invariance_randomgraph.cc, bin/autfilt.cc, bin/ltlcross.cc, spot/twaalgos/langmap.cc, spot/twaalgos/minimize.cc, spot/twaalgos/powerset.cc, spot/twaalgos/stutter.cc, tests/core/ikwiad.cc, tests/python/bugdet.py, tests/python/remfin.py, tests/python/sum.py: Refactor calls to dtwa_complement() with calls to dualize(). * doc/org/upgrade2.org: Change mention of dtwa_complement with dualize. * spot/twaalgos/complement.hh: Add deprecation notice. * python/spot/impl.i: Add deprecation notice for the python bindings.
-
Thomas Medioni authored
* NEWS: Mention the implementation * python/spot/impl.i: Add dualize() to python interface. * spot/twaalgos/Makefile.am: Add dualize.cc,hh to the build * spot/twaalgos/dualize.cc: Implement dualize() that takes an automaton and returns its dual * spot/twaalgos/dualize.hh: Implement dualize() * tests/Makefile.am: Add dualize tests to the test suite * tests/python/dualize.py: Test cases for dualize
-
- 29 Mar, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
* tests/python/ipnbdoctest.py: Use importlib instead of imp. * tests/python/ltlparse.py: Fix invalid escape sequence.
-
Alexandre Duret-Lutz authored
The algorithm had two problems: it was removing only useless destination from universal destination (instead of removing the entire edge), and it was not properly iterating over the entire reachable automaton. * spot/twa/twagraph.cc: Fix it. * spot/twa/twagraph.hh: Adjust documentation. * tests/core/alternating.test: Add more tests. * tests/python/twagraph.py: Adjust. * NEWS: Mention the bug.
-
- 27 Mar, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
For #212. * spot/twa/twa.hh: Rename prop_deterministic() as prop_universal(), and keep the old name as deprecated. * spot/twaalgos/isdet.cc, spot/twaalgos/isdet.hh: Rename is_deterministic() as is_universal(), and add a new function for is_deterministic(). * doc/org/concepts.org, doc/org/hoa.org, doc/org/tut21.org, spot/tl/hierarchy.cc, spot/twa/twagraph.cc, spot/twaalgos/are_isomorphic.cc, spot/twaalgos/determinize.cc, spot/twaalgos/dtbasat.cc, spot/twaalgos/dtwasat.cc, spot/twaalgos/hoa.cc, spot/twaalgos/minimize.cc, spot/twaalgos/postproc.cc, spot/twaalgos/product.cc, spot/twaalgos/randomgraph.cc, spot/twaalgos/remfin.cc, spot/twaalgos/simulation.cc, spot/twaalgos/totgba.cc, spot/twaalgos/word.cc, tests/python/product.ipynb, tests/python/remfin.py: Adjust. * NEWS: Mention the change.
-
- 20 Mar, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twa/twa.hh: Add support. Make two constructors for prop_set in order to diagnose constructions with 5 arguments. * spot/parseaut/parseaut.yy: Adjust diagnostics for complete and deterministic. * spot/tl/exclusive.cc, spot/twa/twagraph.cc, spot/twaalgos/alternation.cc, spot/twaalgos/complete.cc, spot/twaalgos/complete.hh, spot/twaalgos/degen.cc, spot/twaalgos/determinize.cc, spot/twaalgos/hoa.cc, spot/twaalgos/isdet.cc, spot/twaalgos/mask.cc, spot/twaalgos/minimize.cc, spot/twaalgos/product.cc, spot/twaalgos/remfin.cc, spot/twaalgos/remprop.cc, spot/twaalgos/sbacc.cc, spot/twaalgos/sccfilter.cc, spot/twaalgos/simulation.cc, spot/twaalgos/strength.cc, spot/twaalgos/stutter.cc, spot/twaalgos/totgba.cc, tests/core/parseaut.test, tests/python/product.ipynb: Adjust. * NEWS, doc/org/concepts.org, doc/org/hoa.org, doc/org/tut21.org: Document it.
-
- 15 Mar, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/parsetl/parsetl.yy: Adjust one diagnostic. * spot/parsetl/scantl.ll: Fix recovering of missing closing brace in lenient mode. * tests/python/declenv.py: Move some tests... * tests/python/ltlparse.py: ... here, and add many more. * NEWS: Mention the lenient mode bug.
-
- 10 Mar, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/couvreurnew.cc, spot/twaalgos/gv04.cc, spot/twaalgos/magic.cc, spot/twaalgos/se05.cc, spot/twaalgos/tau03.cc, spot/twaalgos/tau03opt.cc: Throw if precondition on acceptance condition is not satisfied. * tests/python/misc-ec.py: New file. * tests/Makefile.am: Add it. * NEWS: Mention the change.
-
Alexandre Duret-Lutz authored
* spot/twaalgos/couvreurnew.cc, spot/twaalgos/gv04.cc, spot/twaalgos/magic.cc, spot/twaalgos/se05.cc, spot/twaalgos/tau03.cc, spot/twaalgos/tau03opt.cc: Throw if precondition on acceptance condition is not satisfied. * tests/python/misc-ec.py: New file. * tests/Makefile.am: Add it. * NEWS: Mention the change.
-
- 09 Mar, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
* python/spot/impl.i: Here. * tests/python/declenv.py: New file. * tests/Makefile.am: Add it.
-
Thomas Medioni authored
Fixes #231. * NEWS: Mention of implementation of sum, sum_and. * bin/autfilt.cc: Add --sum, --sum-or and --sum-and options. * python/spot/impl.i: Add bindings for sum, sum_and. * spot/twaalgos/Makefile.am: Add sum.cc, sum.hh. * spot/twaalgos/sum.cc: Implement sum, sum_and. * spot/twaalgos/sum.hh: Declaration of sum, sum_and. * tests/Makefile.am: Add sum tests. * tests/core/explsum.test: Test the sum of two automatons, false or false, unsatisfied mark propagation, handling of univ. transitions. * tests/python/sum.py: Check that two automatons that does not share their bdd dict are not accepted, then run tests over the sum of randomly generated LTL formulas.
-
- 08 Mar, 2017 4 commits
-
-
Alexandre Duret-Lutz authored
* doc/org/upgrade2.org, tests/python/prodexpt.py, tests/python/product.ipynb, NEWS: Fix typos. * tests/sanity/style.test: Add a check for this.
-
Alexandre Duret-Lutz authored
Follow-up to an email from Ayrat Khalimov. * python/spot/impl.i: Include twa/formula2bdd.hh. * python/spot/__init__.py: Make the dictionnary optional. * spot/twa/formula2bdd.cc: Throw an exception instead of asserting. * tests/python/bdditer.py: New file. * tests/Makefile.am: Add it. * NEWS: Update.
-
Alexandre Duret-Lutz authored
* doc/org/upgrade2.org, tests/python/prodexpt.py, tests/python/product.ipynb, NEWS: Fix typos. * tests/sanity/style.test: Add a check for this.
-
Alexandre Duret-Lutz authored
Follow-up to an email from Ayrat Khalimov. * python/spot/impl.i: Include twa/formula2bdd.hh. * python/spot/__init__.py: Make the dictionnary optional. * spot/twa/formula2bdd.cc: Throw an exception instead of asserting. * tests/python/bdditer.py: New file. * tests/Makefile.am: Add it. * NEWS: Update.
-
- 07 Mar, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
The goal is to improve coverage stats, but I discovered two issues while doing so. * tests/python/twagraph.py: New test case. * tests/Makefile.am: Add it. * spot/twa/twagraph.hh: Add fix typos in error messages. * python/spot/impl.i: Fix broken wrappers for state_from_number and state_acc_sets.
-
Alexandre Duret-Lutz authored
The goal is to improve coverage stats, but I discovered two issues while doing so. * tests/python/twagraph.py: New test case. * tests/Makefile.am: Add it. * spot/twa/twagraph.hh: Add fix typos in error messages. * python/spot/impl.i: Fix broken wrappers for state_from_number and state_acc_sets.
-
- 21 Feb, 2017 3 commits
-
-
Clément Gillard authored
* tests/python/decompose.ipynb: Add about `decompose_scc`. * doc/org/tut.org: Update description.
-
Clément Gillard authored
Put what is done by `autfilt` in a new function, `decompose_acc_scc`. * bin/autfilt.cc: Move code from here... * spot/twaalgos/strength.cc, spot/twaalgos/strength.hh: To here. * tests/python/decompose_scc.py: Test python binding.
-
Clément Gillard authored
See #172. While at it, fix typo in doxygen comment. * spot/twaalgos/strength.cc, spot/twaalgos/strength.hh: New function. * tests/python/decompose_scc.py, tests/Makefile.am: Test python binding. * spot/twaalgos/mask.hh: Fix typo.
-
- 20 Feb, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Related to #172, where we discussed that scc_info bindings were missing. * spot/twaalgos/sccinfo.hh (spot::scc_info::scc_node): Move... (spot::scc_info_node): ... here to help Swig. * python/spot/impl.i: Add bindings for scc_info. * tests/python/sccinfo.py: New file. * tests/Makefile.am: Add it.
-
- 16 Feb, 2017 1 commit
-
-
Arthur Remaud authored
Fixes #208 * NEWS: Informations about the modifications * spot/twaalgos/dot.cc (print): Gestion of cluster for universal transitions * tests/core/alternating.test: tests added * tests/core/neverclaimread.test: tests changed for new dot format * tests/core/readsave.test: tests changed * tests/core/sccdot.test: tests changed * tests/python/_altscc.ipynb: tests changed * tests/python/decompose.ipynb: tests changed
-
- 12 Feb, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Part of #212. * spot/misc/common.hh (SPOT_DEPRECATED): Improve support current compilers and options flags. * spot/twa/twagraph.hh, spot/graph/graph.hh (is_alternating): Mark it as deprecated. (is_existential): New method. * bin/autfilt.cc, bin/ltlcross.cc, spot/parseaut/parseaut.yy, spot/twa/twa.cc, spot/twa/twagraph.cc, spot/twaalgos/alternation.cc, spot/twaalgos/are_isomorphic.cc, spot/twaalgos/canonicalize.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/hoa.cc, spot/twaalgos/isunamb.cc, spot/twaalgos/isweakscc.cc, spot/twaalgos/mask.hh, spot/twaalgos/minimize.cc, spot/twaalgos/postproc.cc, spot/twaalgos/product.cc, spot/twaalgos/randomize.cc, spot/twaalgos/remfin.cc, spot/twaalgos/sbacc.cc, spot/twaalgos/sccfilter.cc, spot/twaalgos/sccinfo.cc, spot/twaalgos/simulation.cc, spot/twaalgos/strength.cc, tests/core/graph.cc, tests/core/ngraph.cc, tests/python/alternating.py: Adjust all uses. * NEWS: Mention the renaming.
-
- 04 Feb, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/emptiness.cc, spot/twaalgos/emptiness.hh: Here. * tests/python/ltsmin-dve.ipynb: Add a test. * NEWS: Mention the change.
-
- 18 Jan, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* python/spot/__init__.py (show_mp_hierarchy, mp_hierarchy_svg): New functions. * tests/python/formulas.ipynb: Illustrate show_mp_hierarchy. * python/ajax/spotcgi.in: Use mp_hierarchy_svg. * python/ajax/css/trans.css: Adjust for possible overflows. * NEWS: Mention this new feature.
-
- 17 Jan, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
* tests/python/highlighting.ipynb: Add an example of highlight_languages().
-
Alexandre Duret-Lutz authored
Fixes #203. * spot/twaalgos/langmap.hh (highlight_languages): Simplify the interface by only taking the automaton to color. * spot/twaalgos/langmap.cc (highlight_languages): Only introduce color for states that have a non-unique language. * tests/core/highlightstate.test: Update and add more tests. * tests/python/langmap.py: Keep the tests simple. * bin/autfilt.cc: Adjust usage and help string.
-
- 06 Jan, 2017 7 commits
-
-
Alexandre GBAGUIDI AISSE authored
* python/spot/__init__.py: Handle options. * spot/twaalgos/dtwasat.cc: Handle options. * spot/twaalgos/postproc.cc: Handle options. * spot/twaalgos/postproc.hh: Handle options. * tests/core/satmin.test: Update tests. Now use 'sat-minimize=4' to use the naive algo. * tests/core/satmin2.test: Update tests. Now use --sat-minimize='naive' to use the naive algo. * tests/python/satmin.py: Update tests. Now use 'naive=True' to use the naive algo.
-
Alexandre GBAGUIDI AISSE authored
* python/spot/__init__.py: Handle 'dicho' option in 'sat_minimize'. * spot/priv/satcommon.cc: Implement get_number_of_distinct_vals. * spot/priv/satcommon.hh: Declare get_number_of_distinct_vals. * spot/twaalgos/dtbasat.cc: Use get_number_of_distinct_vals. * spot/twaalgos/dtbasat.hh: Change dichotomy function's prototype. * spot/twaalgos/dtwasat.cc: Use get_number_of_distinct_vals. * spot/twaalgos/dtwasat.hh: Change dichotomy function's prototype. Handle options. * spot/twaalgos/postproc.cc: Handle options. * spot/twaalgos/postproc.hh: Add dicho_langmap_ var for options. * tests/core/satmin2.test: Add tests for dichotomy. * tests/core/satmin.test: Add tests for dichotomy. * tests/python/satmin.py: Replace 'dichotomy' with 'dicho' option.
-
Alexandre GBAGUIDI AISSE authored
* python/spot/impl.i: Add python bindings. * spot/twaalgos/langmap.cc: Implement algo. * spot/twaalgos/langmap.hh: Declare algo. * spot/twaalgos/Makefile.am: Add new files. * tests/python/langmap.py: Add tests. * NEWS: Update.
-
Alexandre GBAGUIDI AISSE authored
* python/spot/__init__.py: Add 'assume' option. * spot/misc/satsolver.cc: Add function to handle assumptions. * spot/misc/satsolver.hh: Declare assumption function. * spot/twaalgos/dtbasat.cc: Implement dtba_sat_minimize_assume. * spot/twaalgos/dtbasat.hh: Declare it. * spot/twaalgos/dtwasat.cc: Implement dtwa_sat_minimize_assume and handle options. * spot/twaalgos/dtwasat.hh: Declare it. * spot/twaalgos/postproc.cc: Handle options. * spot/twaalgos/postproc.hh: Use param_ var for incr and assume. * tests/core/satmin.test: Add tests for the new function. * tests/core/satmin2.test: Add tests for the new function. * tests/python/satmin.py: Add tests for the new function.
-
Alexandre GBAGUIDI AISSE authored
* python/spot/__init__.py: Add 'incr' boolean argument. * spot/twaalgos/dtbasat.cc: Implement dtba_sat_minimize_incr(...). * spot/twaalgos/dtbasat.hh: Declare it. * spot/twaalgos/dtwasat.cc: Implement dtwa_sat_minimize_incr(...) and deal with options. * spot/twaalgos/dtwasat.hh: Declare it. * spot/twaalgos/postproc.cc: Add option --sat-minimize=incr. * spot/twaalgos/postproc.hh: Add incr parameter. * tests/core/satmin.test: Add tests for incremental version. Update expected result. * tests/core/satmin2.test: Add tests for incremental version. * tests/python/satmin.py: Add tests for incremental version.
-
Alexandre GBAGUIDI AISSE authored
* tests/core/satmin.test: Delete check for SPOT_SATSOLVER env variable and add state numbers verification. * tests/core/satmin2.test: Delete check for SPOT_SATSOLVER env variable. * tests/python/satmin.py: Delete check for SPOT_SATSOLVER env variable.
-
Alexandre Duret-Lutz authored
This fix recent failures observed on arch linux because it uses newer versions of graphviz and Python. * tests/python/ipnbdoctest.py (sanitize): More substitutions.
-
- 29 Dec, 2016 2 commits
-
-
Alexandre Duret-Lutz authored
and call it after parsing * spot/twa/twagraph.cc, spot/twa/twagraph.hh (twa_graph::merge_univ_dests): New method. * spot/parseaut/parseaut.yy: Call it. * spot/twaalgos/dot.cc: Improve output, now that several edges can use the same universal destination. * tests/core/alternating.test, tests/core/complete.test, tests/core/parseaut.test, tests/python/_altscc.ipynb, tests/python/alternating.py, tests/python/alternation.ipynb: Adjust test case. * doc/org/tut24.org: Adjust example.
-
Alexandre Duret-Lutz authored
This mixes the subset construction (for 1-state rejecting SCCs) and the breakpoint construction (for larger rejecting SCCs). The algorithm should probably be rewritten in a cleaner and more efficient way, but that should do for a first version. It should be easy to extend it to support Büchi acceptance (since the breakpoint construction works for this) when we need it. * spot/twaalgos/alternation.hh, spot/twaalgos/alternation.cc (remove_alternation): New function. * tests/python/alternation.ipynb: New file. * tests/Makefile.am, doc/org/tut.org: Add it.
-
- 27 Dec, 2016 4 commits
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/sccinfo.cc: Consider universal edges as if they were existential edges. * spot/twaalgos/sccinfo.hh: Document that. * spot/twaalgos/dot.cc: Allow option 's' again, for easy testing. * tests/core/alternating.test: Adjust tests. * tests/python/_altscc.ipynb: New file (more tests). * tests/Makefile.am: Add it.
-
Alexandre Duret-Lutz authored
This should will come handy to implement the convertion from LTL to alternating automata, and to handle automata with multiple initial states. * spot/twaalgos/alternation.hh, spot/twaalgos/alternation.cc: New files. * spot/twaalgos/Makefile.am: Add them. * python/spot/impl.i: Add bindings. * tests/python/alternating.py: Test states_and.
-
Alexandre Duret-Lutz authored
The only missing point is that the HOA parser cannot deal with multiple universal initial states, as seen in parseaut.test. * spot/graph/graph.hh (new_univ_dests): New function, extracted from... (new_univ_edge): ... this one. * spot/twa/twagraph.hh (set_univ_init_state): Implement using new_univ_dests. * spot/twaalgos/dot.cc, spot/twaalgos/hoa.cc, python/spot/impl.i: Add support for universal initial states. * spot/parseaut/parseaut.yy: Add preliminary support for universal initial states. Multiple universal initial states are still not supported. * tests/core/alternating.test, tests/core/parseaut.test, tests/python/alternating.py: Adjust tests and exercise this new feature.
-
Alexandre Duret-Lutz authored
Currently this only reads universal branches. The parser (and the automaton code) do not support universal initial states. * spot/parseaut/parseaut.yy: Read universal branches. Deal with the no-univ-branch/!univ-branch change in HOA 1.1. * tests/python/alternating.py: Read the output of print_hoa. * tests/core/parseaut.test: Adjust test output, and add more tests.
-