Commit graph

396 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
df1ef302e8 acc_code: parse from the constructor
* 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.
2015-12-18 18:18:28 +01:00
Alexandre Duret-Lutz
d0b29051b2 acc_cond: allow ctor from acc_code only + bind unsat_mark()
* 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.
2015-12-18 17:04:03 +01:00
Alexandre Duret-Lutz
b893b55973 python: better swig options
* wrap/python/Makefile.am: Use more modern swig flags.
2015-12-18 16:03:50 +01:00
Alexandre Duret-Lutz
15131e74f2 python: better binding for is_parity()
* wrap/python/spot_impl.i: Here.
* wrap/python/tests/acc_cond.ipynb: Document it.
* spot/twa/acc.cc (is_parity): Always initialize max.
2015-12-18 15:54:35 +01:00
Alexandre Duret-Lutz
94cca9de3d acc_cond: rename is_tt/is_ff as is_t/is_f and add printer
* 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.
2015-12-17 08:42:34 +01:00
Alexandre Duret-Lutz
2927cf38ac python: add some doc & tests for the acceptance bindings
* wrap/python/tests/acc_cond.ipynb: New file.
* wrap/python/tests/Makefile.am, doc/org/tut.org: Add it.
* wrap/python/spot_impl.i: Add printer for acc_cond::mark_t.
2015-12-16 19:06:20 +01:00
Alexandre Duret-Lutz
c39d35d068 python: port the tut22.org example to Python
* 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.
2015-12-15 19:01:33 +01:00
Alexandre Duret-Lutz
9313222e95 python: allow iterating over the successors of a state
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.
2015-12-14 11:51:57 +01:00
Alexandre Duret-Lutz
4b853865b9 python: initial work on wrapping twa_graph::out(n)
* spot/twa/twagraph.hh (out): Do not hide from SWIG.
* spot/graph/graph.hh: Hide stuff that SWIG do not understand.
* wrap/python/spot_impl.i: Add some typemaps and fragment to
iterate over the result of twa_graph::out().
2015-12-11 19:32:52 +01:00
Alexandre Duret-Lutz
4e040fd9f7 * wrap/python/spot_impl.i: We do not use False/True anymore in Spot. 2015-12-11 10:14:48 +01:00
Alexandre Duret-Lutz
3467a719bb python: kill some Swig warnings
* wrap/python/spot_impl.i: Get rid of some warnings about missing
typecheck for spot::formula.
2015-12-10 18:25:35 +01:00
Alexandre Duret-Lutz
2e15ed959d decompose_strength: work with inherently weak SCCs
* wrap/python/tests/decompose.ipynb: Adjust text.
* spot/twaalgos/strength.hh, spot/twaalgos/strength.cc:
Adjust to extract inherently weak SCCs instead of weak SCCs.  This gets
rids of the special handling for the "corner cases".
* spot/tests/strength.test: Adjust.
* NEWS: Mention it.
2015-12-09 15:53:51 +01:00
Alexandre Duret-Lutz
f120dd3206 rename src/ as spot/ and use include <spot/...>
* 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.
2015-12-04 20:13:59 +01:00
Alexandre Duret-Lutz
871965c7fb * wrap/python/ajax/spotcgi.in: Adjust for recent renamings. 2015-12-04 08:09:10 +01:00
Alexandre Duret-Lutz
c60c117714 python: do not use -no-undefined
This was added by mistake in 86abd6c1 but that makes no sense, because
the library depends on all the symbols in libpython.  Reported by
Étienne Renault.

