Commit graph

3329 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
17a18f2890 adjust documentation for the merge of the dstar parser
* NEWS: Mention the changes.
* doc/org/autfilt.org, doc/org/dstar2tgba.org,
doc/org/ltlcross.org, doc/org/tools.org, doc/org/tut20.org,
src/bin/man/dstar2tgba.x, src/bin/man/ltlcross.x: Adjust
documentation.
* src/bin/common_trans.cc: Use %O instead of %D, but keep %D
hidden for backward compatibility.
2015-09-09 00:49:13 +02:00
Alexandre Duret-Lutz
c59e994a2c parseaut: support multiple dstar automata
* src/parseaut/parseaut.yy, src/parseaut/scanaut.ll: All multiple
dstar automata to be chained.
* src/bin/dstar2tgba.cc: Loop over multiple automata in a file.
* src/tests/dstar.test: Test that.
2015-09-08 00:59:55 +02:00
Alexandre Duret-Lutz
209e89a94c parseaut: swallow the dstarparser
Note that the parser is still not able to reader multiple dstar
automata.

* src/dstarparse/: Delete.
* configure.ac, src/Makefile.am, README: Adjust.
* src/parseaut/parseaut.yy, src/parseaut/scanaut.ll: Merge in the
dstarparser rules.
* src/bin/common_trans.cc, src/bin/common_trans.hh,
src/bin/dstar2tgba.cc, src/bin/ltlcross.cc, src/bin/ltldo.cc,
src/tests/ikwiad.cc: Adjust usage.
* src/tests/parseaut.test: Adjust expected output.
2015-09-08 00:59:50 +02:00
Alexandre Duret-Lutz
e7ecab93ff dstarparse: preparation before merge with parse_aut
* src/dstarparse/dstarparse.yy: Rename most of the
rules, and adjust the result_ fields to better
match those in src/parseaut/parseaut.yy.
2015-09-08 00:59:41 +02:00
Alexandre Duret-Lutz
5098c91bd4 parseaut: fix typo in error message
* src/parseaut/parseaut.yy: Here.
* src/tests/parseaut.test: Adjust.
2015-09-08 00:59:41 +02:00
Alexandre Duret-Lutz
14c0577650 parseaut: keep track of the format of each parsed automaton
* src/parseaut/public.hh (parsed_aut): Add a type field.
* src/parseaut/parseaut.yy: Fill it.
* src/dstarparse/dstarparse.yy: Use this field instead of
the private enumeration.
2015-09-08 00:59:35 +02:00
Alexandre Duret-Lutz
6079b1dcdf sanity: soften the class.*{ check
* src/sanity/style.test: Allow { on the same line as "enum class".
2015-09-07 22:54:33 +02:00
Alexandre Duret-Lutz
767e0522c9 tl: fix two typo in the bibliography
* doc/tl/tl.bib (babiak.12.tacas): Typos in authors.
Reported by Jan Strejček.
2015-09-06 16:38:19 +02:00
Alexandre Duret-Lutz
3378d72a88 dtgbasat: add a colored option
This was suggested by one of the reviewers of our LPAR'15 paper.

* src/twaalgos/dtgbasat.cc, src/twaalgos/dtgbasat.hh: Implement
the colored option.
* src/tests/satmin2.test: Test it.
* doc/org/satmin.org, NEWS: Document it.
2015-09-03 18:27:02 +02:00
Alexandre Duret-Lutz
6b3de8afa0 * tools/man2html.pl: Fix copyright. 2015-08-26 23:27:42 +02:00
Alexandre Duret-Lutz
1f17b59360 debian: add licenses for lib/*
* debian/copyright: Here.
* THANKS: Add Michael, who reported the problem.
2015-08-26 18:27:15 +02:00
Alexandre Duret-Lutz
22974c7b7b * configure.ac, NEWS: Bump version to 1.99.3a. 2015-08-26 18:05:21 +02:00
Alexandre Duret-Lutz
5498f1335a Release Spot 1.99.3
* NEWS, configure.ac, doc/org/setup.org: Update version.
2015-08-26 08:14:53 +02:00
Alexandre Duret-Lutz
1fc3bf1a1a * doc/org/index.org: Avoid a "download it here" link. 2015-08-25 23:30:48 +02:00
Alexandre Duret-Lutz
05cfbaad1f * doc/org/install.org: Suggest using the stable packages with Ubuntu. 2015-08-25 23:28:31 +02:00
Alexandre Duret-Lutz
daf5a2be05 org: link to tl.pdf
* doc/org/index.org, doc/org/ioltl.org: Add links.
2015-08-25 23:23:11 +02:00
Alexandre Duret-Lutz
0dbdff59b8 * NEWS: Fix some typos. 2015-08-25 23:07:44 +02:00
Alexandre Duret-Lutz
c2f0a5f02c Fix bitvect.test.
* src/tests/bitvect.cc: Fix it, it was failing an assert() on 32bit
architectures because the subset test was done in the wrong order.
Reported by Christopher Ziegler.
* NEWS: Mention it.
2015-08-25 22:54:50 +02:00
Alexandre Duret-Lutz
0510e4dfe8 ltlcross: recover from out-of-memory during state-space product
Fixes #96, reported by Vitus Lam & Christopher Ziegler.

* src/bin/ltlcross.cc: Catch std::bad_alloc, skip those
products and the related tests.  Display a count of
those skipped tests at the end.
* NEWS: Mention it.
* src/tests/ltlcross3.test: Adjust expected error
message.
2015-08-24 07:55:46 +02:00
Alexandre Duret-Lutz
63969b13fa Fix spurious uniq.test failure.
Reported by Christopher Ziegler.

* src/tests/uniq.test: For LC_ALL=C before sort.
2015-08-23 17:38:30 +02:00
Alexandre Duret-Lutz
c8df1ae85d * doc/org/ltldo.org: Another typo. 2015-08-21 23:17:08 +02:00
Alexandre Duret-Lutz
596de181be * doc/org/ltldo.org: Improve English. 2015-08-21 22:11:10 +02:00
Alexandre Duret-Lutz
782edb9a69 * src/ltlvisit/unabbrev.cc: Missing break. 2015-08-21 17:35:46 +02:00
Alexandre Duret-Lutz
8d38587da8 * NEWS: mention the translate() typo. 2015-08-21 16:06:29 +02:00
Alexandre Duret-Lutz
308833788b unabbreviate: enable removal of R
This implies learning alternative rules for G, and W as well, since
those would use R.

Fixes #103.  Suggested by Joachim Klein.

* src/ltlvisit/unabbrev.cc, src/ltlvisit/unabbrev.hh: Implement the
new rules.
* doc/tl/tl.tex: Document the rules.
* src/tests/unabbrevwm.test: Test them.
* src/bin/ltlfilt.cc, NEWS: Mention that --unabbreviate accepts R.
2015-08-21 16:02:52 +02:00
Alexandre Duret-Lutz
0b8c418c94 * wrap/python/spot.py: Typo. 2015-08-21 11:23:11 +02:00
Alexandre Duret-Lutz
9c922252a6 * src/tests/ltl2dstar.test: Fix for recent change to ltlcross. 2015-08-21 10:51:29 +02:00
Alexandre Duret-Lutz
60bd1400c3 * NEWS: summarize recent changes. 2015-08-20 23:21:28 +02:00
Alexandre Duret-Lutz
7615a57dab dstar2tgba: rewrite using common_aoutput
Fixes #8.

* src/bin/dstar2tgba.cc: Here.
2015-08-20 23:21:28 +02:00
Alexandre Duret-Lutz
f831f729e1 homogenize dstar_parse() and parse_aut() outputs
* src/dstarparse/dstarparse.yy, src/dstarparse/dstarscan.ll
src/dstarparse/parsedecl.hh, src/dstarparse/public.hh:
Adjust to return the same return types as parse_aut.
* src/dstarparse/fmterror.cc: Delete, we can use
the one of parse_aut.
* src/dstarparse/Makefile.am: Adjust.
* src/tests/ikwiad.cc, src/bin/dstar2tgba.cc,
src/bin/ltldo.cc: Adjust usage.
* src/bin/ltlcross.cc: The the result of dstar_parse() as-is, now that
it is a TωA like those produced by parse_aut().  As a consequence,
get rid of all the code storing statistics about the input
automaton.
* src/tests/ltlcross3.test, src/tests/ltl2dstar.test: Adjust expected
CSV output.
* doc/org/ltlcross.org, src/bin/man/ltlcross.x: Adjust to not
mention that %D performs a tranformation to Büchi.
2015-08-20 23:21:20 +02:00
Alexandre Duret-Lutz
62f5b9769b remove algorithms that where only used by dstar's dra2ba conversion
Since we just removed that conversion, those can go as well.  Yay!

* src/tests/kv.test, src/twa/twamask.cc,
src/twa/twamask.hh, src/twa/twaproxy.cc,
src/twa/twaproxy.hh, src/twaalgos/scc.cc,
src/twaalgos/scc.hh: Delete.
* src/twaalgos/Makefile.am, src/twa/Makefile.am,
src/tests/Makefile.am, src/tests/ikwiad.cc: adjust.
2015-08-20 21:35:39 +02:00
Alexandre Duret-Lutz
9b5340b90a dstarparse: get rid of the deticated data structures and conversions
* src/dstarparse/dstarparse.yy: Use the twa_graph_ptr to store the
acceptance condition.
* src/dstarparse/dra2ba.cc, src/dstarparse/dstar2tgba.cc,
src/dstarparse/nra2nba.cc, src/dstarparse/nsa2tgba.cc: Delete
all these conversion routines.
* src/dstarparse/public.hh, src/dstarparse/Makefile.am: Adjust.
* src/bin/dstar2tgba.cc: Adjust to call to_generalized_buchi()
instead.
* src/bin/ltlcross.cc: Adjust to call remove_fin() instead.
* src/bin/ltldo.cc: Use the parsed automaton as-is.
* src/tests/degenid.test, src/tests/dstar.test, src/tests/ikwiad.cc:
Adjust test cases.
2015-08-20 21:34:38 +02:00
Alexandre Duret-Lutz
5f0b6dc36c remfin: deal with almost-Rabin automata
I.e., automata that could be Rabin if we add some empty Fin(x) or full
Inf(y) sets.   This way it does not matter when remove_fin() is called
after cleanup_acceptance().

* src/twaalgos/remfin.cc: Implement that.
* src/tests/remfin.test: More tests.
2015-08-20 19:53:43 +02:00
Alexandre Duret-Lutz
ef1bbfc659 remfin: make sure Rabin automata are always converted to Büchi
Because using multiple acceptance condition is pointless in this case.

* src/twaalgos/remfin.cc (ra_to_ba): Extract most of the RA->BA code
into this new function for clarity.
* src/tests/remfin.test: Adjust.
2015-08-20 13:40:10 +02:00
Alexandre Duret-Lutz
4bef219d8f remfin: implement the BA-type check
* src/twaalgos/remfin.cc: Here.
* src/tests/remfin.test: Add a single test.
* src/twa/acc.hh (mark_t::lowest): New function.
2015-08-19 18:23:31 +02:00
Alexandre Duret-Lutz
8a3a07d8a4 * doc/tl/tl.tex: Refine note about {r} vs. r in PSL. 2015-08-19 14:20:17 +02:00
Alexandre Duret-Lutz
c5541a2189 * src/twaalgos/mask.hh: Cleanup comments. 2015-08-19 11:00:01 +02:00
Alexandre Duret-Lutz
5f76f34607 * doc/tl/tl.bib: Properly quote PSL. 2015-08-19 10:59:09 +02:00
Alexandre Duret-Lutz
818b58ec70 ltl: allow \" and \\ in double-quoted atomic propositions
* src/ltlparse/ltlscan.ll: Adjust parser.
* src/ltlvisit/print.cc: Adjust printer.
* src/tests/ltlfilt.test: Add some tests.
* NEWS: Mention it.
2015-08-18 15:47:16 +02:00
Alexandre Duret-Lutz
47824bead6 tl: reorganize section 5
* doc/tl/tl.tex: Here.
2015-08-18 11:15:28 +02:00
Alexandre Duret-Lutz
ce9b2369ed more final keywords
* src/ltlvisit/mutation.cc, src/ltlvisit/relabel.cc,
src/ltlvisit/remove_x.cc: Add final keyword to final classes.
2015-08-18 09:46:13 +02:00
Alexandre Duret-Lutz
0689aa165b silence diagnostics from gcc-snapshot
(Upcoming GCC 6.)

* src/misc/intvcmp2.cc: Here.
* NEWS: Mention it.
2015-08-17 18:56:36 +02:00
Alexandre Duret-Lutz
56cbc3c813 ltlfilt: add --unabbreviate
* src/bin/ltlfilt.cc: Add option --unabbreviate.
* src/tests/ltlfilt.test: Add a test case.
* NEWS: Mention it.
2015-08-17 17:38:47 +02:00
Alexandre Duret-Lutz
d1f915c748 merge tunnabrev/lunnabrev/wmunabbrev into a single function
* src/ltlvisit/lunabbrev.cc, src/ltlvisit/lunabbrev.hh,
src/ltlvisit/tunabbrev.cc, src/ltlvisit/tunabbrev.hh,
src/ltlvisit/wmunabbrev.cc, src/ltlvisit/wmunabbrev.hh: Delete.
* src/ltlvisit/unabbrev.cc, src/ltlvisit/unabbrev.hh: New files.
* src/ltlvisit/Makefile.am: Adjust.
* src/ltlvisit/print.cc, src/tests/equalsf.cc, src/tests/Makefile.am,
src/twaalgos/ltl2taa.cc, wrap/python/spot_impl.i, src/bin/ltlfilt.cc:
Adjust callers.
* src/ltlvisit/contain.cc, src/tests/syntimpl.cc: Remove useless
include.
* wrap/python/tests/formulas.ipynb: New test cases.
* doc/tl/tl.tex: Group all rules in a single section.
* NEWS: Mention it.
2015-08-17 17:38:47 +02:00
Alexandre Duret-Lutz
314a016547 * doc/org/spot.css: improve style for printing. 2015-08-17 11:06:02 +02:00
Alexandre Duret-Lutz
59202bd5de do not rewrite <-> and -> for Spin LTL output
Fixes #39, reported by Joachim Klein.

* src/ltlvisit/lunabbrev.hh, src/ltlvisit/lunabbrev.cc: Take an option
to specify which of xor/equiv/implies should be rewritten.
* src/ltlvisit/print.cc (print_spin): Rewrite only xor.
* src/tests/ltlfilt.test: Add a test case.
* NEWS: Mention this.
2015-08-14 20:33:56 +02:00
Alexandre Duret-Lutz
ac6b042e2c remove a GCC 4.6 workaround
* src/twa/twagraph.hh (namer): Use a template alias instead
of a trait.
* src/twa/twagraph.cc, src/parseaut/parseaut.yy,
src/twaalgos/ltl2tgba_fm.cc: Adjust.
2015-08-14 15:34:28 +02:00
Alexandre Duret-Lutz
304f2496ea bdddict: remove register_clone_acc
* src/twa/bdddict.cc, src/twa/bdddict.hh: Here.
2015-08-14 15:16:26 +02:00
Alexandre Duret-Lutz
c50d5a82ac fix a spurious assertion
* src/twaalgos/totgba.cc: Here.
* NEWS: Mention it.
2015-08-14 14:13:57 +02:00
Alexandre Duret-Lutz
0143f0d435 sccsimpl: Remove Fin sets between SCCs
We do not remove them in rejecting SCCs (as it might make the SCC
accepting), but we can remove them between SCCs.

Fixes #101.

* src/twaalgos/sccfilter.cc: Here.
* src/tests/sccsimpl.test: Add test case.
* NEWS: Mention this.
2015-08-14 11:42:28 +02:00