1. 07 Mar, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      twa_graph: more test coverage · 2e763a08
      Alexandre Duret-Lutz authored
      The goal is to improve coverage stats, but I discovered two issues
      while doing so.
      
      * tests/python/twagraph.py: New test case.
      * tests/Makefile.am: Add it.
      * spot/twa/twagraph.hh: Add fix typos in error messages.
      * python/spot/impl.i: Fix broken wrappers for state_from_number and
      state_acc_sets.
      2e763a08
  2. 20 Feb, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      scc_info: add Python bindings · 289b2383
      Alexandre Duret-Lutz authored
      Related to #172, where we discussed that scc_info bindings were
      missing.
      
      * spot/twaalgos/sccinfo.hh (spot::scc_info::scc_node): Move...
      (spot::scc_info_node): ... here to help Swig.
      * python/spot/impl.i: Add bindings for scc_info.
      * tests/python/sccinfo.py: New file.
      * tests/Makefile.am: Add it.
      289b2383
  3. 14 Jan, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      hierarchy: expose mp_class to python · ebdb198b
      Alexandre Duret-Lutz authored
      * bin/common_output.cc: Move some of the printing code...
      * spot/tl/hierarchy.cc, spot/tl/hierarchy.hh: ... here, as new
        variants of mp_class...
      * python/spot/impl.i: ... that we can now call from Python.
      * python/ajax/spotcgi.in: Use those to simplify and extend
      the code printing class membership.
      ebdb198b
  4. 06 Jan, 2017 1 commit
    • 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
  5. 27 Dec, 2016 3 commits
    • 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
      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
  6. 05 Nov, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      from_ltlf: new LTL transformation. · 2e69e045
      Alexandre Duret-Lutz authored
      Fixes #187.
      
      * spot/tl/ltlf.cc, spot/tl/ltlf.hh: New files.
      * spot/tl/Makefile.am: Add them.
      * bin/ltlfilt.cc: Add a new option.
      * bin/man/ltlfilt.x: Add bibliographic reference.
      * tests/core/ltlfilt.test: Add more tests.
      * tests/python/ltlf.py: New file.
      * tests/Makefile.am: Add it.
      * python/spot/impl.i: Python bindings.
      * NEWS: Mention it.
      2e69e045
  7. 29 Jul, 2016 1 commit
  8. 19 Jul, 2016 1 commit
  9. 25 May, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      add binding for language_containment_checker and document them · b4088271
      Alexandre Duret-Lutz authored
      * spot/tl/contain.cc, spot/tl/contain.hh: Simplify the
      use of language_containment_checker by adding default argument.
      * python/spot/__init__.py, python/spot/impl.i: Bind it in Python.
      * doc/org/tut04.org: New file to illustrate it.
      * doc/org/tut.org, doc/Makefile.am: Add it.
      * NEWS: Mention those changes.
      b4088271
  10. 22 Apr, 2016 2 commits
  11. 08 Apr, 2016 1 commit
  12. 10 Mar, 2016 1 commit
    • Laurent XU's avatar
      python: add wrapper on twa_graph::edges() · 1eee12b8
      Laurent XU authored
      * spot/twa/twagraph.hh (edges): Do not hide from SWIG.
      * spot/graph/graph.hh: Hide stuff that SWIG do not understand.
      * python/spot/impl.i: Add some typemaps and fragment to
      iterate over the result of twa_graph::edges().
      1eee12b8
  13. 17 Feb, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      parsetl: change the interface to return a parsed_formula · 22f442f7
      Alexandre Duret-Lutz authored
      This gets the interface of all the functions parsing formula in line
      with the interface of the automaton parser: both return a "parsed_*"
      object (parsed_formula or parsed_automaton) that contains the said
      object and its list of errors.  Doing so avoid having to declare the
      parse_error_list in advance.
      
      * spot/tl/parse.hh, spot/parsetl/parsetl.yy: Do the change.
      * spot/parsetl/fmterror.cc: Adjust the error printer.
      * NEWS: Document it.
      * bin/common_finput.cc, bin/common_finput.hh, bin/ltlcross.cc,
      bin/ltldo.cc, bin/ltlfilt.cc, doc/org/tut01.org, doc/org/tut02.org,
      doc/org/tut10.org, doc/org/tut20.org, python/ajax/spotcgi.in,
      python/spot/impl.i, spot/parseaut/parseaut.yy, tests/core/checkpsl.cc,
      tests/core/checkta.cc, tests/core/consterm.cc, tests/core/emptchk.cc,
      tests/core/equalsf.cc, tests/core/ikwiad.cc, tests/core/kind.cc,
      tests/core/length.cc, tests/core/ltlprod.cc, tests/core/ltlrel.cc,
      tests/core/randtgba.cc, tests/core/readltl.cc, tests/core/reduc.cc,
      tests/core/safra.cc, tests/core/syntimpl.cc, tests/core/tostring.cc,
      tests/ltsmin/modelcheck.cc, tests/python/alarm.py,
      tests/python/interdep.py, tests/python/ltl2tgba.py,
      tests/python/ltlparse.py: Adjust all uses.
      22f442f7
  14. 12 Feb, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      get read of twa_safra_complement · 6a662a6d
      Alexandre Duret-Lutz authored
      * spot/twa/twasafracomplement.cc, spot/twa/twasafracomplement.hh,
      tests/core/complementation.cc: Delete.
      * tests/Makefile.am, spot/twa/Makefile.am: Adjust.
      * tests/core/complementation.test: Rewrite using the new determinization
      code.
      * python/spot/impl.i: Do not mention twa_safra_complement anymore.
      * NEWS: Mention the removal.
      6a662a6d
  15. 05 Feb, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      python: highlighting functions for edges and states · 23c2cbf4
      Alexandre Duret-Lutz authored
      * python/spot/impl.i (highlight_state, highlight_edge): New function.
      * python/spot/__init__.py (highlight_states, highlight_edges): New
      functions.
      * spot/twaalgos/dot.cc: Add a '#' option.
      * spot/taalgos/dot.cc: Ignore '#'.
      * tests/python/highlighting.ipynb: New file to illustrate everything.
      * tests/Makefile.am, doc/org/tut.org: Add it.
      23c2cbf4
  16. 31 Jan, 2016 1 commit
  17. 26 Jan, 2016 2 commits
    • Alexandre Duret-Lutz's avatar
      python: add bindings for ltsmin · 5a9b0aa1
      Alexandre Duret-Lutz authored
      * python/spot/ltsmin.i: New file.
      * python/Makefile.am: Add it.
      * python/spot/impl.i: Add bindings for kripke and fair_kripke.
      * tests/python/ltsmin.ipynb: New file.
      * tests/Makefile.am, doc/org/tut.org: Add it.
      * tests/python/ipnbdoctest.py: Make it possible for notebook
      to exit(77).
      * debian/control: Make the Python package dependent
      on libspotltsmin0.
      * python/spot/__init__.py: Typo.
      5a9b0aa1
    • 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
  18. 13 Jan, 2016 1 commit
    • Alexandre Duret-Lutz's avatar
      trival: new class for tri-valued logic · 1aeb260a
      Alexandre Duret-Lutz authored
      * spot/misc/trival.hh: New file.
      * spot/misc/Makefile.am: Add it.
      * python/spot_impl.i: Add Python bindings.
      * tests/core/trival.cc, tests/core/trival.test,
      tests/python/trival.py: New files, testing it.
      * tests/Makefile.am: Add them.
      1aeb260a
  19. 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
  20. 24 Dec, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      show how to implement product in Python · 74ec9c54
      Alexandre Duret-Lutz authored
      * wrap/python/tests/product.ipynb: New file.
      * wrap/python/tests/Makefile.am, doc/org/tut.org: Add it.
      * wrap/python/tests/ipnbdoctest.py: Ignore %timeit results.
      * wrap/python/spot_impl.i: Add bindings for
      set_state_names()/get_state_names().
      * spot/twaalgos/product.cc: Fix computation of properties.
      * doc/org/hoa.org: Name.
      * NEWS: Update.
      74ec9c54
  21. 18 Dec, 2015 3 commits
    • Alexandre Duret-Lutz's avatar
      acc_code: parse from the constructor · df1ef302
      Alexandre Duret-Lutz authored
      * spot/twa/acc.hh, spot/twa/acc.cc (parse_acc_code): Rename as...
      (acc_cond::acc_code): ... this, making it a lot easier to build
      acceptance conditions from strings.
      * NEWS: Mention the change.
      * spot/twaalgos/dtwasat.cc, spot/bin/randaut.cc, spot/tests/acc.cc:
      Adjust.
      * wrap/python/tests/acc_cond.ipynb, wrap/python/tests/accparse.ipynb,
      wrap/python/tests/accparse2.py: Simplify, but not completely to exercise
      all variants.
      * wrap/python/spot_impl.i: Make acc_code's constructor implicit.
      df1ef302
    • Alexandre Duret-Lutz's avatar
      acc_cond: allow ctor from acc_code only + bind unsat_mark() · d0b29051
      Alexandre Duret-Lutz authored
      * spot/twa/acc.hh: Here.
      * wrap/python/spot_impl.i: Adjust for the strange return type of
      unsat_mark().
      * wrap/python/tests/acc_cond.ipynb: Augment.
      d0b29051
    • Alexandre Duret-Lutz's avatar
      python: better binding for is_parity() · 15131e74
      Alexandre Duret-Lutz authored
      * wrap/python/spot_impl.i: Here.
      * wrap/python/tests/acc_cond.ipynb: Document it.
      * spot/twa/acc.cc (is_parity): Always initialize max.
      15131e74
  22. 17 Dec, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      acc_cond: rename is_tt/is_ff as is_t/is_f and add printer · 94cca9de
      Alexandre Duret-Lutz authored
      * spot/twa/acc.cc, spot/twa/acc.hh: Here.
      * spot/parseaut/parseaut.yy, spot/twa/acc.hh,
      spot/twaalgos/gtec/gtec.cc, spot/twaalgos/hoa.cc,
      spot/twaalgos/neverclaim.cc, spot/twaalgos/product.cc,
      spot/twaalgos/remfin.cc, spot/twaalgos/strength.cc: Adjust.
      * NEWS: Mention the changes.
      * wrap/python/spot_impl.i: Bind acc_cond the printer.
      * wrap/python/tests/acc_cond.ipynb: Add more examples.
      94cca9de
  23. 16 Dec, 2015 1 commit
  24. 15 Dec, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: port the tut22.org example to Python · c39d35d0
      Alexandre Duret-Lutz authored
      * wrap/python/spot_impl.i: Extend acc_cond::mark_t to with a constructor
      that takes a vector.
      * doc/org/tut22.org: Add a Python version.
      * doc/org/tut.org: Adjust the list, we don't have any C++-specific
      example.
      * NEWS: Mention it.
      c39d35d0
  25. 14 Dec, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: allow iterating over the successors of a state · 9313222e
      Alexandre Duret-Lutz authored
      Fixes #118.
      
      * spot/twa/twagraph.hh: Avoid using graph_t::state to help Swig.
      * wrap/python/spot_impl.i: Add a __str__ function for acc_cond::mark_t.
      * doc/org/tut21.org: Add the Python version.
      * doc/org/tut.org: Move tut21.org to the Python/C++ section.
      * NEWS: Update.
      9313222e
  26. 11 Dec, 2015 2 commits
  27. 10 Dec, 2015 1 commit
  28. 04 Dec, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      rename src/ as spot/ and use include <spot/...> · f120dd32
      Alexandre Duret-Lutz authored
      * NEWS: Mention the change.
      * src/: Rename as ...
      * spot/: ... this, adjust all headers to include <spot/...> instead of
      "...", and adjust all Makefile.am to search headers from the top-level
      directory.
      * HACKING: Add conventions about #include.
      * spot/sanity/style.test: Add a few more grep to catch cases
      that do not follow these conventions.
      * .gitignore, Makefile.am, README, bench/stutter/Makefile.am,
      bench/stutter/stutter_invariance_formulas.cc,
      bench/stutter/stutter_invariance_randomgraph.cc, configure.ac,
      debian/rules, doc/Doxyfile.in, doc/Makefile.am,
      doc/org/.dir-locals.el.in, doc/org/g++wrap.in, doc/org/init.el.in,
      doc/org/tut01.org, doc/org/tut02.org, doc/org/tut03.org,
      doc/org/tut10.org, doc/org/tut20.org, doc/org/tut21.org,
      doc/org/tut22.org, doc/org/tut30.org, iface/ltsmin/Makefile.am,
      iface/ltsmin/kripke.test, iface/ltsmin/ltsmin.cc,
      iface/ltsmin/ltsmin.hh, iface/ltsmin/modelcheck.cc,
      wrap/python/Makefile.am, wrap/python/ajax/spotcgi.in,
      wrap/python/spot_impl.i, wrap/python/tests/ltl2tgba.py,
      wrap/python/tests/randgen.py, wrap/python/tests/run.in: Adjust.
      f120dd32
  29. 28 Nov, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      rewrite explicit Kripke structures and their parser · afbaa54d
      Alexandre Duret-Lutz authored
      Fixes #4 and fixes #5.
      
      * NEWS: Mention the change.
      * src/kripkeparse/: Delete.
      * README, src/Makefile.am, configure.ac: Adjust.
      * src/kripke/kripkeexplicit.cc, src/kripke/kripkeexplicit.hh,
      src/kripke/kripkeprint.cc, src/kripke/kripkeprint.hh: Delete.
      * src/kripke/kripkegraph.hh: New file.
      * src/kripke/Makefile.am: Adjust.
      * src/parseaut/parseaut.yy, src/parseaut/public.hh: Add
      an option to read kripke structures.
      * src/tests/bad_parsing.test: Delete.
      * src/tests/Makefile.am: Adjust.
      * src/tests/kripke.test, src/tests/parse_print_test.cc: Rewrite.
      * src/tests/ikwiad.cc, src/tests/parseaut.test,
      iface/ltsmin/modelcheck.cc, wrap/python/spot_impl.i: Adjust.
      afbaa54d
  30. 24 Nov, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      sat: rename dtgbasat as dtwasat · a5ca9dbc
      Alexandre Duret-Lutz authored
      * src/twaalgos/dtgbasat.cc, src/twaalgos/dtgbasat.hh: Rename as...
      * src/twaalgos/dtwasat.cc, src/twaalgos/dtwasat.hh: ... these.
      * src/bin/autfilt.cc, src/tests/ikwiad.cc, src/twaalgos/Makefile.am,
      src/twaalgos/postproc.cc, wrap/python/spot_impl.i: Adjust.
      * NEWS: Mention the renamings.
      a5ca9dbc
  31. 07 Nov, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      rename safety.hh as strength.hh · 81cfa05a
      Alexandre Duret-Lutz authored
      * src/twaalgos/safety.cc, src/twaalgos/safety.hh: Rename as ...
      * src/twaalgos/strength.cc, src/twaalgos/strength.hh: ... these.
      * src/bin/ltlfilt.cc, src/tests/ikwiad.cc, src/twaalgos/Makefile.am,
      src/twaalgos/compsusp.cc, src/twaalgos/minimize.cc,
      wrap/python/spot_impl.i: Adjust.
      81cfa05a
  32. 05 Nov, 2015 1 commit
  33. 29 Oct, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: fix output of twa_run · aaff42ee
      Alexandre Duret-Lutz authored
      * src/twaalgos/emptiness.hh, src/twaalgos/emptiness.cc: Declare the
      operator<< for twa_run, not for twa_run_ptr (the shared_ptr
      automatically forward operator<<).
      * wrap/python/spot_impl.i: Add __str__ to twa_run, not twa_run_ptr.
      aaff42ee