1. 29 Sep, 2017 1 commit
  2. 05 Sep, 2017 1 commit
    • Clément Gillard's avatar
      fix typos and indentation · ad358842
      Clément Gillard authored
      * bin/autfilt.cc, python/spot/__init__.py, spot/twa/twa.hh,
      spot/twa/twaproduct.cc, spot/twaalgos/couvreurnew.cc,
      tests/python/bugdet.py: Here.
      ad358842
  3. 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
  4. 28 Aug, 2017 1 commit
    • Maximilien Colange's avatar
      Typos · eb91ecf6
      Maximilien Colange authored
      * NEWS, doc/org/concepts.org, doc/org/hierarchy.org,
        spot/misc/optionmap.hh, spot/twa/acc.hh, spot/twaalgos/ltl2tgba_fm.hh,
        spot/twaalgos/sccinfo.hh, spot/twaalgos/translate.cc: fix typos
      eb91ecf6
  5. 17 Aug, 2017 1 commit
  6. 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
  7. 17 Jul, 2017 1 commit
  8. 30 Jun, 2017 1 commit
  9. 21 Jun, 2017 2 commits
  10. 08 Jun, 2017 1 commit
  11. 05 Jun, 2017 1 commit
  12. 31 May, 2017 3 commits
    • Alexandre Duret-Lutz's avatar
      acc: add a maybe_accepting() method · 78add1d4
      Alexandre Duret-Lutz authored
      * spot/twa/acc.cc, spot/twa/acc.hh: Implement the new method, and
      use it to implement inf_accepting().
      * tests/python/accparse2.py: Add some tests.
      78add1d4
    • Maximilien Colange's avatar
      Degeneralization keeps track of levels. · f7d14ab5
      Maximilien Colange authored
      * NEWS: Document this.
      * spot/twa/twagraph.cc: `copy_state_names_from` handles this new info.
      * spot/twaalgos/degen.hh, spot/twaalgos/degen.cc: Implement it.
      * tests/python/origstate.py, tests/python/simstate.py: Update tests to
        reflect the change.
      f7d14ab5
    • Maximilien Colange's avatar
      Simulation keeps track of simulated states in the input automaton. · 7b5ab545
      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.
      7b5ab545
  13. 29 May, 2017 1 commit
    • Thomas Medioni's avatar
      rs_like: fix bug to accept Fin | Fin , Inf & Inf · 4da6a5cd
      Thomas Medioni authored
      co-Büchi is now recognized as Streett-like, Büchi as Rabin-like.
      Also recognized Inf & Inf & Inf... as Streett-like and
      Fin | Fin | Fin... as Rabin-like.
      
      * spot/twa/acc.cc: Fix the bug
      * tests/python/rs_like.py: Add some test case
      4da6a5cd
  14. 18 May, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      bin: release all subformulas between runs · f6607f1a
      Alexandre Duret-Lutz authored
      Fixes #262, reported by Maximilien Colange.
      
      * bin/common_output.cc, bin/common_aoutput.cc, bin/common_aoutput.hh:
      Clear the set of atomic propositions if --stats=%[...]x was used.
      * spot/twa/bdddict.cc: Release any formula associated to a BDD when it
      is unregistered, do not wait for the dictionary's destruction.  This
      was the main culprit for #262.
      * tests/core/ltl2tgba.test: Add test cases.
      * NEWS: Mention the bug.
      f6607f1a
    • Alexandre Duret-Lutz's avatar
      bin: release all subformulas between runs · acdaaac4
      Alexandre Duret-Lutz authored
      Fixes #262, reported by Maximilien Colange.
      
      * bin/common_output.cc, bin/common_aoutput.cc, bin/common_aoutput.hh:
      Clear the set of atomic propositions if --stats=%[...]x was used.
      * spot/twa/bdddict.cc: Release any formula associated to a BDD when it
      is unregistered, do not wait for the dictionary's destruction.  This
      was the main culprit for #262.
      * tests/core/ltl2tgba.test: Add test cases.
      * NEWS: Mention the bug.
      acdaaac4
  15. 09 May, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      scc_info: introduce edges_of() and inner_edges_of() · 8e19d3f4
      Alexandre Duret-Lutz authored
      This is motivated by some upcoming patch by Heňo.
      
      * spot/twaalgos/sccinfo.hh (edges_of, inner_edges_of): New methods.
      * spot/twaalgos/sccinfo.cc, spot/twaalgos/strength.cc: Use them.
      * spot/twa/twagraph.hh (edge_number): Add an overload.
      * python/spot/impl.i: Bind the new methods.
      * tests/python/sccinfo.py: Add tests.
      * NEWS: Mention the changes.
      8e19d3f4
  16. 05 May, 2017 2 commits
  17. 21 Apr, 2017 1 commit
    • Thomas Medioni's avatar
      Implements is_streett_like() and streett_like_pairs(), is_rabin_like... · b428ed31
      Thomas Medioni authored
      Adds the method spot::acc_cond::is_streett_like() that behaves like
      spot::acc_cond::is_streett() except that it works on a wider range
      of acceptance conditions, called Streett-like. Also adds
      spot::acc_cond::streett_like_pairs() that returns a boolean assessing
      whether the acceptance condition is Streett-like and also returns all
      the Streett_like pairs.
      Defines the new struct type spot::acc_cond::rs_pair.
      Similarily, Adds the methods spot::acc_cond::is_rabin_like() and
      spot::acc_cond::rabin_like_pairs().
      
      * NEWS: Mention this modification
      * python/spot/impl.i: Declares the new struct to SWIG, and defines
      the streett_like_pairs() vector as an output parameter, which makes
      the python code return a tuple (boolean, vector) rather than a
      pass-by-reference vector.
      * spot/twa/acc.cc, spot/twa/acc.hh: Declares an implements the new
      methods and the new nested struct.
      * tests/Makefile.am: Add new tests to the suite
      * tests/python/rs_like.py: Tests the new methods and
      the SWIG bindings.
      b428ed31
  18. 20 Apr, 2017 1 commit
    • Thomas Medioni's avatar
      mark_t: sets() no longer returns a vector · cc3bdfcd
      Thomas Medioni authored
      spot::mark_t::sets() was modified so that it now returns an iterable
      object rather than an std::vector<unsigned>.
      
      * NEWS: Mention the modification.
      * python/spot/impl.i: Declares mark_container as iterable to SWIG.
      * spot/parseaut/parseaut.yy: Adapts to the modification.
      * spot/twa/acc.hh: Implement the modification.
      * tests/python/acc_cond.ipynb: Adapts to the modification.
      cc3bdfcd
  19. 31 Mar, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      various typos · 1ed6e518
      Alexandre Duret-Lutz authored
      * bench/dtgbasat/gen.py, spot/twaalgos/complement.hh: Fix
      looser->loser and lossing->losing.
      * tests/sanity/style.test: Catch 'an uni[^n]'.
      * spot/ta/ta.hh, spot/taalgos/tgba2ta.cc, spot/taalgos/tgba2ta.hh,
      spot/twa/twagraph.cc, spot/twaalgos/complement.hh,
      spot/twaalgos/sccinfo.cc: Fix various occurences of this pattern.
      1ed6e518
  20. 30 Mar, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      various typos · be411553
      Alexandre Duret-Lutz authored
      * bench/dtgbasat/gen.py, spot/twaalgos/complement.hh: Fix
      looser->loser and lossing->losing.
      * tests/sanity/style.test: Catch 'an uni[^n]'.
      * spot/ta/ta.hh, spot/taalgos/tgba2ta.cc, spot/taalgos/tgba2ta.hh,
      spot/twa/twagraph.cc, spot/twaalgos/complement.hh,
      spot/twaalgos/sccinfo.cc, spot/twaalgos/sum.hh: Fix various occurences
      of this pattern.
      be411553
  21. 29 Mar, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      twa_graph: fix purge_unreachable_states on alternating automata · 6623af67
      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.
      6623af67
    • Alexandre Duret-Lutz's avatar
      twa_graph: fix purge_unreachable_states on alternating automata · f6a238ef
      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.
      f6a238ef
  22. 27 Mar, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      rename is_deterministic to is_universal · 4a5d7a39
      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.
      4a5d7a39
  23. 20 Mar, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      twa: add support for prop_complete() · 0de5f50d
      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.
      0de5f50d
  24. 08 Mar, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      python: add bindings for bdd_to_formula() · d1d3ee38
      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.
      d1d3ee38
    • Alexandre Duret-Lutz's avatar
      python: add bindings for bdd_to_formula() · 4e9303e3
      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.
      4e9303e3
  25. 07 Mar, 2017 5 commits
  26. 03 Mar, 2017 1 commit
  27. 02 Mar, 2017 1 commit
  28. 12 Feb, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      is_alternating() -> !is_existential() · fefb375d
      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.
      fefb375d