1. 29 Sep, 2017 2 commits
    • Maximilien Colange's avatar
      Fix a bug in scc_info, and clarify documentation · f45112a2
      Maximilien Colange authored
      * spot/twaalgos/sccinfo.hh, spot/twaalgos/sccinfo.cc: Implement it
      * tests/python/sccinfo.py: Test it
      * NEWS: Document the fix
      f45112a2
    • Alexandre Duret-Lutz's avatar
      twa_graph: do not order BDDs by IDs in merge_edges() · cdfe78f1
      Alexandre Duret-Lutz authored
      Fixes #282.
      
      * spot/misc/bddlt.hh (bdd_less_than_stable): New function.
      * spot/twa/twagraph.cc (merge_edges): Use it.
      * tests/core/complement.test, tests/core/degenid.test,
      tests/core/ltldo.test, tests/core/prodor.test,
      tests/core/readsave.test, tests/core/sbacc.test,
      tests/python/atva16-fig2a.ipynb, tests/python/automata.ipynb,
      tests/python/decompose.ipynb, tests/python/dualize.py,
      tests/python/highlighting.ipynb, tests/python/piperead.ipynb,
      tests/python/product.ipynb, tests/python/simstate.py,
      tests/python/tra2tba.py: Adjust all expected outputs.
      * NEWS: Mention the bug.
      cdfe78f1
  2. 06 Sep, 2017 1 commit
  3. 05 Sep, 2017 2 commits
  4. 04 Sep, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      bin: make --stats and --format synonyms · e452e09f
      Alexandre Duret-Lutz authored
      * bin/common_output.cc: Make --stats an alias of --format.
      * bin/common_aoutput.cc: Make --format an alias of --stats.
      * tests/core/acc2.test, tests/core/format.test: Test these aliases.
      * NEWS: Mention this.
      e452e09f
  5. 03 Sep, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      gen: rename KS_COBUCHI to KS_NCA for consistency · e7df182a
      Alexandre Duret-Lutz authored
      * spot/gen/automata.cc, spot/gen/automata.hh, bin/genaut.cc: Rename
      the enum, function, and command-line option.
      * tests/core/genaut.test, tests/python/gen.ipynb, tests/python/gen.py:
      Adjust test cases.
      * doc/org/genaut.org: Adjust doc.
      e7df182a
  6. 02 Sep, 2017 5 commits
    • Alexandre Duret-Lutz's avatar
      simplify: rewrite GF(a & Fb) as G(Fa & Fb) · 6cd6802a
      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.
      6cd6802a
    • Alexandre Duret-Lutz's avatar
      Improve simplification of expr[*0..1] · e8527d5a
      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.
      e8527d5a
    • Alexandre Duret-Lutz's avatar
      ltl2tgba_fm: implement a small optimization · 190d4cfa
      Alexandre Duret-Lutz authored
      Fixes #277.
      
      * spot/twaalgos/ltl2tgba_fm.cc: Improve the translation of f U g
      when f is universal.  Suggested by Maximilien Colange.
      * tests/core/ltl2tgba.test: Test it.
      190d4cfa
    • Alexandre Duret-Lutz's avatar
      genltl: add --gxf-and and --fxg-or · 42abcf85
      Alexandre Duret-Lutz authored
      As suggested in #263.
      
      * spot/gen/formulas.cc, spot/gen/formulas.hh, bin/genltl.cc: Implement
      these options.
      * tests/core/genltl.test: Use them.
      * NEWS: Mention them.
      42abcf85
    • Alexandre Duret-Lutz's avatar
      simplify: some new simplification rules · 646c5170
      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áš.
      646c5170
  7. 01 Sep, 2017 1 commit
  8. 31 Aug, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      dot: add x option for dot2tex · fbb9e437
      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.
      fbb9e437
  9. 30 Aug, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      dot: add option 'A' to disable 'a' · b242122c
      Alexandre Duret-Lutz authored
      This way in 2.5 we can make 'a' the default, and tell people to use
      SPOT_DOTDEFAULT=A if they want the old behavior in both 2.4 and 2.5.
      
      * spot/twaalgos/dot.cc: Implement the option.
      * NEWS, bin/common_aoutput.cc: Mention it.
      * tests/core/readsave.test: Test it.
      b242122c
    • Alexandre Duret-Lutz's avatar
      dot: display Rabin-like and Streett-like acceptances · 205294c2
      Alexandre Duret-Lutz authored
      * spot/twaalgos/dot.cc (print_acceptance_for_human): Add Rabin-like
      and Streett-like checks.
      * tests/core/sccdot.test, tests/python/decompose.ipynb,
      tests/python/randaut.ipynb, tests/core/alternating.test: Adjust.
      205294c2
  10. 29 Aug, 2017 1 commit
  11. 28 Aug, 2017 1 commit
    • Maximilien Colange's avatar
      Fix a bug in spot.complete() · 1b2f2a79
      Maximilien Colange authored
      spot.complete() could complete an empty co-Büchi automaton into an
      automaton accepting everything.
      
      * NEWS: Document it
      * spot/twaalgos/complete.cc: Fix it
      * tests/core/complete.test, tests/core/prodor.test: Test it
      1b2f2a79
  12. 17 Aug, 2017 4 commits
    • Alexandre Duret-Lutz's avatar
      mention autcross in arch.tex · b7d54c8b
      Alexandre Duret-Lutz authored
      * doc/org/arch.tex: Add autcross.
      * tests/sanity/bin.test: Make sure all binaries appear in arch.tex.
      b7d54c8b
    • Alexandre Duret-Lutz's avatar
      dot: display acceptance names · 1cc45b24
      Alexandre Duret-Lutz authored
      * spot/twaalgos/dot.cc: Display common acceptance names.
      * NEWS: Mention the change.
      * doc/org/oaut.org: Adjust text.
      * tests/core/alternating.test, tests/core/readsave.test,
      tests/python/_altscc.ipynb, tests/python/alternation.ipynb,
      tests/python/atva16-fig2a.ipynb, tests/python/atva16-fig2b.ipynb,
      tests/python/automata.ipynb, tests/python/decompose.ipynb,
      tests/python/gen.ipynb, tests/python/highlighting.ipynb,
      tests/python/product.ipynb, tests/python/randaut.ipynb: Adjust test
      cases.
      1cc45b24
    • Alexandre Duret-Lutz's avatar
      acc: fix operator| and operator& · f8ef06ac
      Alexandre Duret-Lutz authored
      Bug introduced in abe2c08b, visible in tests/python/product.ipynb,
      and tests/python/acc_cond.ipynb.
      
      * spot/twa/acc.hh: fix operator| and operator&.
      * tests/python/acc_cond.ipynb: Adjust test case.
      f8ef06ac
    • Thomas Medioni's avatar
      to_weak_alternating(): fixes a bug on generalized co-Büchi automata · 4b5606e7
      Thomas Medioni authored
      Fixes #278. Also adds a test ensuring non-regression.
      
      * spot/twaalgos/toweak.cc: Fixes the bug.
      * tests/python/toweak.py: Add a test case.
      4b5606e7
  13. 09 Aug, 2017 2 commits
  14. 08 Aug, 2017 1 commit
  15. 04 Aug, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      stats: allow counting complete SCCs · 1cf5778f
      Alexandre Duret-Lutz authored
      * bin/common_aoutput.cc, NEWS: Update documentation.
      * spot/twaalgos/stats.cc: Honor c and C.
      * tests/core/alternating.test: Test it.
      1cf5778f
    • Alexandre Duret-Lutz's avatar
      is_weak_scc and friend: make them work for alternating automata · 223b0c6a
      Alexandre Duret-Lutz authored
      * spot/twaalgos/isweakscc.cc, spot/twaalgos/isweakscc.hh,
      spot/twaalgos/mask.cc, spot/twaalgos/mask.hh: Adjust to
      work with alternating automata.
      * spot/twaalgos/sccinfo.cc, spot/twaalgos/sccinfo.hh
      (determine_unknown_acceptance): Do not complain about
      not supporting alternating automata if there is not
      indeterminate acceptance.
      * spot/twaalgos/stats.cc: Fix a bug were %[iw]c was
      read as %[iww]c.
      * tests/core/alternating.test: Test is_inherently_weak_scc() and
      is_weak_scc().
      * python/spot/impl.i: Add missing python bindings
      for isweakscc.hh.
      223b0c6a
  16. 03 Aug, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      dot: extend the palette from 9 to 16 colors · e041db61
      Alexandre Duret-Lutz authored
      Let's close #212 even if this does not cover the 32 sets.
      
      * spot/twaalgos/dot.cc: Change the palette.
      * doc/org/autfilt.org, NEWS: Adjust documentation.
      * tests/core/alternating.test, tests/core/readsave.test,
      tests/core/tgbagraph.test, tests/python/_altscc.ipynb,
      tests/python/alternation.ipynb, tests/python/atva16-fig2a.ipynb,
      tests/python/automata-io.ipynb, tests/python/automata.ipynb,
      tests/python/decompose.ipynb, tests/python/gen.ipynb,
      tests/python/highlighting.ipynb, tests/python/ltsmin-dve.ipynb,
      tests/python/piperead.ipynb, tests/python/product.ipynb,
      tests/python/randaut.ipynb, tests/python/word.ipynb: Adjust
      test cases.
      e041db61
  17. 01 Aug, 2017 1 commit
  18. 31 Jul, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      hoa: fix I/O of determinism · d3607a7c
      Alexandre Duret-Lutz authored
      Fixes #212.
      
      * spot/parseaut/parseaut.yy, spot/twaalgos/hoa.cc: Recognize
      exist-branch, and adjust printer to the 1.1 semantics.
      * tests/core/alternating.test, tests/core/complete.test,
      tests/core/det.test, tests/core/explsum.test,
      tests/core/parseaut.test, tests/core/readsave.test,
      tests/core/sbacc.test, tests/core/tgbagraph.test,
      tests/python/alternating.py, tests/python/dualize.py: Adjust test
      cases.
      * NEWS: Mention the change.
      d3607a7c
  19. 28 Jul, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      bin: introduce autcross · 0cf250d8
      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.
      0cf250d8
  20. 25 Jul, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      acc: make &= and |= symmetrical · abe2c08b
      Alexandre Duret-Lutz authored
      Operator &= used to always move Fin to the front, it does not anymore.
      The only thing it does now is to merge Inf(x)&Inf(y) as Inf({x,y}).
      Operator |= is now symmetrical and merges Fin()s.
      
      Fixes #253.
      
      * spot/twa/acc.cc, spot/twa/acc.hh: Simplify &= and make |= symmetrical.
      * spot/twaalgos/cleanacc.cc: Fix conjunction order.
      * tests/core/acc.test, tests/core/acc2.test, tests/core/parseaut.test,
      tests/core/readsave.test, tests/core/satmin2.test,
      tests/core/sccdot.test, tests/python/acc_cond.ipynb,
      tests/python/accparse.ipynb, tests/python/automata.ipynb,
      tests/python/product.ipynb, tests/python/randaut.ipynb: Adjust test
      cases.
      abe2c08b
    • Alexandre Duret-Lutz's avatar
      deprecate copy() in favor of make_twa_graph() · 8e685e00
      Alexandre Duret-Lutz authored
      Fixes #258.
      
      * spot/twaalgos/copy.cc: Delete, and move the code...
      * spot/twa/twagraph.cc: ... in some anonymous namespace here.
      * spot/twa/twagraph.hh: Adjust the make_twa_graph() overload.
      * spot/twaalgos/copy.hh, NEWS: Mark copy() as deprecated and redirect
      to make_twa_graph().
      * doc/org/upgrade2.org, doc/org/tut51.org, python/spot/impl.i,
      spot/twaalgos/dot.cc, spot/twaalgos/langmap.cc, tests/core/ikwiad.cc:
      Adjust callers.
      * spot/twaalgos/Makefile.am: Remove copy.cc.
      8e685e00
  21. 24 Jul, 2017 2 commits
  22. 20 Jul, 2017 1 commit
  23. 19 Jul, 2017 1 commit
    • Thomas Medioni's avatar
      Implement to_weak_alternating() which weakifies tgbas · c8889e65
      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.
      c8889e65
  24. 17 Jul, 2017 3 commits
    • Henrich Lauko's avatar
      remfin: Use tra2tba as new rabin strategy in remove_fin · d45b60a4
      Henrich Lauko authored
      Move implementation of tra2tba to remfin.
      
      * python/spot/impl.i: Remove tra2tba python bindings
      * spot/twaalgos/Makefile.am: Remove tra2tba
      * spot/twaalgos/remfin.cc: Update rabin_strategy
      * spot/twaalgos/tra2tba.cc: Delete the file
      * spot/twaalgos/tra2tba.hh: Delete the file
      * tests/core/remfin.test: Update tests
      * tests/python/tra2tba.py: Update tests
      d45b60a4
    • Henrich Lauko's avatar
      tra2tba: Merge edges of resulting automaton · bd8ede62
      Henrich Lauko authored
      * spot/twaalgos/tra2tba.cc: Call 'merge_edges'
      * tests/python/tra2tba.py: Update tests
      bd8ede62
    • Henrich Lauko's avatar
      tra2tba: Add support for Rabin like automata · 69cf3c55
      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
      69cf3c55