Commit graph

3785 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
a1260105a4 python: add the examples from the ATVA'16 paper
* tests/python/atva16-fig2a.ipynb, tests/python/atva16-fig2b.ipynb: New
files.
* tests/Makefile.am, doc/org/tut.org: Add them.
2016-06-17 14:18:48 +02:00
Alexandre Duret-Lutz
ab42b2ece3 tests: reset CFLAGS
* tests/run.in: Here.  This helps when spins is installed an the tests
actually compile code; we do not want to inherit the -std=c11
-fvisibility=hidden set for compiling Spot.
2016-06-14 14:39:53 +02:00
Alexandre Duret-Lutz
f46d39f852 * tests/Makefile.am: Distribute elevator2.1.pm. 2016-06-14 12:02:41 +02:00
Alexandre Duret-Lutz
9293ac9dad fix a few copyright headers
* tests/core/ltlcrossgrind.test, tests/core/ltlgrind.test,
tests/core/ltlrel.test: Here.
2016-06-14 11:32:59 +02:00
Alexandre Duret-Lutz
a0cd56735a relabel: fix infinite recursion in relabel_bse()
Reported by František Blahoudek.

* spot/tl/relabel.cc: Fix.
* tests/core/ltlrel.test: Add test case.
* NEWS: Mention the bug.
2016-06-14 09:56:17 +02:00
Alexandre Duret-Lutz
272daf62fc python: add a %%pml magic
Fixes #162.

* python/spot/ltsmin.i: Implement the magic.
* NEWS: Mention it.
* tests/python/ltsmin-pml.ipynb: New file.
* tests/Makefile.am, doc/org/tut.org: Add it.
* tests/python/ipnbdoctest.py: Adjust.
2016-06-12 12:53:55 +02:00
Alexandre Duret-Lutz
a7e4395f9d tests: rename ltsmin.ipynb
* tests/python/ltsmin.ipynb: Rename as ...
* tests/python/ltsmin-dve.ipynb: ... this.
* doc/org/tut.org, tests/Makefile.am: Adjust.
2016-06-12 12:28:15 +02:00
Alexandre Duret-Lutz
2cda41e244 * doc/org/tut04.org: Typos. 2016-05-30 16:27:04 +02:00
Alexandre Duret-Lutz
b408827110 add binding for language_containment_checker and document them
* 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.
2016-05-25 15:12:45 +02:00
Alexandre Duret-Lutz
69cea65b35 * doc/org/tut.org: Typo. 2016-05-25 11:05:16 +02:00
Alexandre Duret-Lutz
d145e566dc org: fix sat-minimize example
Fixes #178.

* doc/org/satmin.org: Use a different example, where tba-det does not
work.  Also adjust the text to automatically adjust to the size of the
produced automata.
2016-05-17 22:01:50 +02:00
Alexandre Duret-Lutz
7c1a94721b org: fix never claim example
* doc/org/concepts.org: Enlarge the width of the output of pr so that
the output is not truncated.  It add a missing closing brace.
2016-05-17 20:57:14 +02:00
Alexandre Duret-Lutz
ce5da5cdbf * spot/twaalgos/postproc.cc: Typo. 2016-05-17 15:40:40 +02:00
Alexandre Duret-Lutz
2bcaff138a * doc/org/ltlcross.org: Fix explanation. 2016-05-11 16:20:12 +02:00
Alexandre Duret-Lutz
0e9ccabbe8 ajax: add <h1> title
Final part of #176.

* python/ajax/trans.html: Here.
2016-05-10 10:44:38 +02:00
Alexandre Duret-Lutz
d0c5991768 org: disable postamble in html export
* doc/org/init.el.in, doc/org/.dir-locals.el.in: Here.
2016-05-10 10:39:24 +02:00
Alexandre Duret-Lutz
c035ea1822 org: add a description for each page
Part of #176.

* doc/org/autfilt.org, doc/org/compile.org, doc/org/concepts.org,
doc/org/csv.org, doc/org/dstar2tgba.org, doc/org/genltl.org,
doc/org/hoa.org, doc/org/install.org, doc/org/ioltl.org,
doc/org/ltl2tgba.org, doc/org/ltl2tgta.org, doc/org/ltlcross.org,
doc/org/ltldo.org, doc/org/ltlfilt.org, doc/org/ltlgrind.org,
doc/org/oaut.org, doc/org/randaut.org, doc/org/randltl.org,
doc/org/satmin.org, doc/org/tools.org, doc/org/tut.org,
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, doc/org/upgrade2.org: Here.
* doc/org/index.org: Also add keywords in case it is useful, and
use a more descripting title for search engines.
2016-05-10 10:23:01 +02:00
Alexandre Duret-Lutz
0278735ebe attempt to fix clang++ compilation error
Seen on arch linux when clang++ 3.7.1 uses GCC's 6.1.1 tuple header.