* wrap/python/Makefile.am: Here.
2015-12-02 14:26:21 +01:00
Alexandre Duret-Lutz
afbaa54d92 rewrite explicit Kripke structures and their parser
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.
2015-11-28 02:18:39 +01:00
Alexandre Duret-Lutz
a5ca9dbc43 sat: rename dtgbasat as dtwasat
* 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.
2015-11-24 05:44:51 +01:00
Alexandre Duret-Lutz
d46da963d5 python: better interface for sat_minimize()
* NEWS: Mention it.
* wrap/python/spot.py: Rewrite the sat_minimize() function.
* wrap/python/tests/satmin.py: New file.
* wrap/python/tests/Makefile.am (TESTS): Add it.
2015-11-17 18:37:23 +01:00
Alexandre Duret-Lutz
b3ff5655fb dot: add support for option +N
* src/twaalgos/dot.cc: Here.
* NEWS, src/bin/common_aoutput.cc: Document it.
* wrap/python/tests/automata.ipynb: Test it.
2015-11-14 14:49:31 +01:00
Alexandre Duret-Lutz
6b516df34a dot: display pairs of states for products
* src/twaalgos/dot.cc: Here.
* wrap/python/tests/automata.ipynb: Test it.
* NEWS: Document this.
2015-11-14 10:22:59 +01:00
Alexandre Duret-Lutz
e3b8ed7bb5 python: add a show_default option to setup()
* wrap/python/spot.py: Here.
* wrap/python/tests/decompose.ipynb: Use it to simplify the code.
2015-11-13 18:18:13 +01:00
Alexandre Duret-Lutz
d23eaec7ef make sure --dot=Bb is the same as --dot=b
* NEWS: Mention the fixed bug.
* src/twaalgos/dot.cc: Fix.
* wrap/python/tests/decompose.ipynb: Use it.
2015-11-13 17:50:12 +01:00
Alexandre Duret-Lutz
86abd6c1c0 Use -Bsymbolic-functions and -Bsymbolic
This avoids dynamic lookups to resolve symbols inside the library, but
disallows symbol interposition.

* m4/symbolic.m4: New file.
* buddy/m4/symbolic.m4: New link.
* configure.ac, buddy/configure.ac: Add AX_SYMBOLIC.
* buddy/src/Makefile.am, iface/ltsmin/Makefile.am, src/Makefile.am,
wrap/python/Makefile.am: Link with $(SYMBOLIC_LDFLAGS).
2015-11-10 15:10:11 +01:00
Alexandre Duret-Lutz
e206b5ef33 * wrap/python/tests/decompose.ipynb: Typos. 2015-11-09 10:01:03 +01:00
Alexandre Duret-Lutz
104a372c41 Add a notebook illustrating decompose_strength()
* wrap/python/tests/decompose.ipynb: New file.
* wrap/python/tests/Makefile.am: Add it.
* src/twaalgos/strength.cc: Fix corner cases.
* src/tests/strength.test: Adjust corner case.
* NEWS, doc/org/tut.org: Mention the notebook.
2015-11-08 22:07:43 +01:00
Alexandre Duret-Lutz
81cfa05aef rename safety.hh as strength.hh
* 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.
2015-11-07 14:28:40 +01:00
Alexandre Duret-Lutz
8a8ec21de7 rename is_guarantee_automaton() as is_terminal_automaton()
* src/twaalgos/safety.hh, src/twaalgos/safety.cc: Here.
* src/bin/ltlfilt.cc, src/tests/ikwiad.cc, src/twaalgos/minimize.cc,
wrap/python/ajax/spotcgi.in: Adjust.
* NEWS: Mention the change.
2015-11-07 14:05:01 +01:00
Alexandre Duret-Lutz
0c5f87b442 add support for the "terminal" property
* src/twa/twa.hh: Store the terminal property.
* src/twaalgos/hoa.cc, src/parseaut/parseaut.yy: Add I/O for "terminal".
* src/twaalgos/ltl2tgba_fm.cc, src/twaalgos/minimize.cc: Set terminal
as apropriate.
* src/twaalgos/safety.cc: Use it.
* doc/org/tut21.org, doc/org/hoa.org, NEWS: Document it.
* src/tests/complement.test, src/tests/monitor.test,
wrap/python/tests/automata-io.ipynb: Adjust.
2015-11-07 14:04:44 +01:00
Alexandre Duret-Lutz
654888718c add support for the weak property
This fixes #119.

* doc/org/tut21.org, doc/org/hoa.org, NEWS: Document it.
* src/twa/twa.hh: Support it in automata.
* src/twaalgos/hoa.cc, src/parseaut/parseaut.yy: Add I/O support.
* src/twaalgos/minimize.cc, src/twaalgos/totgba.cc: Set weak
automata on output.
* src/tests/complement.test, src/tests/parseaut.test,
src/tests/readsave.test, src/tests/remfin.test, src/tests/sccsimpl.test,
src/tests/wdba2.test, wrap/python/tests/automata-io.ipynb: Adjust.
2015-11-06 21:51:48 +01:00
Alexandre Duret-Lutz
19cd2cda6f python: add binding for is_unambiguous
Fixes #117.

* wrap/python/spot.py, wrap/python/spot_impl.i: Add binding.
* wrap/python/tests/remfin.py: Add a small test case.
* NEWS: Mention it.
2015-11-05 13:43:02 +01:00
Alexandre Duret-Lutz
8ea5f73c1a twa: no default argument for property setters
This is a preliminary for the renaming suggested in #116.

