- 19 Jan, 2018 2 commits
-
-
Alexandre GBAGUIDI AISSE authored
* NEWS: Update. * spot/tl/hierarchy.cc: Replace rabin_to_buchi_maybe() with is_buchi_realizable(). * spot/twaalgos/remfin.cc: Implement it. * spot/twaalgos/remfin.hh: Declare it.
-
Alexandre GBAGUIDI AISSE authored
* spot/tl/hierarchy.cc: Factorisations, improvements. * spot/twaalgos/totgba.cc: Typos.
-
- 10 Dec, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/tl/hierarchy.hh, spot/tl/hierarchy.cc (nesting_depth): New function. * python/spot/__init__.py: Also make it a method of formula in Python * bin/common_output.cc, bin/common_output.hh: Implement --stats=%[OP]n. * NEWS: Mention it. * tests/core/format.test, tests/python/formulas.ipynb: Test it.
-
- 08 Dec, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* doc/footer.html: Make the footer XML compatible. * doc/mainpage.dox: Fix references to modules. * spot/tl/formula.hh: Introduce a hierarchy module. * spot/tl/hierarchy.hh: Use it.
-
- 28 Nov, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/misc/bitvect.cc, spot/misc/bitvect.hh, spot/tl/formula.cc, spot/tl/formula.hh: Here. * NEWS: Mention the bug.
-
- 23 Nov, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
Fixes #306. * spot/tl/formula.hh, python/spot/__init__.py: Implement this in C++ and Python. * doc/org/tut03.org: Document (and indirectly test) it. * NEWS: Mention it.
-
Alexandre Duret-Lutz authored
Fixes #307. * spot/tl/formula.hh: Here. * tests/python/ltlparse.py: Test it. * NEWS: Mention it.
-
- 21 Nov, 2017 1 commit
-
-
Alexandre GBAGUIDI AISSE authored
* spot/tl/hierarchy.cc: Rewrite is_recurrence(), is_persistence() * spot/tl/hierarchy.hh: Fix typo. * tests/core/hierarchy.test: Add tests.
-
- 17 Nov, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/misc/bitvect.cc, spot/misc/bitvect.hh, spot/tl/formula.cc, spot/tl/formula.hh: Here. * NEWS: Mention the bug.
-
- 16 Nov, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
This is not optimal yet because it still construct a minimal WDBA internally, but it's better than the previous way to call minimize_obligation() since it can avoid constructing the minimized automaton in a few more cases. * spot/tl/hierarchy.cc, spot/tl/hierarchy.hh: Introduce is_obligation(). * bin/ltlfilt.cc: Wire it to --obligation. * spot/twaalgos/minimize.cc: Implement is_wdba_realizable(), needed by the above. * tests/core/obligation.test: Test it. * bin/man/spot-x.x, NEWS: Document it.
-
Alexandre GBAGUIDI AISSE authored
* spot/tl/hierarchy.cc: code was actually reachable.
-
- 18 Oct, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #293. * spot/tl/simplify.cc: Test implications that would yield tt or ff first. In rules of the form "if a => b, a op b = b" also check if b => a, and in this case return smallest(a,b). * tests/core/reduccmp.test: Add a test. * NEWS: Mention it.
-
- 15 Oct, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #293. * spot/tl/simplify.cc: Test implications that would yield tt or ff first. In rules of the form "if a => b, a op b = b" also check if b => a, and in this case return smallest(a,b). * tests/core/reduccmp.test: Add a test. * NEWS: Mention it.
-
- 03 Oct, 2017 2 commits
-
-
-
Florian Perlié-Long authored
-
- 29 Sep, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #285, reported by Florian Perlié-Long. * NEWS: Mention the issue. * spot/tl/formula.cc: Fix it. * tests/core/kind.test: Document it. * THANKS: Add Florian.
-
- 26 Sep, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #285, reported by Florian Perlié-Long. * NEWS: Mention the issue. * spot/tl/formula.cc: Fix it. * tests/core/kind.test: Document it. * THANKS: Add Florian.
-
- 20 Sep, 2017 1 commit
-
-
Alexandre GBAGUIDI AISSE authored
* NEWS: Update. * bin/man/spot-x.x: Add environment variable. * spot/tl/hierarchy.cc: Implement them. * spot/tl/hierarchy.hh: Declare them.
-
- 19 Sep, 2017 1 commit
-
-
Alexandre GBAGUIDI AISSE authored
* NEWS: Declare it. * spot/tl/hierarchy.cc: Remove static keyword and anonymous namespace. * spot/tl/hierarchy.hh: Declare function.
-
- 02 Sep, 2017 3 commits
-
-
Alexandre Duret-Lutz authored
This addresses part of #35, and is just a generalization of the rules from 646c5170 for #263 (hence, no new documentation). * spot/tl/simplify.cc: Implement this. * tests/core/reduccmp.test: Add test cases. * tests/core/stutter-tgba.test: Adjust to expect smaller automata.
-
Alexandre Duret-Lutz authored
Fixes #108. * spot/tl/simplify.cc: Implement the reduction. * doc/tl/tl.tex, NEWS: Document it. * tests/core/reduccmp.test: Test it.
-
Alexandre Duret-Lutz authored
For #263, reported by Mikuláš Klokočka. G(a & Xe1 & F(b & e2)) = G(a & e1 & Fb & e2) F(a | Xu1 | G(b | u2)) = F(a | u1 | Gb | u2) * spot/tl/simplify.cc: Implement the rules. * doc/tl/tl.tex, NEWS: Document them. * tests/core/reduccmp.test, tests/core/eventuniv.test: Add test cases. * tests/core/det.test, tests/core/ltl2tgba2.test: Adjust to expect smaller automata. * THANKS: Add Mikuláš.
-
- 17 Aug, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/tl/hierarchy.cc (is_recurrence): Do not request state-based acceptance, now that the Rabin->DBA conversionn works on transition-based acceptance as well.
-
- 02 Aug, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/tl/formula.hh: Move all throw statements behind some [[noreturn]] report...() methods... * spot/tl/formula.cc: ... defined here. This makes the methods shorter and helps their inlining. Incidentally, this also removes the uninitialized read that weirdly occurs when _GLIBCXX_DEBUG is on, as observed with #184, but I do not know why.
-
- 10 May, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
The cache used in formula simplification will keep atomic propositions defined between several translations, and may impact variable order. Reported by Maximilien Colange. * spot/tl/simplify.hh, spot/tl/simplify.cc, spot/twaalgos/translate.cc, spot/twaalgos/translate.hh (clear_cache): New method. * bin/ltl2tgba.cc, bin/ltl2tgta.cc: Call it. * spot/twaalgos/stats.cc: Do not keep a point to the formula after printing statistics. * tests/core/ltl2tgba.test: Add a test case. * tests/core/readsave.test: Adjust one formula. * NEWS: Mention the issue.
-
Alexandre Duret-Lutz authored
The cache used in formula simplification will keep atomic propositions defined between several translations, and may impact variable order. Reported by Maximilien Colange. * spot/tl/simplify.hh, spot/tl/simplify.cc, spot/twaalgos/translate.cc, spot/twaalgos/translate.hh (clear_cache): New method. * bin/ltl2tgba.cc, bin/ltl2tgta.cc: Call it. * spot/twaalgos/stats.cc: Do not keep a point to the formula after printing statistics. * tests/core/ltl2tgba.test: Add a test case. * tests/core/readsave.test: Adjust one formula. * NEWS: Mention the issue.
-
- 08 May, 2017 2 commits
-
-
Alexandre Duret-Lutz authored
Fixes #260. Reported by František Blahoudek. The simplification F(f)|q = F(f|q), where q designates an event_univ formula, was not always applied because of a couple of issue: (1) the mospliter was ignoring event_univ unless favor_event_univ was set, (2) when processing formulas from res_EventUniv they were not put back into res_F or res_G to be subject to the F/G rules. * spot/tl/simplify.cc: Improve handling of the above points. * tests/core/reduccmp.test: Adjust and add test case. * tests/core/ltl2tgba2.test, tests/python/atva16-fig2a.ipynb: Adjust.
-
Alexandre Duret-Lutz authored
Fixes #260. Reported by František Blahoudek. The simplification F(f)|q = F(f|q), where q designates an event_univ formula, was not always applied because of a couple of issue: (1) the mospliter was ignoring event_univ unless favor_event_univ was set, (2) when processing formulas from res_EventUniv they were not put back into res_F or res_G to be subject to the F/G rules. * spot/tl/simplify.cc: Improve handling of the above points. * tests/core/reduccmp.test: Adjust and add test case. * tests/core/ltl2tgba2.test, tests/python/atva16-fig2a.ipynb: Adjust.
-
- 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.
-
- 08 Feb, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
-
- 14 Jan, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* bin/common_output.cc: Move some of the printing code... * spot/tl/hierarchy.cc, spot/tl/hierarchy.hh: ... here, as new variants of mp_class... * python/spot/impl.i: ... that we can now call from Python. * python/ajax/spotcgi.in: Use those to simplify and extend the code printing class membership.
-
- 12 Jan, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
* spot/twaalgos/minimize.cc (minimize_wdba): Diminish the color of terminal SCCs that are incomplete, as if they had a non-accepting sink as successor. * spot/twaalgos/strength.hh, spot/twaalgos/strength.cc (is_terminal_automaton): Add an option to ignore trivial SCC as we did before, since it matters for deciding membership to the guarantee class. (is_safety_mwdba): Rewrite as ... (is_safety_automaton): ... generalizating to any acceptance, and ignoring trivial SCCs. * bin/ltlfilt.cc, python/ajax/spotcgi.in, spot/tl/hierarchy.cc, tests/core/ikwiad.cc: Adjust usage of is_terminal_automaton and is_safety_automaton(). * tests/core/hierarchy.test: Add a problematic formula as test-case. * NEWS: Mention the bug.
-
- 10 Jan, 2017 1 commit
-
-
Alexandre Duret-Lutz authored
Tools for deciding the class of a formula. * spot/tl/hierarchy.cc, spot/tl/hierarchy.hh: New files. * spot/tl/Makefile.am: Add them. * bin/common_output.cc, bin/common_output.hh: Implement --format=%h. * tests/core/hierarchy.test: More tests. * NEWS: Update.
-
- 30 Dec, 2016 1 commit
-
-
Alexandre Duret-Lutz authored
Algorithms that remove transitions can turn a non-deterministic automaton into a deterministic one, so we need to be able to specify that determinism can be improved (as opposed to preserved). * spot/twa/twa.hh (twa::prop_set::improve_det): New attribute. (twa::prop_keep, twa::prop_copy): Honor it. * spot/tl/exclusive.cc, spot/twaalgos/alternation.cc, spot/twaalgos/complete.cc, spot/twaalgos/degen.cc, spot/twaalgos/determinize.cc, spot/twaalgos/mask.cc, spot/twaalgos/minimize.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: Adjust calls to prop_keep() and prop_copy().
-
- 10 Dec, 2016 1 commit
-
-
Alexandre Duret-Lutz authored
Reported by Shufang Zhu. * spot/tl/ltlf.cc, spot/tl/ltlf.hh: Fix the transltion and update the comments. * tests/core/ltlfilt.test: Adjust test cases. * NEWS: Mention the fix. * THANKS: Add Shufang Zhu.
-
- 09 Dec, 2016 1 commit
-
-
Alexandre Duret-Lutz authored
Reported by Shufang Zhu. * spot/tl/ltlf.cc, spot/tl/ltlf.hh: Fix the transltion and update the comments. * tests/core/ltlfilt.test: Adjust test cases. * NEWS: Mention the fix. * THANKS: Add Shufang Zhu.
-
- 23 Nov, 2016 1 commit
-
-
Etienne Renault authored
* spot/graph/ngraph.hh, spot/ltsmin/ltsmin.cc, spot/misc/bitvect.hh, spot/misc/intvcomp.cc, spot/misc/satsolver.cc, spot/priv/weight.cc, spot/ta/taexplicit.cc, spot/taalgos/minimize.cc, spot/taalgos/reachiter.cc, spot/tl/exclusive.cc, spot/tl/formula.cc, spot/tl/formula.hh, spot/tl/mark.cc, spot/tl/mutation.cc, spot/tl/relabel.cc, spot/tl/remove_x.cc, spot/tl/simplify.cc, spot/twa/acc.cc, spot/twa/acc.hh, spot/twa/formula2bdd.cc, spot/twa/taatgba.cc, spot/twa/taatgba.hh, spot/twa/twa.hh, spot/twa/twagraph.cc, spot/twaalgos/bfssteps.cc, spot/twaalgos/canonicalize.cc, spot/twaalgos/compsusp.cc, spot/twaalgos/copy.cc, spot/twaalgos/cycles.cc, spot/twaalgos/degen.cc, spot/twaalgos/determinize.cc, spot/twaalgos/dtwasat.cc, spot/twaalgos/emptiness.cc, spot/twaalgos/gv04.cc, spot/twaalgos/hoa.cc, spot/twaalgos/ltl2taa.cc, spot/twaalgos/ltl2tgba_fm.cc, spot/twaalgos/magic.cc, spot/twaalgos/mask.hh, spot/twaalgos/minimize.cc, spot/twaalgos/powerset.cc, spot/twaalgos/product.cc, spot/twaalgos/randomgraph.cc, spot/twaalgos/reachiter.cc, spot/twaalgos/relabel.cc, spot/twaalgos/remfin.cc, spot/twaalgos/sccfilter.cc, spot/twaalgos/se05.cc, spot/twaalgos/simulation.cc, spot/twaalgos/stutter.cc, spot/twaalgos/tau03opt.cc, spot/twaalgos/totgba.cc, spot/twaalgos/word.cc, tests/core/bitvect.cc: here.
-
- 05 Nov, 2016 1 commit
-
-
Alexandre Duret-Lutz authored
Fixes #187. * spot/tl/ltlf.cc, spot/tl/ltlf.hh: New files. * spot/tl/Makefile.am: Add them. * bin/ltlfilt.cc: Add a new option. * bin/man/ltlfilt.x: Add bibliographic reference. * tests/core/ltlfilt.test: Add more tests. * tests/python/ltlf.py: New file. * tests/Makefile.am: Add it. * python/spot/impl.i: Python bindings. * NEWS: Mention it.
-
- 29 Oct, 2016 1 commit
-
-
Alexandre Duret-Lutz authored
These were not actually printing in "SERE" mode due to a copy/paste error. PVS-Studio seems really good at finding those. For #192. * spot/tl/print.cc: Fix it. * NEWS: Mention the bug.
-