* spot/twaalgos/ltl2tgba_fm.cc (ratexp_to_dfa::succ): Build the return
type explicitly.
* NEWS: Mention the issue.
2016-05-09 22:48:32 +02:00
Alexandre Duret-Lutz
694e485ec2 Merge branch 'master' into next 2016-05-09 09:46:02 +02:00
Alexandre Duret-Lutz
bd5ac37e7c * configure.ac: Bump version number. 2016-05-09 09:42:20 +02:00
Alexandre Duret-Lutz
cfd4a1b98d Release Spot 2.0.1
* NEWS, configure.ac, doc/org/setup.org: Update.
2016-05-09 09:33:24 +02:00
Alexandre Duret-Lutz
73621e8f17 record properties as side-effect of is_deterministic() / is_weak() / ...
Fixes #165.

* spot/twaalgos/isdet.cc, spot/twaalgos/strength.cc: Here.
* spot/twaalgos/isdet.hh, spot/twaalgos/strength.hh, NEWS: Document it.
* spot/twaalgos/hoa.cc: Fix output of negated properties.
* tests/core/readsave.test: New test case.
2016-05-08 16:37:00 +02:00
Alexandre Duret-Lutz
4cc6df102a bench: fix bench/ltl2tgba for new bin location
* bench/ltl2tgba/Makefile.am, bench/ltl2tgba/defs.in:
Update location of tools.
* NEWS: Mention the fix.
2016-05-05 19:40:23 +02:00
Alexandre Duret-Lutz
465fda2b35 * bin/man/genltl.x: Typo. 2016-05-05 19:40:23 +02:00
Alexandre Duret-Lutz
b708ab778f genltl: add formulas from three papers
Fixes #166.

* bin/genltl.cc: Add option --dac-patterns, --eh-patterns,
--sb-patterns.
* NEWS, bin/man/genltl.x, doc/org/genltl.org: Document them.
* bench/ltl2tgba/formulae.ltl: Delete.
* bench/ltl2tgba/known: Use genltl instead.
* bench/ltl2tgba/Makefile.am, bench/ltl2tgba/README: Update.
* tests/core/ltl2tgba2.test: New test case, using genltl.
* tests/Makefile.am: Add it.
2016-05-05 18:39:13 +02:00
Alexandre Duret-Lutz
fd5d59984b bench: fix bench/ltl2tgba for new bin location
* bench/ltl2tgba/Makefile.am, bench/ltl2tgba/defs.in:
Update location of tools.
* NEWS: Mention the fix.
2016-05-05 18:15:44 +02:00
Alexandre Duret-Lutz
79ef4e5a1e * bin/man/genltl.x: Typo. 2016-05-05 14:06:01 +02:00
Alexandre Duret-Lutz
9149724617 doc: add a spot(7) man page
Suggested by Akim Demaille.  Fixes #171.

* bin/man/spot.x, bin/spot.cc: New files.
* bin/man/Makefile.am, bin/Makefile.am: Add them.
* doc/org/tools.org, NEWS: Mention the new page.
2016-05-02 14:40:45 +02:00
Alexandre Duret-Lutz
d6e491a761 doc: fix css to not highlight table row in man pages
* doc/org/spot.css: Here.
2016-05-02 14:40:45 +02:00
Alexandre Duret-Lutz
5e6d096e0f * doc/org/tools.org: Minor tweaks. 2016-05-02 14:40:45 +02:00
Alexandre Duret-Lutz
d02ee34e10 doc: add a spot(7) man page
Suggested by Akim Demaille.  Fixes #171.

* bin/man/spot.x, bin/spot.cc: New files.
* bin/man/Makefile.am, bin/Makefile.am: Add them.
* doc/org/tools.org, NEWS: Mention the new page.
2016-05-02 10:41:41 +02:00
Alexandre Duret-Lutz
923f4b6277 doc: fix css to not highlight table row in man pages
* doc/org/spot.css: Here.
2016-05-02 10:12:32 +02:00
Alexandre Duret-Lutz
48e6ef7065 * doc/org/tools.org: Minor tweaks. 2016-05-02 10:06:29 +02:00
Alexandre Duret-Lutz
e91c6ba2f1 python: support operator rewriting in __format__
Fixes #168.

* python/spot/__init__.py: Implement it.
* tests/python/formulas.ipynb: Test it.
* NEWS: Mention it.
2016-05-01 21:05:49 +02:00
Alexandre Duret-Lutz
d9174593c8 common_trans: allow rewriting operators
Part of #168.

* spot/misc/formater.cc: Adjust to support bracketed options.
* bin/common_trans.hh, bin/common_trans.cc: Use that to
support rewriting operators.
* doc/org/ltlcross.org, tests/core/ltldo.test: Add some examples.
* NEWS: Mention it.
2016-05-01 21:05:49 +02:00
Alexandre Duret-Lutz
52e722c818 * spot/misc/tmpfile.hh: Disallow copy. 2016-05-01 18:59:47 +02:00
Alexandre Duret-Lutz
925785e85f * spot/misc/tmpfile.hh: Disallow copy. 2016-05-01 18:35:55 +02:00
Alexandre Duret-Lutz
a1b3b065fa print_hoa: output all registered APs
Also introduce twa::unregister_ap() and twa_graph::remove_unused_ap()
so that the methods where this behavior is expected can be fixed.