* src/twa/twa.hh (prop_state_based_acc, prop_inherently_weak,
prop_deterministic, prop_unambiguous, prop_stutter_invariant,
prop_stutter_sensitive): Do not default the argument to true.
* src/parseaut/parseaut.yy, src/twaalgos/degen.cc,
src/twaalgos/dtbasat.cc, src/twaalgos/dtgbasat.cc,
src/twaalgos/minimize.cc, src/twaalgos/randomgraph.cc,
src/twaalgos/remfin.cc, src/twaalgos/sbacc.cc,
src/twaalgos/simulation.cc, src/twaalgos/totgba.cc,
wrap/python/tests/remfin.py: Adjust.
2015-11-04 18:25:49 +01:00
Alexandre Duret-Lutz
aaff42ee22 python: fix output of twa_run
* 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.
2015-10-29 17:24:10 +01:00
Alexandre Duret-Lutz
f6af2a84cb twa_succ_iterator: rename accessors
* src/twa/twa.hh, src/ta/ta.hh (current_state,
current_acceptance_conditions, current_condition): Rename as...
(dst, acc, cond): ... these.
* iface/ltsmin/ltsmin.cc, src/kripke/fairkripke.cc,
src/kripke/fairkripke.hh, src/kripke/kripke.cc,
src/kripke/kripke.hh, src/kripke/kripkeexplicit.cc,
src/kripke/kripkeexplicit.hh, src/kripke/kripkeprint.cc,
src/ta/taexplicit.cc, src/ta/taexplicit.hh, src/ta/taproduct.cc,
src/ta/taproduct.hh, src/ta/tgtaproduct.cc, src/ta/tgtaproduct.hh,
src/taalgos/dot.cc, src/taalgos/emptinessta.cc,
src/taalgos/minimize.cc, src/taalgos/reachiter.cc,
src/taalgos/tgba2ta.cc, src/twa/taatgba.cc, src/twa/taatgba.hh,
src/twa/twagraph.hh, src/twa/twaproduct.cc,
src/twa/twasafracomplement.cc, src/twaalgos/bfssteps.cc,
src/twaalgos/bfssteps.hh, src/twaalgos/compsusp.cc,
src/twaalgos/copy.cc, src/twaalgos/emptiness.cc,
src/twaalgos/gtec/gtec.cc, src/twaalgos/gv04.cc,
src/twaalgos/lbtt.cc, src/twaalgos/ltl2tgba_fm.cc,
src/twaalgos/magic.cc, src/twaalgos/minimize.cc,
src/twaalgos/ndfs_result.hxx, src/twaalgos/reachiter.cc,
src/twaalgos/se05.cc, src/twaalgos/stats.cc,
src/twaalgos/stutter.cc, src/twaalgos/tau03.cc,
src/twaalgos/tau03opt.cc, wrap/python/tests/interdep.py: Adjust.
* NEWS: Mention the renamings.
2015-10-28 21:16:21 +01:00
Alexandre Duret-Lutz
dee73ee342 parse_aut: simplify the interface
* src/parseaut/public.hh, src/parseaut/parseaut.yy,
src/parseaut/fmterror.cc: Add a raise_errors options.  Remove the
parse_strict() method.  Store parse errors and filename in the output
parsed_aut to simplify usage.
* doc/org/tut20.org, doc/org/tut21.org, doc/org/tut30.org,
src/bin/autfilt.cc, src/bin/common_hoaread.cc, src/bin/dstar2tgba.cc,
src/bin/ltlcross.cc, src/bin/ltldo.cc, src/tests/complementation.cc,
src/tests/ikwiad.cc, src/tests/ltlcross3.test, src/tests/ltldo.test,
wrap/python/spot.py, wrap/python/tests/parsetgba.py: Adjust usage.
* NEWS: Mention the changes.
2015-10-26 20:28:06 +01:00
Alexandre Duret-Lutz
99c967f021 twa_run: swallow reduce_run, replay_twa_run, twa_run_to_tgba
These now become twa_run::reduce, twa_run::replay, and
twa_run::as_twa.

