1. 27 Dec, 2016 10 commits
    • Alexandre Duret-Lutz's avatar
      twa: add support for very-weak property · 582d455c
      Alexandre Duret-Lutz authored
      * spot/twa/twa.hh: Implement the property.
      * spot/parseaut/parseaut.yy, spot/twaalgos/hoa.cc: Add input
      and output for it.
      * spot/twaalgos/strength.cc,
      spot/twaalgos/strength.hh (is_very_weak_automaton): New function.
      * tests/core/alternating.test: Add a test for --check=strength
      on an alternating automaton.
      * tests/core/strength.test, tests/core/parseaut.test: Adjust expected
      output.
      * NEWS, doc/org/hoa.org, doc/org/concepts.org: Document it.
      582d455c
    • Alexandre Duret-Lutz's avatar
      sccinfo: adjust to work with alternating automata · a4ce9994
      Alexandre Duret-Lutz authored
      * spot/twaalgos/sccinfo.cc: Consider universal edges as if they were
      existential edges.
      * spot/twaalgos/sccinfo.hh: Document that.
      * spot/twaalgos/dot.cc: Allow option 's' again, for easy testing.
      * tests/core/alternating.test: Adjust tests.
      * tests/python/_altscc.ipynb: New file (more tests).
      * tests/Makefile.am: Add it.
      a4ce9994
    • Alexandre Duret-Lutz's avatar
      parseaut: handle alternating automata with many universal init states · d2f471da
      Alexandre Duret-Lutz authored
      * spot/parseaut/parseaut.yy (fix_initial_state): Use
      spot::internal::outgoing_edge_group to reduce all initial states to a
      single one.
      * tests/core/parseaut.test: Add more tests.
      d2f471da
    • Alexandre Duret-Lutz's avatar
      alternation: add a states_and algorithm · 27ab631c
      Alexandre Duret-Lutz authored
      This should will come handy to implement the convertion from LTL to
      alternating automata, and to handle automata with multiple initial
      states.
      
      * spot/twaalgos/alternation.hh, spot/twaalgos/alternation.cc: New files.
      * spot/twaalgos/Makefile.am: Add them.
      * python/spot/impl.i: Add bindings.
      * tests/python/alternating.py: Test states_and.
      27ab631c
    • Alexandre Duret-Lutz's avatar
      twa_graph: add support for universal initial states · 48c812a5
      Alexandre Duret-Lutz authored
      The only missing point is that the HOA parser cannot deal with multiple
      universal initial states, as seen in parseaut.test.
      
      * spot/graph/graph.hh (new_univ_dests): New function, extracted from...
      (new_univ_edge): ... this one.
      * spot/twa/twagraph.hh (set_univ_init_state): Implement using
      new_univ_dests.
      * spot/twaalgos/dot.cc, spot/twaalgos/hoa.cc, python/spot/impl.i:
      Add support for universal initial states.
      * spot/parseaut/parseaut.yy: Add preliminary support for
      universal initial states.  Multiple universal initial states
      are still not supported.
      * tests/core/alternating.test, tests/core/parseaut.test,
      tests/python/alternating.py: Adjust tests and exercise this new feature.
      48c812a5
    • Alexandre Duret-Lutz's avatar
      dot: add support for alternating automata · d5c9c345
      Alexandre Duret-Lutz authored
      * spot/twaalgos/dot.cc: Handle universal destinations.
      Ignore option 's' for alternating automata.
      * tests/core/alternating.test: New file.
      * tests/Makefile.am: Add it.
      d5c9c345
    • Alexandre Duret-Lutz's avatar
      parseaut: preliminary support for reading alternating automata · e6203686
      Alexandre Duret-Lutz authored
      Currently this only reads universal branches.  The parser (and the
      automaton code) do not support universal initial states.
      
      * spot/parseaut/parseaut.yy: Read universal branches.  Deal with
      the no-univ-branch/!univ-branch change in HOA 1.1.
      * tests/python/alternating.py: Read the output of print_hoa.
      * tests/core/parseaut.test: Adjust test output, and add more tests.
      e6203686
    • Alexandre Duret-Lutz's avatar
      print_hoa: add support for universal branches · 56df459c
      Alexandre Duret-Lutz authored
      * spot/twaalgos/hoa.cc: Implement it.
      * tests/python/alternating.py: Test it.
      56df459c
    • Alexandre Duret-Lutz's avatar
      twa_graph: add basic support for alternation · 6aad559c
      Alexandre Duret-Lutz authored
      This only allows creating universal edges, and reading the associated
      destinations.
      
      * spot/twa/twagraph.hh (new_univ_edges, univ_dests, is_alternating): New
      function.
      * python/spot/impl.i: Add Python bindings.
      * tests/python/alternating.py: New file.
      * tests/Makefile.am: Add it.
      6aad559c
    • Alexandre Duret-Lutz's avatar
      graph: replace the existing "alternating" interface · 4903f086
      Alexandre Duret-Lutz authored
      * spot/graph/graph.hh: Use the sign bit of destination state X to
      designate a universal edge.  Store the destinations of such an edge in a
      separate array, at index ~X.
      * spot/graph/ngraph.hh, tests/core/graph.cc, tests/core/graph.test,
      tests/core/ngraph.cc: Adjust test case to the new interface.
      4903f086
  2. 13 Dec, 2016 1 commit
    • Maximilien Colange's avatar
      Add a new, parameterized, version of the Couvreur emptiness check. · 1a08eca8
      Maximilien Colange authored
      This version has optimization for explicit twa, and also for weak and
      terminal (depending on whether an accepting run is requested) automata.
      
      * spot/twaalgos/couvreurnew.hh, spot/twaalgos/couvreurnew.cc,
        spot/twaalgos/Makefile.am: New files for the new algorithm.
      * spot/twaalgos/emptiness.cc, tests/core/randtgba.cc:
        Register new algorithm.
      1a08eca8
  3. 10 Dec, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      ltlf: ensure alive holds initially · 15709084
      Alexandre Duret-Lutz authored
      Reported by Shufang Zhu.
      
      * spot/tl/ltlf.cc, spot/tl/ltlf.hh: Fix the transltion
      and update the comments.
      * tests/core/ltlfilt.test: Adjust test cases.
      * NEWS: Mention the fix.
      * THANKS: Add Shufang Zhu.
      15709084
  4. 09 Dec, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      ltlf: ensure alive holds initially · 413eab1d
      Alexandre Duret-Lutz authored
      Reported by Shufang Zhu.
      
      * spot/tl/ltlf.cc, spot/tl/ltlf.hh: Fix the transltion
      and update the comments.
      * tests/core/ltlfilt.test: Adjust test cases.
      * NEWS: Mention the fix.
      * THANKS: Add Shufang Zhu.
      413eab1d
  5. 02 Dec, 2016 2 commits
    • Alexandre Duret-Lutz's avatar
      install back the safety check of includes.test · 7824005d
      Alexandre Duret-Lutz authored
      Compilation of each header file alone, as a safety check, was removed
      when introducing "#pragma once" because we did not have to check for
      possible double inclusion.  However we still need to compile each
      header to make sure they are self-contained.
      
      * tests/sanity/includes.test: Compile each header.
      * tests/run.in: Export various compiler and directory flags.
      * spot/twaalgos/emptiness_stats.hh, spot/misc/mspool.hh,
      spot/misc/fixpool.hh: Include <spot/misc/common.hh>.
      * spot/misc/common.hh: Include <cassert>.
      * NEWS: Mention the fixed headers.
      7824005d
    • Alexandre Duret-Lutz's avatar
      install back the safety check of includes.test · 0ab8dc06
      Alexandre Duret-Lutz authored
      Compilation of each header file alone, as a safety check, was removed
      when introducing "#pragma once" because we did not have to check for
      possible double inclusion.  However we still need to compile each
      header to make sure they are self-contained.
      
      * tests/sanity/includes.test: Compile each header.
      * tests/run.in: Export various compiler and directory flags.
      * spot/twaalgos/emptiness_stats.hh, spot/misc/mspool.hh,
      spot/misc/fixpool.hh: Include <spot/misc/common.hh>.
      * spot/misc/common.hh: Include <cassert>.
      * NEWS: Mention the fixed headers.
      0ab8dc06
  6. 01 Dec, 2016 5 commits
  7. 29 Nov, 2016 3 commits
  8. 28 Nov, 2016 2 commits
    • Alexandre Duret-Lutz's avatar
      strength: fix is_terminal() · 341eeb2b
      Alexandre Duret-Lutz authored
      Fix #198.  Reported by Maximilien Colange.
      
      * spot/twaalgos/strength.cc (is_terminal): Test that no accepting
      transition lead to a rejecting SCC.
      * tests/core/strength.test: Add test case.
      * spot/twaalgos/strength.hh, spot/twa/twa.hh, doc/org/concepts.org:
      Adjust documentation.
      * NEWS: Mention the fix.
      341eeb2b
    • Alexandre Duret-Lutz's avatar
      strength: fix is_terminal() · 9bc978a9
      Alexandre Duret-Lutz authored
      Fix #198.  Reported by Maximilien Colange.
      
      * spot/twaalgos/strength.cc (is_terminal): Test that no accepting
      transition lead to a rejecting SCC.
      * tests/core/strength.test: Add test case.
      * spot/twaalgos/strength.hh, spot/twa/twa.hh, doc/org/concepts.org:
      Adjust documentation.
      * NEWS: Mention the fix.
      9bc978a9
  9. 24 Nov, 2016 3 commits
    • Alexandre Duret-Lutz's avatar
      sanity: do not check source files in *.dir/* · 22292e60
      Alexandre Duret-Lutz authored
      Because gal2c generates some C++ sources that do not match our coding
      convention and should not be checked.
      
      * tests/sanity/80columns.test, tests/sanity/style.test: Do not test
      files in tests' work directories.
      22292e60
    • Alexandre Duret-Lutz's avatar
      split ltsmin/check.test in three files · 1afb76a6
      Alexandre Duret-Lutz authored
      Fixes #195.
      
      * tests/ltsmin/check.test: Extract the spins and gal checks
      and move them to...
      * tests/ltsmin/check2.test, tests/ltsmin/check3.test: ... these files.
      * tests/Makefile.am: Adjust.
      1afb76a6
    • Alexandre Duret-Lutz's avatar
      lts-min: fix loading of spins models · dc4a4771
      Alexandre Duret-Lutz authored
      This fixes c9aabcdd.
      
      * spot/ltsmin/ltsmin.cc: Update the extension after compiling
      the model.  Do not duplicate the symbol lookups for DVE and gal2C.
      Also, improve error reporting in case of missing symbol.
      * tests/ltsmin/check.test: Remove stray character.
      dc4a4771
  10. 23 Nov, 2016 3 commits
    • Maximilien Colange's avatar
      Add support to load GAL models. · c9aabcdd
      Maximilien Colange authored
      * spot/ltsmin/ltsmin.cc: Handle GAL models.
      * tests/Makefile.am: Test the new feature.
      * tests/ltsmin/check.test: Also check GAL.
      * tests/ltsmin/beem-peterson.4.gal: A new GAL model for tests.
      * tests/ltsmin/finite.gal: A new GAL model for tests.
      * tests/ltsmin/finite3.test: A new test for GAL.
      c9aabcdd
    • Etienne Renault's avatar
      bitvec: remove useless methods · ec83e60b
      Etienne Renault authored
      * spot/misc/bitvect.hh, tests/core/bitvect.cc,
      tests/core/bitvect.test: here.
      ec83e60b
    • Etienne Renault's avatar
      Prefer emplace_back to push_back · 43ec36cd
      Etienne Renault authored
      * spot/graph/ngraph.hh, spot/ltsmin/ltsmin.cc,
      spot/misc/bitvect.hh, spot/misc/intvcomp.cc,
      spot/misc/satsolver.cc, spot/priv/weight.cc,
      spot/ta/taexplicit.cc, spot/taalgos/minimize.cc,
      spot/taalgos/reachiter.cc, spot/tl/exclusive.cc,
      spot/tl/formula.cc, spot/tl/formula.hh,
      spot/tl/mark.cc, spot/tl/mutation.cc,
      spot/tl/relabel.cc, spot/tl/remove_x.cc,
      spot/tl/simplify.cc, spot/twa/acc.cc,
      spot/twa/acc.hh, spot/twa/formula2bdd.cc,
      spot/twa/taatgba.cc, spot/twa/taatgba.hh,
      spot/twa/twa.hh, spot/twa/twagraph.cc,
      spot/twaalgos/bfssteps.cc, spot/twaalgos/canonicalize.cc,
      spot/twaalgos/compsusp.cc, spot/twaalgos/copy.cc,
      spot/twaalgos/cycles.cc, spot/twaalgos/degen.cc,
      spot/twaalgos/determinize.cc, spot/twaalgos/dtwasat.cc,
      spot/twaalgos/emptiness.cc, spot/twaalgos/gv04.cc,
      spot/twaalgos/hoa.cc, spot/twaalgos/ltl2taa.cc,
      spot/twaalgos/ltl2tgba_fm.cc, spot/twaalgos/magic.cc,
      spot/twaalgos/mask.hh, spot/twaalgos/minimize.cc,
      spot/twaalgos/powerset.cc, spot/twaalgos/product.cc,
      spot/twaalgos/randomgraph.cc, spot/twaalgos/reachiter.cc,
      spot/twaalgos/relabel.cc, spot/twaalgos/remfin.cc,
      spot/twaalgos/sccfilter.cc, spot/twaalgos/se05.cc,
      spot/twaalgos/simulation.cc, spot/twaalgos/stutter.cc,
      spot/twaalgos/tau03opt.cc, spot/twaalgos/totgba.cc,
      spot/twaalgos/word.cc, tests/core/bitvect.cc: here.
      43ec36cd
  11. 19 Nov, 2016 1 commit
  12. 13 Nov, 2016 1 commit
  13. 11 Nov, 2016 4 commits
  14. 10 Nov, 2016 1 commit
  15. 09 Nov, 2016 1 commit
  16. 08 Nov, 2016 1 commit