1. 02 Jun, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      simulation: do not depend on bdd numbers for ordering classes · 9ab4b840
      Alexandre Duret-Lutz authored
      Fixes #262 again.  Reported by Maximilien Colange.
      
      * spot/twaalgos/simulation.cc: Use state numbers to order classes, not
      their signatures.  The problem was that even if two simulation of the
      same automaton assign the same signature, the BDD identifier used for
      that signature might be different, and therefore the ordering obtained
      by using BDDs as keys in a map can be different.  A side-effect of
      this change is that the order of states in automata produced by
      simulation-based reduction may change; many tests had to be updated.
      * tests/core/ltl2tgba.test: Add a new test case based on Maximilien's
      report.
      * tests/core/complement.test, tests/core/det.test,
      tests/core/parseaut.test, tests/core/prodor.test, tests/core/scc.test,
      tests/python/atva16-fig2a.ipynb, tests/python/automata.ipynb,
      tests/python/decompose.ipynb, tests/python/decompose_scc.py,
      tests/python/highlighting.ipynb, tests/python/piperead.ipynb,
      tests/python/sccinfo.py, tests/python/simstate.py,
      tests/python/testingaut.ipynb, tests/python/word.ipynb: Update
      test case for new order of states.
      9ab4b840
  2. 01 May, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      minimize_dfa: use the twa_graph interface · 172bee49
      Alexandre Duret-Lutz authored
      Fixes #233, although more cleanup would be welcome.
      
      * spot/twaalgos/minimize.cc: Replace the uses of twa methods by
      twa_graph methods, and simplify some data structures.
      * tests/core/acc_word.test, tests/core/readsave.test,
      tests/python/automata.ipynb: Adjust changed output due
      to different data structures.
      172bee49
  3. 31 Jul, 2016 1 commit
  4. 29 Jul, 2016 1 commit
  5. 22 Apr, 2016 2 commits
  6. 05 Feb, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      dot: add option C(COLOR) · 77b0b5b3
      Alexandre Duret-Lutz authored
      This fixes the output gliches visible in the previous patches,
      where highlighting a state would remove its fill color.
      
      * spot/twaalgos/dot.cc, spot/taalgos/dot.cc: Implement option C(COLOR).
      * bin/common_aoutput.cc, doc/org/oaut.org: Document it.
      * doc/org/.dir-locals.el.in, doc/org/init.el.in,
      python/spot/__init__.py: Use it.
      * tests/python/automata-io.ipynb, tests/python/automata.ipynb,
      tests/python/highlighting.ipynb: Test it.
      * tests/core/readsave.test: Adjust.
      * NEWS: Mention recent changes.
      77b0b5b3
  7. 26 Jan, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      Make spot.py a python package instead of a module · 215fcb79
      Alexandre Duret-Lutz authored
      * python/spot.py, python/spot_impl.i: Rename as...
      * python/spot/__init__.py, python/spot/impl.i: ... these.
      * python/Makefile.am, tests/run.in: Adjust for new paths.
      * tests/python/automata-io.ipynb, tests/python/automata.ipynb,
      tests/python/decompose.ipynb, tests/python/piperead.ipynb,
      tests/python/testingaut.ipynb: Adjust messages to refer to spot.impl
      instead of spot_impl.
      215fcb79
  8. 04 Jan, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      Merge the core and python tests in the tests/ directory · 5cb94a1a
      Alexandre Duret-Lutz authored
      * tests/: Rename as...
      * tests/core/: ... this.
      * python/tests/: Rename as...
      * tests/python/: ... this.
      * python/tests/run.in: Move as...
      * tests/run.in: This, and adjust.
      * tests/Makefile.am: Adjust to run both core and python tests.
      * configure.ac, README, debian/python3-spot.examples, debian/rules,
      doc/org/tut.org, python/Makefile.am, spot/ltsmin/Makefile.am,
      spot/ltsmin/kripke.test, spot/sanity/ipynb.test: Adjust.
      5cb94a1a
  9. 25 Dec, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      rename wrap/python/ to python/ · 34c3c1ce
      Alexandre Duret-Lutz authored
      * wrap/python/: Rename to...
      * python/: ... this.
      * wrap/: Delete.
      * Makefile.am, README, configure.ac, debian/python3-spot.examples,
      debian/rules, doc/org/.dir-locals.el.in, doc/org/init.el.in,
      spot/sanity/ipynb.test: Adjust.
      34c3c1ce
  10. 14 Nov, 2015 2 commits
  11. 19 Oct, 2015 1 commit
  12. 14 Oct, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      scc_filter_states: also remove useless acceptance marks · cd2e5275
      Alexandre Duret-Lutz authored
      * src/twaalgos/sccfilter.hh,
      src/twaalgos/sccfilter.cc (scc_filter_states): Remove useless acceptance
      marks while preserving state-based acceptance.  Add a new argument
      to specify if all useless mark have to be removed, like for scc_filter.
      * src/twaalgos/simulation.cc: Use the new parameter.
      * src/twaalgos/postproc.cc: Likewise.  Also call do_scc_filter even
      after WDBA simplification to cleanup trivial SCCs.  Preserve state-based
      acceptance for weak automata.
      * src/tests/readsave.test: Add one test.
      * src/tests/dstar.test, src/tests/prodor.test, src/tests/remfin.test,
      src/tests/sim3.test, wrap/python/tests/automata.ipynb,
      wrap/python/tests/piperead.ipynb: Adjust expected output.
      * NEWS: Mention the change.
      cd2e5275
  13. 03 Oct, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      tgba_complete: rename as complete and export in Python · 5e07e838
      Alexandre Duret-Lutz authored
      * src/twaalgos/complete.cc, src/twaalgos/complete.hh
      (tgba_complete, tgba_complete_here): Rename as...
      (complete, complete_here): ... these.  Also fix useless output of
      acceptance marks on transition leading to the sink when the automaton
      does not use state-based acceptance.
      * src/tests/ikwiad.cc, src/twaalgos/dtgbacomp.cc,
      src/twaalgos/dtgbasat.cc, src/twaalgos/postproc.cc,
      src/twaalgos/product.cc: Adjust.
      * wrap/python/spot_impl.i: Export these function.
      * wrap/python/tests/automata.ipynb: Test spot.complete().
      5e07e838
  14. 09 Jul, 2015 1 commit
  15. 15 May, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: rewrite translate() to deal with unambiguous and sbacc · 19a27392
      Alexandre Duret-Lutz authored
      and make it easier to extend and use.
      
      * src/twaalgos/postproc.hh, src/twaalgos/translate.cc,
      src/twaalgos/translate.hh: Incorporate the Unambiguous option
      with the other preferences.  It's cleaner this way, and the
      previous setup did not work well with Python.
      * src/bin/ltl2tgba.cc: Adjust to this change.
      * wrap/python/spot.py (translate): Rewrite.
      * wrap/python/tests/automata.ipynb: Adjust existing cases, and
      add more as well as some comments.
      19a27392
  16. 28 Apr, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      dot: --dot=B to use bullets for all automata but Büchi and co-Büchi · 8aa88c29
      Alexandre Duret-Lutz authored
      * src/twaalgos/dotty.cc: Add option 'B'.
      * src/taalgos/dotty.cc: Ignore it.
      * src/bin/common_aoutput.cc, src/bin/dstar2tgba.cc: Document it.
      * wrap/python/spot.py (setup): Use it by default, and rewrite
      the function to be a bit more flexible.
      * wrap/python/tests/automata-io.ipynb, wrap/python/tests/automata.ipynb,
      wrap/python/tests/piperead.ipynb, wrap/python/tests/randaut.ipynb,
      wrap/python/tests/testingaut.ipynb: Use setup() everywhere.
      8aa88c29
  17. 22 Apr, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      rename tgba_digraph as twa_graph · e0bd0ad4
      Alexandre Duret-Lutz authored
      Automatic mass renaming.
      
      * src/bin/autfilt.cc, src/bin/common_aoutput.cc,
      src/bin/common_aoutput.hh, src/bin/common_conv.cc,
      src/bin/common_conv.hh, src/bin/common_output.hh, src/bin/dstar2tgba.cc,
      src/bin/ltlcross.cc, src/bin/ltldo.cc, src/bin/randaut.cc,
      src/dstarparse/dra2ba.cc, src/dstarparse/dstar2tgba.cc,
      src/dstarparse/dstarparse.yy, src/dstarparse/nra2nba.cc,
      src/dstarparse/nsa2tgba.cc, src/dstarparse/public.hh,
      src/graphtest/tgbagraph.cc, src/hoaparse/hoaparse.yy,
      src/hoaparse/public.hh, src/ltlvisit/contain.hh,
      src/ltlvisit/exclusive.cc, src/ltlvisit/exclusive.hh,
      src/priv/accmap.hh, src/taalgos/minimize.cc, src/tgba/fwd.hh,
      src/tgba/tgba.cc, src/tgba/tgbagraph.cc, src/tgba/tgbagraph.hh,
      src/tgba/tgbasafracomplement.cc, src/tgba/tgbasafracomplement.hh,
      src/tgbaalgos/are_isomorphic.cc, src/tgbaalgos/are_isomorphic.hh,
      src/tgbaalgos/canonicalize.cc, src/tgbaalgos/canonicalize.hh,
      src/tgbaalgos/cleanacc.cc, src/tgbaalgos/cleanacc.hh,
      src/tgbaalgos/complete.cc, src/tgbaalgos/complete.hh,
      src/tgbaalgos/compsusp.cc, src/tgbaalgos/compsusp.hh,
      src/tgbaalgos/cycles.hh, src/tgbaalgos/degen.cc, src/tgbaalgos/degen.hh,
      src/tgbaalgos/dotty.cc, src/tgbaalgos/dtbasat.cc,
      src/tgbaalgos/dtbasat.hh, src/tgbaalgos/dtgbacomp.cc,
      src/tgbaalgos/dtgbacomp.hh, src/tgbaalgos/dtgbasat.cc,
      src/tgbaalgos/dtgbasat.hh, src/tgbaalgos/dupexp.cc,
      src/tgbaalgos/dupexp.hh, src/tgbaalgos/emptiness.cc,
      src/tgbaalgos/emptiness.hh, src/tgbaalgos/hoa.cc,
      src/tgbaalgos/isdet.cc, src/tgbaalgos/isdet.hh, src/tgbaalgos/lbtt.cc,
      src/tgbaalgos/ltl2tgba_fm.cc, src/tgbaalgos/ltl2tgba_fm.hh,
      src/tgbaalgos/mask.cc, src/tgbaalgos/mask.hh, src/tgbaalgos/minimize.cc,
      src/tgbaalgos/minimize.hh, src/tgbaalgos/neverclaim.cc,
      src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh,
      src/tgbaalgos/powerset.cc, src/tgbaalgos/powerset.hh,
      src/tgbaalgos/product.cc, src/tgbaalgos/product.hh,
      src/tgbaalgos/randomgraph.cc, src/tgbaalgos/randomgraph.hh,
      src/tgbaalgos/randomize.cc, src/tgbaalgos/randomize.hh,
      src/tgbaalgos/relabel.cc, src/tgbaalgos/relabel.hh,
      src/tgbaalgos/remfin.cc, src/tgbaalgos/remfin.hh,
      src/tgbaalgos/remprop.cc, src/tgbaalgos/remprop.hh,
      src/tgbaalgos/safety.cc, src/tgbaalgos/safety.hh,
      src/tgbaalgos/sbacc.cc, src/tgbaalgos/sbacc.hh,
      src/tgbaalgos/sccfilter.cc, src/tgbaalgos/sccfilter.hh,
      src/tgbaalgos/sccinfo.cc, src/tgbaalgos/sccinfo.hh,
      src/tgbaalgos/simulation.cc, src/tgbaalgos/simulation.hh,
      src/tgbaalgos/stats.cc, src/tgbaalgos/stats.hh,
      src/tgbaalgos/stripacc.cc, src/tgbaalgos/stripacc.hh,
      src/tgbaalgos/stutter.cc, src/tgbaalgos/stutter.hh,
      src/tgbaalgos/totgba.cc, src/tgbaalgos/totgba.hh,
      src/tgbaalgos/translate.cc, src/tgbaalgos/translate.hh,
      src/tgbatest/checkpsl.cc, src/tgbatest/complementation.cc,
      src/tgbatest/emptchk.cc, src/tgbatest/ltl2tgba.cc,
      src/tgbatest/randtgba.cc, wrap/python/spot_impl.i,
      wrap/python/tests/automata-io.ipynb, wrap/python/tests/automata.ipynb,
      wrap/python/tests/piperead.ipynb, wrap/python/tests/testingaut.ipynb:
      Rename tgba_digraph as twa_graph.
      e0bd0ad4
  18. 21 Apr, 2015 1 commit
  19. 20 Apr, 2015 2 commits
  20. 26 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      org: uses nice dot arrows · 8e6b35e5
      Alexandre Duret-Lutz authored
      Suggested by Akim Demaille.  Fixes #69.
      
      * doc/org/.dir-locals.el, doc/org/init.el.in,
      wrap/python/tests/automata.ipynb: Set arrowhead and arrowsize.
      * doc/org/autfilt.org, doc/org/dstar2tgba.org,
      doc/org/ltl2tgba.org, doc/org/oaut.org: Adjust.
      8e6b35e5
  21. 24 Mar, 2015 1 commit
  22. 20 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      Do not store getenv() pointers in static variables. · 125fa983
      Alexandre Duret-Lutz authored
      ... or the pointer might be invalidated if the environments
      changes.  Fixes #63.
      
      * src/taalgos/dotty.cc, src/tgbaalgos/dotty.cc,
      src/tgbaalgos/dtbasat.cc, src/tgbaalgos/dtgbasat.cc:
      Copy the environment in strings instead.
      * wrap/python/tests/automata.ipynb: Adjust comment.
      125fa983
  23. 18 Mar, 2015 1 commit
  24. 17 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      dotty: colored acceptance sets · 838bfb2a
      Alexandre Duret-Lutz authored
      This implement several new options for --dot in order to
      allow emptiness sets to be output as colored ⓿ or ❶...
      Also add a SPOT_DOTDEFAULT environment variable.
      
      * NEWS, src/bin/man/spot-x.x, src/bin/common_aoutput.cc,
      src/bin/dstar2tgba.cc: Document the new options.
      * doc/org/.dir-locals.el, doc/org/init.el.in: Setup
      SPOT_DOTEXTRA and SPOT_DOTDEFAULT for all documents.
      * doc/org/autfilt.org, doc/org/dstar2tgba.org, doc/org/ltl2tgba.org,
      doc/org/ltldo.org, doc/org/oaut.org, doc/org/randaut.org,
      doc/org/satmin.org: Adjust to this new setup.
      * src/misc/escape.cc, src/misc/escape.hh (escape_html): New function.
      * src/tgba/acc.cc, src/tgba/acc.hh (to_text, to_html): New method.
      * src/tgbaalgos/dotty.cc: Implement the new options.
      * src/tgbatest/readsave.test, wrap/python/tests/automata.ipynb: More
      tests.
      * wrap/python/spot.py: Make sure the default argument for
      dotty_reachable is None, so that SPOT_DOTDEFAULT is honored.
      838bfb2a
  25. 16 Mar, 2015 1 commit
  26. 15 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: some bindings for translating formulas and diplaying automata · 3c38780d
      Alexandre Duret-Lutz authored
      * wrap/python/spot.py: Introduce spot.translate (and
      spot.formula.translate) as well, as a wrapper around the
      spot.translator class.  Also implement spot.tgba.show()
      to allow passing argument to dotty_reachable() before
      the result is converted to SVG.
      * wrap/python/tests/automata.ipynb: New test file.
      * wrap/python/tests/Makefile.am: Add it.
      3c38780d