1. 18 Feb, 2017 1 commit
  2. 16 Feb, 2017 4 commits
  3. 12 Feb, 2017 2 commits
    • 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
    • Alexandre Duret-Lutz's avatar
      alternation: fix detection of non-weak automata · 15c6fd95
      Alexandre Duret-Lutz authored
      Fixes #218.
      
      * spot/twaalgos/alternation.cc: Adjust check.
      * tests/core/alternating.test: Add test case from #218.
      * NEWS: Mention the bug.
      15c6fd95
  4. 04 Feb, 2017 1 commit
  5. 02 Feb, 2017 2 commits
    • Maximilien Colange's avatar
      Rework the 'down_cast' macro, closing #196. · 3f547089
      Maximilien Colange authored
      * spot/misc/casts.hh: New inline functions and compile-time checks.
      * spot/kripke/kripkegraph.hh, spot/ta/taexplicit.cc,
        spot/ta/taproduct.cc, spot/ta/tgtaproduct.cc, spot/taalgos/tgba2ta.cc,
        spot/twa/taatgba.hh, spot/twa/taatgba.cc, spot/twa/twagraph.hh,
        spot/twa/twaproduct.cc, spot/twaalgos/emptiness.cc,
        spot/twaalgos/stutter.cc, spot/ltsmin/ltsmin.cc, tests/core/ikwiad.cc,
        tests/core/ngraph.cc: Remove downcast checks from code.
      3f547089
    • Maximilien Colange's avatar
      Do not warn about static_asserts. · 07a76e4d
      Maximilien Colange authored
      * tests/sanity/style.test: Filter out static_assert.
      07a76e4d
  6. 01 Feb, 2017 1 commit
  7. 27 Jan, 2017 1 commit
  8. 23 Jan, 2017 1 commit
  9. 18 Jan, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      python: render the M&P hierarchy in SVG · ff4c4a72
      Alexandre Duret-Lutz authored
      * python/spot/__init__.py (show_mp_hierarchy, mp_hierarchy_svg): New
      functions.
      * tests/python/formulas.ipynb: Illustrate show_mp_hierarchy.
      * python/ajax/spotcgi.in: Use mp_hierarchy_svg.
      * python/ajax/css/trans.css: Adjust for possible overflows.
      * NEWS: Mention this new feature.
      ff4c4a72
  10. 17 Jan, 2017 2 commits
    • Alexandre Duret-Lutz's avatar
      langmap: Add example in notebook · 5939ca4e
      Alexandre Duret-Lutz authored
      * tests/python/highlighting.ipynb: Add an example of
      highlight_languages().
      5939ca4e
    • Alexandre Duret-Lutz's avatar
      langmap: adjust to only color non-unique languages · 0ad62cb9
      Alexandre Duret-Lutz authored
      Fixes #203.
      
      * spot/twaalgos/langmap.hh (highlight_languages): Simplify the
      interface by only taking the automaton to color.
      * spot/twaalgos/langmap.cc (highlight_languages): Only introduce
      color for states that have a non-unique language.
      * tests/core/highlightstate.test: Update and add more tests.
      * tests/python/langmap.py: Keep the tests simple.
      * bin/autfilt.cc: Adjust usage and help string.
      0ad62cb9
  11. 14 Jan, 2017 3 commits
  12. 13 Jan, 2017 2 commits
  13. 12 Jan, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      minimize_wdba: fix handling of input with useless SCCs · c9918f64
      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.
      c9918f64
  14. 10 Jan, 2017 3 commits
  15. 06 Jan, 2017 9 commits
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos: Set 'dicho' algo as default for SAT-based minimization · ef2355a5
      Alexandre GBAGUIDI AISSE authored
      * python/spot/__init__.py: Handle options.
      * spot/twaalgos/dtwasat.cc: Handle options.
      * spot/twaalgos/postproc.cc: Handle options.
      * spot/twaalgos/postproc.hh: Handle options.
      * tests/core/satmin.test: Update tests.
      Now use 'sat-minimize=4' to use the naive algo.
      * tests/core/satmin2.test: Update tests.
      Now use --sat-minimize='naive' to use the naive algo.
      * tests/python/satmin.py: Update tests.
      Now use 'naive=True' to use the naive algo.
      ef2355a5
    • Alexandre GBAGUIDI AISSE's avatar
      spot: Add 'langmap' option with dichotomy (it helps to choose min val) · 67e3a4f2
      Alexandre GBAGUIDI AISSE authored
      * python/spot/__init__.py: Handle 'dicho' option in 'sat_minimize'.
      * spot/priv/satcommon.cc: Implement get_number_of_distinct_vals.
      * spot/priv/satcommon.hh: Declare get_number_of_distinct_vals.
      * spot/twaalgos/dtbasat.cc: Use get_number_of_distinct_vals.
      * spot/twaalgos/dtbasat.hh: Change dichotomy function's prototype.
      * spot/twaalgos/dtwasat.cc: Use get_number_of_distinct_vals.
      * spot/twaalgos/dtwasat.hh: Change dichotomy function's prototype.
      Handle options.
      * spot/twaalgos/postproc.cc: Handle options.
      * spot/twaalgos/postproc.hh: Add dicho_langmap_ var for options.
      * tests/core/satmin2.test: Add tests for dichotomy.
      * tests/core/satmin.test: Add tests for dichotomy.
      * tests/python/satmin.py: Replace 'dichotomy' with 'dicho' option.
      67e3a4f2
    • Alexandre GBAGUIDI AISSE's avatar
      bin/autfilt.cc: Add '--highlight-languages' option · 7046a496
      Alexandre GBAGUIDI AISSE authored
      * bin/autfilt.cc: Add that option.
      * tests/core/highlightstate.test: Add test.
      * NEWS: Update.
      7046a496
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos: Implement language_map algo · 8a0eed6c
      Alexandre GBAGUIDI AISSE authored
      * python/spot/impl.i: Add python bindings.
      * spot/twaalgos/langmap.cc: Implement algo.
      * spot/twaalgos/langmap.hh: Declare algo.
      * spot/twaalgos/Makefile.am: Add new files.
      * tests/python/langmap.py: Add tests.
      * NEWS: Update.
      8a0eed6c
    • Alexandre GBAGUIDI AISSE's avatar
      spot: Implement dt*a_sat_minimize_assume(...) methods · 9a204b77
      Alexandre GBAGUIDI AISSE authored
      * python/spot/__init__.py: Add 'assume' option.
      * spot/misc/satsolver.cc: Add function to handle assumptions.
      * spot/misc/satsolver.hh: Declare assumption function.
      * spot/twaalgos/dtbasat.cc: Implement dtba_sat_minimize_assume.
      * spot/twaalgos/dtbasat.hh: Declare it.
      * spot/twaalgos/dtwasat.cc: Implement dtwa_sat_minimize_assume and
      handle options.
      * spot/twaalgos/dtwasat.hh: Declare it.
      * spot/twaalgos/postproc.cc: Handle options.
      * spot/twaalgos/postproc.hh: Use param_ var for incr and assume.
      * tests/core/satmin.test: Add tests for the new function.
      * tests/core/satmin2.test: Add tests for the new function.
      * tests/python/satmin.py: Add tests for the new function.
      9a204b77
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos: Implement dt*a_sat_minimize_incr(...) functions · ee17c2de
      Alexandre GBAGUIDI AISSE authored
      * python/spot/__init__.py: Add 'incr' boolean argument.
      * spot/twaalgos/dtbasat.cc: Implement dtba_sat_minimize_incr(...).
      * spot/twaalgos/dtbasat.hh: Declare it.
      * spot/twaalgos/dtwasat.cc: Implement dtwa_sat_minimize_incr(...) and
      deal with options.
      * spot/twaalgos/dtwasat.hh: Declare it.
      * spot/twaalgos/postproc.cc: Add option --sat-minimize=incr.
      * spot/twaalgos/postproc.hh: Add incr parameter.
      * tests/core/satmin.test: Add tests for incremental version.
      Update expected result.
      * tests/core/satmin2.test: Add tests for incremental version.
      * tests/python/satmin.py: Add tests for incremental version.
      ee17c2de
    • Alexandre GBAGUIDI AISSE's avatar
      twaalgos: Improve data storage in SAT-minimization · 9acd7370
      Alexandre GBAGUIDI AISSE authored
      * spot/misc/satsolver.hh: Make solver return vector<bool> instead of
      vector<int>.
      * spot/misc/satsolver.cc: Update code.
      * spot/priv/Makefile.am: Add satcommon.*
      * spot/priv/satcommon.hh: Declare helper class and factorize some
      duplicate code of dt*asat.cc
      * spot/priv/satcommon.cc: Implement helper class and factorize some
      duplicate code of dt*asat.cc
      * spot/twaalgos/dtbasat.cc: Declare helper, implement some functions
      in dict struct and update code.
      * spot/twaalgos/dtwasat.cc: Declare helper, implement some functions
      in dict struct and update code.
      * tests/core/readsat.cc: Update tests.
      * tests/core/satmin.test: Typo.
      * tests/core/satmin2.test: Update an expected result.
      9acd7370
    • Alexandre GBAGUIDI AISSE's avatar
      tests: Improve tests related to SAT-minimization · dfd500a5
      Alexandre GBAGUIDI AISSE authored
      * tests/core/satmin.test: Delete check for SPOT_SATSOLVER env
      variable and add state numbers verification.
      * tests/core/satmin2.test: Delete check for SPOT_SATSOLVER
      env variable.
      * tests/python/satmin.py: Delete check for SPOT_SATSOLVER
      env variable.
      dfd500a5
    • Alexandre Duret-Lutz's avatar
      tests: update ipnbdoctest to graphviz 2.40 and Python 3.6 · 32086f7c
      Alexandre Duret-Lutz authored
      This fix recent failures observed on arch linux because
      it uses newer versions of graphviz and Python.
      
      * tests/python/ipnbdoctest.py (sanitize): More substitutions.
      32086f7c
  16. 30 Dec, 2016 1 commit
  17. 29 Dec, 2016 5 commits
    • Alexandre Duret-Lutz's avatar
      support for semi-deterministic property · 4b013878
      Alexandre Duret-Lutz authored
      * spot/twa/twa.hh (prop_semi_deterministic): New methods.
      * spot/parseaut/parseaut.yy, spot/twaalgos/hoa.cc: Add support for the
      semi-deterministic property.
      * doc/org/concepts.org, doc/org/hoa.org: Document it.
      * spot/twaalgos/isdet.cc,
      spot/twaalgos/isdet.hh (is_semi_deterministic): New function.
      * bin/autfilt.cc: Add --is-semi-deterministic.
      * bin/common_aoutput.cc: Add --check=semi-deterministic.
      * tests/core/semidet.test: New file.
      * tests/Makefile.am: Add it.
      * tests/core/parseaut.test, tests/core/readsave.test: Adjust.
      4b013878
    • Alexandre Duret-Lutz's avatar
      twa_graph: support alternation in remove_dead/unreachable_states · db5d9780
      Alexandre Duret-Lutz authored
      * spot/graph/graph.hh (internal::univ_dest_mapper): New helper class.
      * spot/twa/twagraph.cc (merge_univ_dests): Simplify using
      univ_dest_mapper.
      (purge_unreachable_states, purge_dead_states): Add support for
      alternation.
      * tests/core/alternating.test: More tests.
      db5d9780
    • Alexandre Duret-Lutz's avatar
      autfilt: handle alternation with --equivalent-to and friends · 096c78a3
      Alexandre Duret-Lutz authored
      * bin/autfilt.cc (ensure_deterministic): Remove alternation on demand.
      (process_automaton): Prefer twa::intersects() over
      product()/is_empty().
      * spot/twa/twa.cc (remove_fin_maybe): Also remove alternation.
      * tests/core/alternating.test: More tests.
      096c78a3
    • Alexandre Duret-Lutz's avatar
      autfilt: add --is-alternating · 77ce4170
      Alexandre Duret-Lutz authored
      * bin/autfilt.cc: Implement --is-alternating.
      * tests/core/complete.test: Test it.
      * NEWS: Mention it.
      77ce4170
    • Alexandre Duret-Lutz's avatar
      autfilt: add --is-very-weak · 6a11e149
      Alexandre Duret-Lutz authored
      * bin/autfilt.cc: Implement --is-very-weak.
      * tests/core/strength.test: Test it.
      * NEWS: Mention it.
      6a11e149