1. 22 Apr, 2015 4 commits
    • Alexandre Duret-Lutz's avatar
      rename tgba_product as twa_product · c8569330
      Alexandre Duret-Lutz authored
      Automatic mass renaming.
      
      * iface/ltsmin/finite.test, src/ta/tgtaproduct.cc,
      src/ta/tgtaproduct.hh, src/tgba/fwd.hh, src/tgba/tgbaproduct.cc,
      src/tgba/tgbaproduct.hh, wrap/python/spot_impl.i: Rename tgba_product
      as twa_product.
      c8569330
    • 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
    • Alexandre Duret-Lutz's avatar
      rename the spot::tgba class as spot::twa · c2ae99e7
      Alexandre Duret-Lutz authored
      Now that we support any type of omega-accetpance, not just "Generalized
      Büchi", it is time to move away from GB and replace it by "ω", written
      just w in ASCII.
      
      This just change the name of the tgba class.  This part has to be done
      by hand because the word "tgba" occurs in many contexts and a mass
      replacement would be wrong.
      
      This will be followed by some automatic renaming of all the derived
      types and more.
      
      * src/bin/autfilt.cc, src/bin/randaut.cc, src/kripke/fairkripke.hh,
      src/ta/tgta.cc, src/ta/tgta.hh, src/tgba/fwd.hh, src/tgba/taatgba.cc,
      src/tgba/taatgba.hh, src/tgba/tgba.cc, src/tgba/tgba.hh,
      src/tgba/tgbagraph.hh, src/tgba/tgbaproduct.cc, src/tgba/tgbaproduct.hh,
      src/tgba/tgbaproxy.cc, src/tgba/tgbaproxy.hh,
      src/tgba/tgbasafracomplement.cc, src/tgba/tgbasafracomplement.hh,
      src/tgbaalgos/are_isomorphic.cc, src/tgbaalgos/cleanacc.cc,
      src/tgbaalgos/dotty.cc, src/tgbaalgos/dupexp.cc,
      src/tgbaalgos/dupexp.hh, src/tgbaalgos/hoa.cc,
      src/tgbaalgos/neverclaim.cc, src/tgbaalgos/simulation.cc,
      src/tgbaalgos/stutter.cc, src/tgbatest/checkpsl.cc,
      src/tgbatest/emptchk.cc, src/tgbatest/ltl2tgba.cc, wrap/python/spot.py,
      wrap/python/spot_impl.i: Rename the tgba class into twa.
      c2ae99e7
    • Alexandre Duret-Lutz's avatar
      ltlfilt: add a --define option · 82480720
      Alexandre Duret-Lutz authored
      * src/bin/ltlfilt.cc: Implement it.
      * src/bin/common_output.cc, src/bin/common_output.hh: export the
      stream_formula function.
      * src/ltltest/ltlfilt.test: Test it.
      * src/ltlvisit/relabel.hh: Make it possible to clear the
      relabeling map.
      * NEWS, doc/org/ltlfilt.org: Mention --define.
      82480720
  2. 21 Apr, 2015 1 commit
  3. 20 Apr, 2015 4 commits
  4. 19 Apr, 2015 2 commits
  5. 17 Apr, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      stutter: new variant of Etessami's check · 9e959cdc
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/stutter.cc: Add a new variant of Etessami's check,
      closer to his original paper in IPL.
      * src/ltltest/stutter.test: Add more tests.
      * bench/stutter/user.sh: Include this new variant in the benchmark.
      9e959cdc
  6. 16 Apr, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      dot: add option to number transitions · ecfd9b77
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/dotty.cc: Add option 'o'.
      * src/bin/common_aoutput.cc, src/bin/dstar2tgba.cc: Document it.
      * src/taalgos/dotty.cc: Ignore this option.
      * src/tgbatest/readsave.test: Test it.
      ecfd9b77
  7. 15 Apr, 2015 1 commit
  8. 14 Apr, 2015 3 commits
    • Alexandre Duret-Lutz's avatar
      acc: more helper functions · c65bf731
      Alexandre Duret-Lutz authored
      * src/tgba/acc.hh: Make it possible to call acc_cond::mark_t({1,2,3}),
      and acc_code::fin({1,2,3}).
      c65bf731
    • Alexandre Duret-Lutz's avatar
      python: fix non-determinism in the test suite. · 39b92a6d
      Alexandre Duret-Lutz authored
      Some tests calling spot.automaton('non-existing|') where failing either
      with a "process returned 127", or, under heavier load, with "failed to
      read from...".  The latter occur if we poll() the exit status before the
      children has had the tame to finish.
      
      * wrap/python/spot.py: Make sure we wait for the child process if we
      reach EOF, so that we can report the error status.
      * wrap/python/tests/automata-io.ipynb, wrap/python/tests/piperead.ipynb:
      Update.
      39b92a6d
    • Alexandre Duret-Lutz's avatar
      python: avoid some locking errors with the history · ebdb5b7c
      Alexandre Duret-Lutz authored
      * wrap/python/tests/ipnbdoctest.py: Store all the history
      in memory.
      ebdb5b7c
  9. 13 Apr, 2015 2 commits
    • Alexandre Duret-Lutz's avatar
      more final keywords · 98e4d99b
      Alexandre Duret-Lutz authored
      For #42.
      
      * src/graph/graph.hh, src/ltlast/multop.hh, src/ltlenv/defaultenv.hh,
      src/misc/tmpfile.hh, src/tgba/taatgba.hh, src/tgba/tgbagraph.hh,
      src/tgba/tgbaproduct.hh, src/tgbaalgos/gtec/gtec.hh: Declare more
      classes as final.
      98e4d99b
    • Alexandre Duret-Lutz's avatar
      python: fix error handling while reading automata · ab7ee2c4
      Alexandre Duret-Lutz authored
      * wrap/python/tests/run.in: Make it easier to run python with gdb.
      * wrap/python/tests/automata-io.ipynb: Add test case.
      * wrap/python/spot.py (spot.automata): Make sure p is defined in all
      cases.
      * src/hoaparse/hoascan.ll: Make sure we do not close a file that
      hasn't been opened.
      ab7ee2c4
  10. 03 Apr, 2015 2 commits
  11. 02 Apr, 2015 2 commits
    • Alexandre Duret-Lutz's avatar
      new transformation from Fin-less to TGBA · e589e208
      Alexandre Duret-Lutz authored
      Fixes #72.
      
      * src/tgbaalgos/totgba.cc, src/tgbaalgos/totgba.hh: New files.
      * src/tgbaalgos/Makefile.am: Add them.
      * src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh: Add
      a Generic output type, and call to_generalized_buchi() if
      this type is not selected.
      * src/tgbatest/remfin.test: Add some tests.
      * src/bin/autfilt.cc: Add a --generic option, and set it
      by default.
      e589e208
    • Alexandre Duret-Lutz's avatar
      python: better bindings for testing automata · 16204e8e
      Alexandre Duret-Lutz authored
      * src/taalgos/dotty.cc, src/taalgos/dotty.hh: Add an interface
      similar to that of tgba/dotty.hh, even if we have to ignore
      most options.
      * src/taalgos/tgba2ta.cc, src/taalgos/tgba2ta.hh: Add an option
      to display the intermediate automaton with explicit stuttering
      transitions, for the purpose of making demonstrations.
      * src/tgba/tgbagraph.hh: Tweak the file so that SWIG can
      read it.
      * wrap/python/spot.py: Add wrappers for testing automata.
      * wrap/python/spot_impl.i: Fix support for
      atomic_prop_collect_as_bdd, and include a few more files.
      * wrap/python/tests/testingaut.ipynb: New file.
      * wrap/python/tests/Makefile.am: Add it.
      16204e8e
  12. 01 Apr, 2015 4 commits
    • Alexandre Duret-Lutz's avatar
      degen: add a lowinit option · 7bb183b9
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/degen.cc, src/tgbaalgos/degen.hh: New argument
      to disable the "jump to the accepting level if the entering
      state as an accepting self-loop" optimization.
      * src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh: Check
      the degen-lowinit option and pass it on to degeneralize().
      * src/bin/spot-x.cc: Document it.
      * src/tgbatest/degenlskip.test: Add some tests.
      * src/tgbatest/ltl2ta.test: Update value.  We output less
      accepting states now.
      7bb183b9
    • Alexandre Duret-Lutz's avatar
      degen: do not mark initial trivial SCCs as accepting · 6e8170e3
      Alexandre Duret-Lutz authored
      Doing so is not wrong, but it's superfluous, and the extra accepting
      state will cause additional work in emptiness checks based on NDFS.
      Report from Jan Strejček.
      
      * src/tgbaalgos/degen.cc: Here.
      * src/tgbatest/degenid.test: Add a test case.
      6e8170e3
    • Alexandre Duret-Lutz's avatar
      python: LRU cache for the dot->svg conversion · 54a8ce50
      Alexandre Duret-Lutz authored
      * wrap/python/spot.py: Here.
      54a8ce50
    • Alexandre Duret-Lutz's avatar
      python 2 is no longer supported · 31b3862f
      Alexandre Duret-Lutz authored
      * m4/pypath.m4: Check for Python 3.2+.
      * README, NEWS, HACKING: Reflect this change.
      31b3862f
  13. 31 Mar, 2015 4 commits
  14. 30 Mar, 2015 4 commits
  15. 27 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: add a spot.automata(filename) interface, yielding automata · 25de479e
      Alexandre Duret-Lutz authored
      * src/hoaparse/fmterror.cc, src/hoaparse/public.hh,
      src/hoaparse/hoaparse.yy (hoa_stream_parser::parse_strict): New method
      that raises an exception whenever a syntax error is encountered.
      * src/ltlparse/public.hh (parse_error): Move ...
      * src/misc/common.hh: ... here.
      * wrap/python/spot_impl.i: Wrap the hoa output.
      * wrap/python/spot.py: Implement spot.automata.
      * wrap/python/tests/automata-io.ipynb: New test.
      * wrap/python/tests/Makefile.am: Add it.
      25de479e
  16. 26 Mar, 2015 2 commits
    • 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
    • Alexandre Duret-Lutz's avatar
      debian: disable -flto for binaries · 30b87886
      Alexandre Duret-Lutz authored
      This work around what appears to be an exception handling bug, causing
      binaries to not always catch excepting thrown by the library.
      
      * debian/rules: Here.
      30b87886
  17. 25 Mar, 2015 2 commits
    • Alexandre Duret-Lutz's avatar
      Make --keep-states more useful by actually removing states. · 483212d2
      Alexandre Duret-Lutz authored
      Fixes #70.
      
      We don't modify the behavior of mask_keep_states(), because it is
      actually useful in some algorithm to remove states without renumbering
      all the other states.
      
      * src/bin/autfilt.cc: Call purge_dead_states().
      * src/tgbatest/maskkeep.test: Adjust.
      483212d2
    • Alexandre Duret-Lutz's avatar
      complete: Fix completion of automata using Fin-acceptance · 23bcbb5b
      Alexandre Duret-Lutz authored
      * src/tgba/acc.cc, src/tgba/acc.hh: Add a way to extract
      an unstatisfiable mark, and fix the eval() function for
      Fin acceptance.
      * src/tgbaalgos/complete.cc: Label the sink state using
      an unsatisfiable mark.  Do not assume generalized Büchi.
      * src/tgbatest/complete.test: New test.
      * src/tgbatest/Makefile.am: Add it.
      23bcbb5b