* src/twaalgos/reducerun.cc, src/twaalgos/reducerun.hh,
src/twaalgos/replayrun.cc, src/twaalgos/replayrun.hh: Delete.
* src/twaalgos/Makefile.am: Adjust.
* src/twaalgos/emptiness.cc, src/twaalgos/emptiness.hh: Move
the above functions here, as method of twa_run.
* src/bin/common_aoutput.hh, src/bin/ltlcross.cc,
src/tests/emptchk.cc, src/tests/ikwiad.cc, src/tests/randtgba.cc,
wrap/python/ajax/spotcgi.in, iface/ltsmin/modelcheck.cc: Adjust.
* NEWS: List the renamings.
2015-10-25 14:13:56 +01:00
Alexandre Duret-Lutz
63917def2d twa_run: keep a pointer to the automaton
This simplify all laters invocations, because we do not have to pass
the automaton the run was generated on.

This fixes #113 by allowing the __str__ function to be implemented on
runs.

* src/twaalgos/emptiness.cc, src/twaalgos/emptiness.hh (twa_run):
Store the automaton.
(prin_twa_run): Rewrite as an overloaded <<.
* src/twaalgos/reducerun.cc, src/twaalgos/reducerun.hh (reduce_run):
Do not like the automaton as a parameter.
* src/twaalgos/replayrun.cc, src/twaalgos/replayrun.hh (replay_twa_run):
Likewise.
* src/bin/common_aoutput.hh, src/bin/ltlcross.cc,
src/tests/complementation.cc, src/tests/ikwiad.cc,
src/tests/randtgba.cc, src/twaalgos/gtec/ce.cc, src/twaalgos/gv04.cc,
src/twaalgos/magic.cc, src/twaalgos/ndfs_result.hxx,
src/twaalgos/se05.cc, src/twaalgos/projrun.cc: Adjust.
* wrap/python/ajax/spotcgi.in: Add a __str__ function to twa_run_ptr.
* wrap/python/spot_impl.i: Adjust.
2015-10-25 11:58:14 +01:00
Alexandre Duret-Lutz
4221e68d44 rename tgba_run as twa_run
Part of #113.

* src/twaalgos/emptiness.cc, src/twaalgos/emptiness.hh (tgba_run):
Rename as ...
(twa_run): ... this.
* NEWS: Mention it.
* iface/ltsmin/modelcheck.cc, src/tests/complementation.cc,
src/tests/emptchk.cc, src/tests/ikwiad.cc, src/tests/randtgba.cc,
src/twa/twa.hh, src/twaalgos/bfssteps.cc, src/twaalgos/bfssteps.hh,
src/twaalgos/gtec/ce.cc, src/twaalgos/gtec/ce.hh,
src/twaalgos/gv04.cc, src/twaalgos/magic.cc, src/twaalgos/minimize.cc,
src/twaalgos/ndfs_result.hxx, src/twaalgos/projrun.cc,
src/twaalgos/projrun.hh, src/twaalgos/reducerun.cc,
src/twaalgos/reducerun.hh, src/twaalgos/replayrun.cc,
src/twaalgos/replayrun.hh, src/twaalgos/se05.cc, src/twaalgos/word.cc,
src/twaalgos/word.hh, wrap/python/ajax/spotcgi.in,
wrap/python/spot_impl.i: Adjust.
2015-10-24 19:23:59 +02:00
Alexandre Duret-Lutz
4a91fccc33 stats: rename structures and attribute for concistency
* src/taalgos/stats.cc, src/taalgos/stats.hh
(tgba_statistics::transitions, tgba_sub_statistics::sub_transitions):
Rename ...
(twa_statistics::edges, twa_sub_statistics::transitions): ... to
these.
* NEWS: Mention it.
* src/bin/common_aoutput.hh, src/bin/ltlcross.cc,
src/tests/checkta.cc, src/tests/complementation.cc,
src/tests/ikwiad.cc, src/tests/ltl2tgba.test,
src/tests/neverclaimread.test, src/tests/randtgba.cc,
src/tests/renault.test, src/tests/wdba2.test, src/twaalgos/dtbasat.cc,
src/twaalgos/dtgbasat.cc, src/twaalgos/stats.cc,
src/twaalgos/stats.hh, wrap/python/ajax/spotcgi.in: Adjust.
2015-10-24 19:23:59 +02:00
Alexandre Duret-Lutz
337925c94a python: change postprocess to take an optional formula
Doing so also work around some differences between Swig 3.0.2 and 3.0.7
observed on our build farm.

* wrap/python/spot.py: Here.
* wrap/python/spot_impl.i: Recognize None as a null formula
on input.
2015-10-23 19:01:02 +02:00
Alexandre Duret-Lutz
51a75a316d parseaut: Add a trust_hoa option.
Fixes #114.