And fix ltsmin::kripke() which did not register APs.

Part of #170.

* spot/twaalgos/hoa.cc: Use apvars() to print all registerd APs.
Throw an exception when printing automata using unregistered APs.
* spot/ltsmin/ltsmin.cc: Call register_ap().
* spot/twa/twa.cc, spot/twa/twa.hh, spot/twa/twagraph.cc,
spot/twa/twagraph.hh (twa::unregister_ap, twa_graph::remove_unused_ap):
New methods.
* spot/tl/exclusive.cc, spot/twaalgos/postproc.cc,
spot/twaalgos/remprop.cc, spot/twaalgos/relabel.cc: Use them.
* tests/core/maskacc.test, tests/core/maskkeep.test,
tests/core/strength.test: Adjust expected results.
* NEWS: Mention those changes.
2016-05-01 15:09:06 +02:00
Alexandre Duret-Lutz
dad17b36b8 honor ap() when counting transitions
Fixing this bug alone revealed another bug: parsing never claim or LBTT
automata did not register APs.  So this fixes both bugs.

This is the first part of #170.

* spot/twa/twa.hh (register_aps_from_dict): New method.
* spot/parseaut/parseaut.yy: Call it for never claim and LBTT files.
* spot/twaalgos/stats.cc: Simplify using ap_vars().
* tests/core/ltl2tgba.test: Add a test case.
* NEWS: Mention the bugs.
2016-05-01 15:06:21 +02:00
Alexandre Duret-Lutz
4f913c7fb5 autfilt: fix simpification of exclusive AP
* bin/autfilt.cc: Here.
* tests/core/exclusive-tgba.test: Test it.
* NEWS: Mention the fix.
2016-05-01 15:06:21 +02:00
Alexandre Duret-Lutz
7531c88671 * spot/twa/twagraph.cc: Fix comment. 2016-05-01 13:29:12 +02:00
Alexandre Duret-Lutz
f5bfc07cfc autfilt: add --unused-ap and --used-ap
Last part of #170.

* bin/autfilt.cc: Implement the new options.
* tests/core/remprop.test: Add a quick test.
* NEWS: Mention these options.
2016-05-01 13:29:03 +02:00
Alexandre Duret-Lutz
95d16ba009 autfilt: add --remove-unused-ap
Part of #170.

* bin/autfilt.cc: Here.
* tests/core/remprop.test: Test it.
* NEWS: Mention it.
2016-05-01 13:03:18 +02:00
Alexandre Duret-Lutz
1c2c914d7e print_hoa: output all registered APs
Also introduce twa::unregister_ap() and twa_graph::remove_unused_ap()
so that the methods where this behavior is expected can be fixed.

And fix ltsmin::kripke() which did not register APs.

Part of #170.

* spot/twaalgos/hoa.cc: Use apvars() to print all registerd APs.
Throw an exception when printing automata using unregistered APs.
* spot/ltsmin/ltsmin.cc: Call register_ap().
* spot/twa/twa.cc, spot/twa/twa.hh, spot/twa/twagraph.cc,
spot/twa/twagraph.hh (twa::unregister_ap, twa_graph::remove_unused_ap):
New methods.
* spot/tl/exclusive.cc, spot/twaalgos/postproc.cc,
spot/twaalgos/remprop.cc, spot/twaalgos/relabel.cc: Use them.
* tests/core/maskacc.test, tests/core/maskkeep.test,
tests/core/strength.test: Adjust expected results.
* NEWS: Mention those changes.
2016-05-01 11:47:53 +02:00
Alexandre Duret-Lutz
9afa98a1dd honor ap() when counting transitions
Fixing this bug alone revealed another bug: parsing never claim or LBTT
automata did not register APs.  So this fixes both bugs.

This is the first part of #170.

* spot/twa/twa.hh (register_aps_from_dict): New method.
* spot/parseaut/parseaut.yy: Call it for never claim and LBTT files.
* spot/twaalgos/stats.cc: Simplify using ap_vars().
* tests/core/ltl2tgba.test: Add a test case.
* NEWS: Mention the bugs.
2016-04-29 18:16:21 +02:00
Alexandre Duret-Lutz
1ceb0ed272 autfilt: fix simpification of exclusive AP
* bin/autfilt.cc: Here.
* tests/core/exclusive-tgba.test: Test it.
* NEWS: Mention the fix.
2016-04-29 12:08:32 +02:00
Alexandre Duret-Lutz
0b05a8f98b * tests/python/ltsmin.ipynb: Remove some debugging code. 2016-04-22 20:22:55 +02:00
Alexandre Duret-Lutz
1d739d766f python: export tgba_determinize
* python/spot/impl.i: Here.
* tests/python/automata.ipynb: Use it.
* NEWS: Mention it.
2016-04-22 20:22:55 +02:00
Etienne Renault
fcbb950c0f Update list of dependencies.
* HACKING: Here.
2016-04-22 20:22:55 +02:00
Alexandre Duret-Lutz
188cb8e4ab * tests/python/ltsmin.ipynb: Remove some debugging code. 2016-04-22 18:50:51 +02:00