spot/tests/python
Alexandre Duret-Lutz 2072151499 twa_graph: swap the two passes of merge_edges()
This improves the determinism in a few cases.

* spot/twa/twagraph.cc (merge_edges): Encapsulate the two
passes into lambdas so that they are very easy to swap.
* spot/twa/twagraph.hh (merge_edges): Adjust documentation.
* tests/python/mergedge.py: Add test case.
* tests/core/alternating.test, tests/python/alternation.ipynb:
Determinism was improved.
* tests/core/parity2.test, tests/core/readsave.test,
tests/core/sbacc.test, tests/python/_product_susp.ipynb,
tests/python/atva16-fig2a.ipynb, tests/python/decompose.ipynb,
tests/python/highlighting.ipynb, tests/python/satmin.ipynb,
tests/python/simstate.py: Adjust expected order of edges.
* NEWS: Mention the change.
2021-01-20 00:16:12 +01:00
..
.gitignore Merge the core and python tests in the tests/ directory 2016-01-04 16:02:30 +01:00
298.py determinize: do not copy the "incomplete" property 2020-12-15 10:47:25 +01:00
341.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
_altscc.ipynb python: define our own SVG DisplayObject 2019-12-05 08:01:07 +01:00
_autparserr.ipynb dot: name the digraph 2018-04-07 18:58:58 +02:00
_aux.ipynb python: upgrade notebook format to v4 2018-01-07 12:59:59 +01:00
_product_susp.ipynb twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
_product_weak.ipynb product: add product_xor() and product_xnor() 2020-05-16 17:55:36 +02:00
_word.ipynb python: remove error recovery checks from the public notebooks 2018-01-07 16:22:46 +01:00
acc_cond.ipynb acc: extend top_disjuncts and top_conjuncts to acc_cond as well 2019-03-29 11:41:52 +01:00
accparse.ipynb python: more conventional __repr__ for several types 2018-11-03 07:53:26 +01:00
accparse2.py LAR made smarter with symmetry-based degeneralization 2018-07-27 00:44:19 +02:00
alarm.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
alternating.py remove universal transitions on the fly 2017-09-27 19:30:42 +02:00
alternation.ipynb twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
atva16-fig2a.ipynb twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
atva16-fig2b.ipynb dot: fix #393 2020-04-29 21:14:36 +02:00
automata-io.ipynb python: reduce automata width to prevent overflows with Jupyter 2020-09-17 11:21:06 +02:00
automata.ipynb postprocess, translate: add support for Büchi (not state-based) 2020-10-06 17:46:34 +02:00
bdddict.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
bdditer.py python: more conventional __repr__ for several types 2018-11-03 07:53:26 +01:00
bddnqueen.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
bugdet.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
complement_semidet.py implement NCSB complementation 2018-07-02 14:32:57 +02:00
contains.ipynb twa: make sure intersection_run and intersection_word use genem 2019-04-25 21:06:30 +02:00
declenv.py parsetl: improve coverage 2017-03-15 14:23:19 +01:00
decompose.ipynb twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
decompose_scc.py decompose: merge decompose_strength() and decompose_scc() 2017-06-30 23:09:31 +02:00
dualize.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
ecfalse.py ignore false edges in emptiness checks and scc_info 2020-04-11 11:24:55 +02:00
except.py game: rewrite, document, and rename solve_reachability_game 2020-12-10 15:04:07 +01:00
formulas.ipynb python: define our own SVG DisplayObject 2019-12-05 08:01:07 +01:00
game.py game: fix handling of useless SCCs 2020-09-24 12:18:14 +02:00
games.ipynb game: rewrite, document, and rename solve_reachability_game 2020-12-10 15:04:07 +01:00
gen.ipynb dot: fix #393 2020-04-29 21:14:36 +02:00
gen.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
genem.py genem: improve the worst case 2020-03-06 12:38:20 +01:00
highlighting.ipynb twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
implies.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
interdep.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
intrun.py run: fix reduce on automata with Fin 2020-07-10 18:05:18 +02:00
ipnbdoctest.py * tests/python/ipnbdoctest.py: Work around failures on Fedora. 2021-01-16 16:33:30 +01:00
kripke.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
langmap.py postprocess, translate: add support for Büchi (not state-based) 2020-10-06 17:46:34 +02:00
ltl2tgba.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
ltl2tgba.test Merge the core and python tests in the tests/ directory 2016-01-04 16:02:30 +01:00
ltlf.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
ltlparse.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
ltlsimple.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
ltsmin-dve.ipynb dot: fix #393 2020-04-29 21:14:36 +02:00
ltsmin-pml.ipynb dot: fix #393 2020-04-29 21:14:36 +02:00
merge.py improve acceptance simplifications using useless colors 2020-07-28 22:26:28 +02:00
mergedge.py twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
minato.py Merge the core and python tests in the tests/ directory 2016-01-04 16:02:30 +01:00
misc-ec.py postprocess, translate: add support for Büchi (not state-based) 2020-10-06 17:46:34 +02:00
optionmap.py python: add xargs support to translate() and postprocess() 2018-10-17 18:16:46 +02:00
origstate.py Degeneralization keeps track of levels. 2017-05-31 13:28:42 +02:00
otfcrash.py tests: cleanup temporary files leftover by a test case 2018-02-01 21:56:26 +01:00
parity.ipynb dot: fix #393 2020-04-29 21:14:36 +02:00
parity.py game: Add set_state_player() and get_state_player() 2020-09-16 10:22:09 +02:00
parsetgba.py Merge the core and python tests in the tests/ directory 2016-01-04 16:02:30 +01:00
pdegen.py improve acceptance simplifications using useless colors 2020-07-28 22:26:28 +02:00
prodexpt.py product: fix handling of operand with false acceptance 2020-03-08 09:15:06 +01:00
product.ipynb python: define our own SVG DisplayObject 2019-12-05 08:01:07 +01:00
randaut.ipynb python: define our own SVG DisplayObject 2019-12-05 08:01:07 +01:00
randgen.py Merge the core and python tests in the tests/ directory 2016-01-04 16:02:30 +01:00
randltl.ipynb introduce op::strong_X 2019-09-23 17:01:28 +02:00
relabel.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
remfin.py improve acceptance simplifications using useless colors 2020-07-28 22:26:28 +02:00
removeap.py remprop: reset no-terminal property 2019-06-02 09:00:08 +02:00
rs_like.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
satmin.ipynb twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
satmin.py postprocess, translate: add support for Büchi (not state-based) 2020-10-06 17:46:34 +02:00
sbacc.py specialized translation for GF(guarantee) and FG(safety) 2018-03-28 18:20:46 +02:00
sccfilter.py scc_filter: preserve state names and highlighted states 2016-11-11 15:21:17 +01:00
sccinfo.py scc_info: detect incorrect initial state 2017-12-22 17:23:10 +01:00
sccsplit.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
semidet.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
setacc.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
setxor.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
simplacc.py simplify_acceptance: Use color inclusions to simplify a condition 2020-07-25 19:15:17 +02:00
simstate.py twa_graph: swap the two passes of merge_edges() 2021-01-20 00:16:12 +01:00
split.py Improving split and reorganizing 2020-09-24 16:29:31 +02:00
streett_totgba.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
streett_totgba2.py fix streett_to_generalized_buchi 2018-01-14 16:08:40 +01:00
stutter-inv.ipynb postproc: add simul-max and wdba-det-max options 2020-09-16 20:40:16 +02:00
stutter.py python: fix incorrect assertions on temporary objects 2021-01-17 20:48:56 +01:00
sum.py * tests/python/sum.py: Simplify code. 2019-07-30 16:26:58 +02:00
testingaut.ipynb python: define our own SVG DisplayObject 2019-12-05 08:01:07 +01:00
toparity.py simplify_acceptance: generalize the complementary mark rewriting 2020-07-29 15:01:55 +02:00
toweak.py postprocess, translate: add support for Büchi (not state-based) 2020-10-06 17:46:34 +02:00
tra2tba.py improve acceptance simplifications using useless colors 2020-07-28 22:26:28 +02:00
trival.py python: cleanup with autopep8 2019-07-05 21:22:29 +02:00
twagraph-internals.ipynb python: define our own SVG DisplayObject 2019-12-05 08:01:07 +01:00
twagraph.py twa_graph: fix purge_unreachable_states on alternating automata 2017-03-29 10:08:23 +02:00
word.ipynb python: define our own SVG DisplayObject 2019-12-05 08:01:07 +01:00