* src/parseaut/public.hh: Add support for a trust_hoa option.
* src/parseaut/parseaut.yy: If trust_hoa is set, recognize the
"inherently-weak" and "stutter-invariant" properties.
* src/bin/common_conv.cc, src/bin/common_conv.hh (read_automaton):
Move...
* src/bin/common_hoaread.cc, src/bin/common_hoaread.hh: ... in this
new file, that also handle the --trust-hoa option.
* src/bin/Makefile.am: Add them.
* src/bin/autfilt.cc, src/bin/dstar2tgba.cc, src/bin/ltlcross.cc,
src/bin/ltldo.cc: Use them.
* src/tests/parseaut.test, src/tests/ltldo.test: Adjust, and test
--trust-hoa=no.
* src/tests/complement.test, src/tests/prodor.test,
src/tests/sbacc.test: Adjust.
* wrap/python/spot.py (automata): Add option trust_hoa.
* NEWS: Update.
2015-10-23 13:24:23 +02:00
Alexandre Duret-Lutz
585e29e7d8 parseaut: change the interface to allow new options
* src/parseaut/public.hh, src/parseaut/parseaut.yy: Make it easier to
pass new options to the parser.
* src/tests/ikwiad.cc, wrap/python/spot.py: Adjust.
2015-10-23 13:24:23 +02:00
Alexandre Duret-Lutz
b6c8a18dbc * wrap/python/spot.py: Check exit status also when timeout is used. 2015-10-22 12:11:59 +02:00
Alexandre Duret-Lutz
82ce722d42 * wrap/python/spot.py: Kill the shell and its children on timeout. 2015-10-21 19:05:37 +02:00
Alexandre Duret-Lutz
619b227eff * wrap/python/spot.py (automata): Use universal_newlines. 2015-10-21 14:42:52 +02:00
Alexandre Duret-Lutz
80a6a183e3 python: add a timeout argument to automaton() and automata()
* wrap/python/spot.py: Implement it.  Also report non-zero
exit using CalledProcessError.
* wrap/python/tests/automata-io.ipynb, wrap/python/tests/piperead.ipynb:
Adjust.
* NEWS: Mention the change.
2015-10-21 11:57:57 +02:00
Alexandre Duret-Lutz
0f3bc27d7b python: fix bindings for scc_filter as a method
* wrap/python/spot.py: Fix bindings for scc_filter.
* wrap/python/tests/remfin.py: Test them.
2015-10-20 14:54:06 +02:00
Alexandre Duret-Lutz
87cb58d0a1 python: introduce a spot.postprocess() function
This simplifies the use of the spot.postprocessor object.

* wrap/python/spot.py: Add it.
* wrap/python/tests/automata.ipynb: Use it.
* NEWS: Mention it.
2015-10-19 18:09:22 +02:00
Alexandre Duret-Lutz
e1ddf97862 fix unabbreviate
This is a bug:

    % ltlfilt -f 'a W b' --unabbreviate=WR
    a U (b | (a W b))

* src/tl/unabbrev.cc: Here.
* src/tests/unabbrevwm.test: Harden test case.
* wrap/python/tests/randltl.ipynb: Adjust expected output.
* NEWS: Mention the fix.
2015-10-19 10:56:31 +02:00
Alexandre Duret-Lutz
43a5187ab4 python: add get_name & set_name for automata
* wrap/python/spot_impl.i (get_name, set_name): New methods for twa.
* wrap/python/tests/remfin.py: Test them.
* wrap/python/ajax/spotcgi.in: Use set_name().
* NEWS: Mention it.
2015-10-18 15:43:19 +02:00
Alexandre Duret-Lutz
176c9e2e17 tl: rename ltl_simplifier to tl_simplifier
* doc/org/tut01.org, doc/tl/tl.tex, src/bin/common_r.hh,
src/bin/ltlfilt.cc, src/tests/equalsf.cc, src/tests/ikwiad.cc,
src/tests/randtgba.cc, src/tests/reduc.cc, src/tests/syntimpl.cc,
src/tl/nenoform.cc, src/tl/randomltl.cc, src/tl/randomltl.hh,
src/tl/simplify.cc, src/tl/simplify.hh, src/twaalgos/ltl2tgba_fm.cc,
src/twaalgos/ltl2tgba_fm.hh, src/twaalgos/stutter.cc,
src/twaalgos/translate.cc, src/twaalgos/translate.hh,
wrap/python/ajax/spotcgi.in, wrap/python/spot.py,
wrap/python/tests/interdep.py: Rename ltl_simplifier to tl_simplifier.
* NEWS: Mention it.
2015-10-18 13:35:23 +02:00