1. 25 Sep, 2017 9 commits
    • Thibaud Michaud's avatar
      add ltlsynt executable · 0821c97e
      Thibaud Michaud authored
      For now, ltlsynt only handles LTL realizability. It uses a reduction to
      parity game followed by Calude et al.'s reduction from parity game to
      reachability game.
      * bin/ltlsynt.cc, bin/Makefile.am, bin/man/ltlsynt.x,
      bin/man/Makefile.am, bin/.gitignore: New binary.
      * doc/org/arch.tex, doc/Makefile.am, doc/org/tools.org,
      doc/org/ltlsynt.org: Document it.
      * spot/misc/game.cc, spot/misc/game.hh, spot/misc/Makefile.am: Parity
      game wrapper for parity automata + reachability game interface from
      Calude et al.'s paper.
    • Laurent XU's avatar
      parity: add spot::parity_product_or() · 7a118426
      Laurent XU authored
      parity_product_or constructs the sum of two parity automata and it keeps
      the parity.
      * spot/twaalgos/parity.cc, spot/twaalgos/parity.hh: Here.
      * tests/core/parity.cc: Add tests here.
    • Laurent XU's avatar
      parity: merge states having same cleaned matrices in parity_product · 192fb6c1
      Laurent XU authored
      Some states can become identical once their history matrix are
      cleaned. These states are merged and only store the cleaned matrix.
      * spot/twaalgos/parity.cc: Here.
    • Laurent XU's avatar
      parity: remove history matrices in parity_product() · cb7e43cb
      Laurent XU authored
      The history matrix of size n*m is replaced by couples of vectors with a
      total size of n + m. These couples of vectors are simplified
      representations of the history matrices, they ecnode the exact same
      data. They are cached as well as the method to get the next history
      matrix using the acc_sets and the current history matrix.
      * spot/twaalgos/parity.cc: Here.
    • Laurent XU's avatar
      parity: add spot::parity_product() · b92320cc
      Laurent XU authored
      Compute the synchronized product of two parity automata, this product
      keeps the parity acceptance.
      * spot/twaalgos/parity.cc, spot/twaalgos/parity.hh: Here
      * tests/core/parity.cc: Add tests for spot::parity_product()
    • Laurent XU's avatar
      parity: add spot::cleanup_parity_acceptance() · 3e650f18
      Laurent XU authored
      Merge the acceptance sets of a parity acceptance with the same priority
      level to simplify this acceptance.
      * spot/twaalgos/parity.cc, spot/twaalgos/parity.hh: Here
      * tests/core/parity.cc: Add tests for spot::cleanup_parity_acceptance()
    • Laurent XU's avatar
      parity: add spot::colorize_parity() · 0bf0a99d
      Laurent XU authored
      These functions colorize automata with parity acceptance. They output
      parity automata.
      * spot/twaalgos/parity.cc, spot/twaalgos/parity.hh: Here
      * tests/core/parity.cc: Add tests for spot::colorize_parity()
      * tests/python/parity.ipynb: Add documentation about
    • Laurent XU's avatar
      parity: add spot::change_parity() · 27982fb8
      Laurent XU authored
      This function changes the parity acceptance of an automaton.
      * spot/twaalgos/parity.cc, spot/twaalgos/parity.hh: Here
      * python/spot/impl.i: Add spot/twaalgos/parity.hh
      * spot/twaalgos/Makefile.am: Add spot/twaalgos/parity.{cc,hh}
      * tests/core/parity.cc, tests/core/parity.test: Add
      spot::change_parity() tests
      * tests/python/parity.ipynb: Add documentation about
      * tests/Makefile.am: Add tests/core/parity.{cc,hh} and
      * doc/org/tut.org: Add the html page of tests/python/parity.ipynb
    • Laurent XU's avatar
      misc: add spot::is_colored() · b7ef7c55
      Laurent XU authored
      This function checks whether an automaton is colored, an automaton
      is said to be colored iff all the transitions belong to exactly one
      acceptance set.
      * spot/twaalgos/iscolored.cc, spot/twaalgos/iscolored.hh: Here.
      * spot/twaalgos/Makefile.am: add spot/twaalgos/iscolored.{cc,hh}
      * python/spot/impl.i: add spot/twaalgos/iscolored.hh
  2. 24 Sep, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      twa_graph: do not order BDDs by IDs in merge_edges() · 5e5a6948
      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/genltl.test: Adjust, and add an extra test
      for the behavior of #282.
      * 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.
    • Alexandre Duret-Lutz's avatar
      postproc: fix a comment · 2bca21f7
      Alexandre Duret-Lutz authored
      * spot/twaalgos/postproc.cc: Here.
  3. 22 Sep, 2017 1 commit
  4. 20 Sep, 2017 2 commits
  5. 19 Sep, 2017 13 commits
    • Alexandre GBAGUIDI AISSE's avatar
      hierarchy: Make is_recurrence() public · e59274b6
      Alexandre GBAGUIDI AISSE authored
      * NEWS: Declare it.
      * spot/tl/hierarchy.cc: Remove static keyword and anonymous namespace.
      * spot/tl/hierarchy.hh: Declare function.
    • Alexandre GBAGUIDI AISSE's avatar
      ltlfilt: Add %r and %R format options · 8cf54264
      Alexandre GBAGUIDI AISSE authored
      * NEWS: Declare new options.
      * bin/common_output.cc: Add new options.
      * bin/common_output.hh: Add new options.
      * bin/genltl.cc: Update.
      * bin/ltlfilt.cc: Update.
      * bin/ltlgrind.cc: Update.
      * bin/randltl.cc: Update.
    • Alexandre GBAGUIDI AISSE's avatar
      misc/timer: Gather handling of %r and %R options · ad9bc644
      Alexandre GBAGUIDI AISSE authored
      * bin/autcross.cc: Update.
      * bin/autfilt.cc: Update.
      * bin/common_aoutput.cc: Gather them. Move process_timer struct.
      * bin/common_aoutput.hh: Gather them.
      * bin/common_output.hh: Update.
      * bin/dstar2tgba.cc: Update.
      * bin/ltl2tgba.cc: Update.
      * bin/ltlcross.cc: Update.
      * bin/ltldo.cc: Update.
      * bin/ltlfilt.cc: Update.
      * bin/randaut.cc: Update.
      * spot/misc/formater.hh: Remove an useless function.
      * spot/misc/timer.hh: Add process_timer struct definition.
      * spot/misc/timer.cc: Remove old dead code.
      * spot/twaalgos/stats.cc: Update.
      * spot/twaalgos/stats.hh: Update.
    • Alexandre GBAGUIDI AISSE's avatar
      typos · 302095ff
      Alexandre GBAGUIDI AISSE authored
      * spot/twaalgos/alternation.hh: Typos.
      * spot/twa/twa.hh: Typos.
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos/cobuchi: Add dnf_to_dca() · 8ae10f74
      Alexandre GBAGUIDI AISSE authored
      * NEWS: Update news with all co-Büching functions.
      * spot/twaalgos/cobuchi.hh: Declare it.
      * spot/twaalgos/cobuchi.cc: Implement it.
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos/cobuchi: Add breakpoint construction and nsa_to_dca() · 5f6a71d2
      Alexandre GBAGUIDI AISSE authored
      * spot/twaalgos/cobuchi.hh: Declare nsa_to_dca().
      * spot/twaalgos/cobuchi.cc: Implement nsa_to_dca().
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos/cobuchi: Add dnf_to_nca() method · f2616069
      Alexandre GBAGUIDI AISSE authored
      * NEWS: Update.
      * spot/twaalgos/cobuchi.hh: Declare dnf_to_nca().
      * spot/twaalgos/cobuchi.cc: Implement it.
      * tests/core/dca.test: Add tests.
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos/totgba: Add dnf_to_streett() method · 50e99cdc
      Alexandre GBAGUIDI AISSE authored
      * NEWS: Update.
      * spot/twaalgos/totgba.hh: Declare dnf_to_streett().
      * spot/twaalgos/totgba.cc: Implement dnf_to_streett().
      * bin/autfilt.cc: Add --dnf-to-streett cmd line option.
      * tests/core/dnfstreett.test: Add test.
      * tests/Makefile.am: Add test file.
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos/cobuchi: Add nsa_to_nca() · cf18c069
      Alexandre GBAGUIDI AISSE authored
      * NEWS: Update.
      * spot/twaalgos/cobuchi.hh: Declare to_dca() and nsa_to_nca().
      * spot/twaalgos/cobuchi.cc: Implement them.
      * python/spot/impl.i: Include new file for python bindings.
      * spot/twaalgos/Makefile.am: Add new file.
      * bin/autfilt.cc: Add --dca command line option. This option does not
      return a deterministic automaton yet, but it will.
      * tests/core/dca.test: Add tests for Büchi automata.
      * tests/python/dca.py: Add a python script that builds a nondet. Streett
      * tests/python/dca.test: Add tests for Streett automata.
      * tests/Makefile.am: Add all tests.
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos/scc_info: Add states_on_acc_cycle_of() method · 37c1a19b
      Alexandre GBAGUIDI AISSE authored
      * NEWS: Update.
      * spot/twaalgos/sccinfo.hh: Declare states_on_acc_cycle_of().
      * spot/twaalgos/sccinfo.cc: Implement it.
    • Alexandre GBAGUIDI AISSE's avatar
      spot/twa: Add methods to set co-Büchi acceptance · 0957317a
      Alexandre GBAGUIDI AISSE authored
      * spot/twa/acc.hh: Add set_generalized_co_buchi() method.
      * spot/twa/twa.hh: Add set_generalized_co_buchi() and set_co_buchi()
    • Alexandre GBAGUIDI AISSE's avatar
      Fix: Remove SBAcc option in bin/ltlfilt · 75d9e5f6
      Alexandre GBAGUIDI AISSE authored
      * bin/ltlfilt.cc: Remove SBAcc option as rabin_to_buchi_maybe() works
      with transition-based acceptance as well.
    • Maximilien Colange's avatar
      Use clearer names for three methods of spot::scc_info · bd5c6920
      Maximilien Colange authored
      scc_info::used_acc() and spot::info::used_acc_of() have been renamed to
      scc_info::marks() and scc_info::marks_of().
      scc_info::acc() has been renamed to (the already existing and redundant)
      Old names have been deprecated.
      * spot/twaalgos/sccinfo.hh, spot/twaalgos/sccinfo.cc: implement it.
      * spot/twaalgos/dtwasat.cc, spot/twaalgos/isweakscc.cc,
        spot/twaalgos/remfin.cc, spot/twaalgos/sccfilter.cc: update names.
      * NEWS: documentate it.
  6. 15 Sep, 2017 1 commit
  7. 07 Sep, 2017 1 commit
  8. 06 Sep, 2017 3 commits
  9. 05 Sep, 2017 5 commits
  10. 04 Sep, 2017 3 commits