Commit graph

4223 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
7b6cfd448c dot: fix printing of alternating automata
Related to #208.

* spot/twaalgos/dot.cc: Fix missing definitions of universal nodes,
and inclusion of universal nodes inside of SCC when none of the
destination comes back to the SCC.
* tests/python/_altscc.ipynb: Adjust and add more test cases.
* tests/core/alternating.test, tests/core/neverclaimread.test,
tests/core/readsave.test, tests/core/sccdot.test,
tests/python/decompose.ipynb: Adjust test cases.
* NEWS: Mention the bug.
2017-06-02 11:38:43 +02:00
Alexandre Duret-Lutz
f6607f1a2c bin: release all subformulas between runs
Fixes #262, reported by Maximilien Colange.

* bin/common_output.cc, bin/common_aoutput.cc, bin/common_aoutput.hh:
Clear the set of atomic propositions if --stats=%[...]x was used.
* spot/twa/bdddict.cc: Release any formula associated to a BDD when it
is unregistered, do not wait for the dictionary's destruction.  This
was the main culprit for #262.
* tests/core/ltl2tgba.test: Add test cases.
* NEWS: Mention the bug.
2017-05-18 18:25:55 +02:00
Alexandre Duret-Lutz
b9c250894b * NEWS, configure.ac: Bump version number. 2017-05-11 10:16:03 +02:00
Alexandre Duret-Lutz
52b5491b8e Release Spot 2.3.4
* NEWS, configure.ac, doc/org/setup.org: Update version to 2.3.4.
2017-05-11 10:10:48 +02:00
Alexandre Duret-Lutz
762dd4555d parseaut: misc cleanups
* spot/parseaut/parseaut.yy: Remove extra ;.
* spot/parseaut/scanaut.ll: Use nullptr instead of 0.
2017-05-10 17:24:35 +02:00
Alexandre Duret-Lutz
aa40482352 ltl2tgba: clear simplification cache between translations
The cache used in formula simplification will keep atomic propositions
defined between several translations, and may impact variable order.
Reported by Maximilien Colange.

* spot/tl/simplify.hh, spot/tl/simplify.cc,
spot/twaalgos/translate.cc, spot/twaalgos/translate.hh (clear_cache):
New method.
* bin/ltl2tgba.cc, bin/ltl2tgta.cc: Call it.
* spot/twaalgos/stats.cc: Do not keep a point to the formula after
printing statistics.
* tests/core/ltl2tgba.test: Add a test case.
* tests/core/readsave.test: Adjust one formula.
* NEWS: Mention the issue.
2017-05-10 17:03:05 +02:00
Alexandre Duret-Lutz
d3d2364ad0 org: list ltlfilt's transformation
* doc/org/ltlfilt.org: A the list of transformation option.
Suggested by Yann Thierry-Mieg.
2017-05-09 14:30:57 +02:00
Alexandre Duret-Lutz
8968bf6c4e simplify: fix related to event_univ handling
Fixes #260.  Reported by František Blahoudek.

The simplification F(f)|q = F(f|q), where q designates an event_univ
formula, was not always applied because of a couple of issue: (1) the
mospliter was ignoring event_univ unless favor_event_univ was set, (2)
when processing formulas from res_EventUniv they were not put back
into res_F or res_G to be subject to the F/G rules.

* spot/tl/simplify.cc: Improve handling of the above points.
* tests/core/reduccmp.test: Adjust and add test case.
* tests/core/ltl2tgba2.test, tests/python/atva16-fig2a.ipynb: Adjust.
2017-05-08 13:32:55 +02:00
Alexandre Duret-Lutz
7e4238149b debian: fix the changelog of buddy
* debian/rules (override_dh_installchangelogs): New rule.
2017-05-05 23:02:53 +02:00
Alexandre Duret-Lutz
04640af135 bin: remove temporary files even on errors
Fixes #259.

* bin/common_setup.cc: Register a cleanup_tmpfiles() via atexit.
* tests/core/ltldo.test: Add a test case.
* NEWS: Mention the bug.
2017-05-04 15:37:39 +02:00
Alexandre Duret-Lutz
e21499ea7c * Makefile.am (gen-ChangeLog): Generate BuDDy's ChangeLog. 2017-05-04 15:36:53 +02:00
Alexandre Duret-Lutz
4b72e2b4c5 [buddy] rename ChangeLog
We generate ChangeLog from git log now.

* ChangeLog: Rename as...
* ChangeLog.1: ... this.
* Makefile.am: Distribute the latter.
2017-05-04 15:36:40 +02:00
Alexandre Duret-Lutz
cd87be1595 fix libspot.pc and libspotltsmin.pc generation
Report from Jeroen Meijer.

* spot/Makefile.am (libspot.pc): Depends on Makefile.  Use a
temporary.  Declare in CLEANFILES instead of DISTCLEANFILES.
* spot/ltsmin/Makefile.am (libspotltsmin.pc): Likewise.
2017-05-04 15:36:40 +02:00
Alexandre Duret-Lutz
b9ca038850 [buddy] fix libbddx.pc generation
Report from Jeroen Meijer.

* src/Makefile.am (libbddx.pc): Depends on Makefile.  Use a
temporary.  Declare in CLEANFILES instead of DISTCLEANFILES.
2017-05-04 15:36:40 +02:00
Alexandre Duret-Lutz
b8065a7947 * doc/org/concepts.org: Typos in property flag names. 2017-04-26 09:08:24 +02:00
Alexandre Duret-Lutz
cbfb79e343 typos: familly -> family
* bench/ltlcounter/README, doc/org/upgrade2.org: Here.
2017-04-26 09:07:34 +02:00
Alexandre Duret-Lutz
aff3d09015 bin: remove unsupported %b stats from --help
* bin/common_aoutput.cc: Here.
* NEWS: Mention it.
2017-04-26 09:07:28 +02:00
Alexandre Duret-Lutz
6ac9128699 org: typos
* doc/org/concepts.org: Fix some typos.
2017-04-20 22:02:22 +02:00
Alexandre Duret-Lutz
f02ca87f07 sbacc: fix a serious bug
Reported by Thibaud Michaud

* spot/twaalgos/sbacc.cc: Do not label rejecting SCCs with the empty
mark, as it might be accepting.
* tests/core/sbacc.test: Add test cases.
* NEWS: Mention the bug.
2017-04-19 20:55:42 +02:00
Alexandre Duret-Lutz
ba15788a94 [buddy] fix previous patch
* src/fdd.c: C++ comments are not supported in C90.
2017-04-19 13:24:44 +02:00
Michael Weber
2fb93faa4e [buddy] Addref in fdd_intaddvarblock
* src/fdd.c (fdd_intaddvarblock): Add missing addref.

Signed-off-by: Jaco van de Pol <J.C.vandepol@ewi.utwente.nl>
Signed-off-by: Michael Weber <michaelw@cs.utwente.nl>
2017-04-19 11:22:43 +02:00
Alexandre Duret-Lutz
19602e4bd0 Bump version number to 2.3.3.dev
* NEWS, configure.ac: Here.
2017-04-11 10:46:40 +02:00
Alexandre Duret-Lutz
e39e5ac586 Spot 2.3.3
* NEWS, configure.ac, doc/org/setup.org: Bump version number.
2017-04-11 10:43:04 +02:00
Alexandre Duret-Lutz
88bc78f9e2 * spot/twaalgos/remfin.cc: Typos in comments. 2017-04-08 17:24:10 +02:00
Alexandre Duret-Lutz
c90400a1b0 * AUTHORS: Add Thomas Medioni. 2017-04-07 13:52:05 +02:00
Alexandre Duret-Lutz
08c153d3bb genltl: add support for --p-patterns
Fixes #246.

* bin/genltl.cc: Implement it.
* bin/man/genltl.x, doc/org/genltl.org, NEWS: Document it.
* tests/core/ltl2tgba2.test: Test it.
2017-04-07 11:30:31 +02:00
Alexandre Duret-Lutz
4b7a6238b4 genltl: add --hkrss-patterns
Fixes #245.

* bin/genltl.cc: Add the option.
* bin/man/genltl.x: Add reference.
* tests/core/ltl2tgba2.test: Use these patterns.
* doc/org/genltl.org, NEWS: Document the options.
2017-04-07 11:29:49 +02:00
Alexandre Duret-Lutz
14addce640 genltl: add --spec-patterns as an alias to --dac-patterns
* bin/genltl.cc: Here.
* NEWS: Mention it.
2017-04-07 11:29:33 +02:00
Alexandre Duret-Lutz
276f40602e bin: add shorthands for ltl2dpa ltl2da and ltl2ldba
* bin/common_trans.cc: Here.
* doc/org/ltlcross.org, doc/org/ltldo.org, NEWS: Adjust.
2017-04-07 11:28:39 +02:00
Maximilien Colange
6806113a14 Fix wrong URL for Debian packages.
* debian/control: Fix URL.
2017-04-07 11:16:09 +02:00
Alexandre Duret-Lutz
1daffe12f0 remfin: fix a corner case for rabin_to_buchi_maybe
when fin_alone sets where presents (i.e., not really Rabin condition),
the rabin_to_buchi_maybe() could fail to notice DBA-typeness.

* spot/twaalgos/remfin.cc: Don't set scc_ba_type to false when
fin_alone is present.
* tests/core/remfin.test: Add a test case.
2017-04-07 11:14:06 +02:00
Thomas Medioni
01ee49290f bench: fix stutter bench compiler errors.
* NEWS: mention this fix.
* bench/stutter/stutter_bench.sh, bench/stutter/user.sh: Path to spot
  binaries would include an inexistant src directory.
* bench/stutter/stutter_invariance_formulas.cc: Add override qualifier
  to satisfy -Wsuggest-override.
2017-03-31 21:45:33 +02:00
Alexandre Duret-Lutz
1ed6e518dd various typos
* bench/dtgbasat/gen.py, spot/twaalgos/complement.hh: Fix
looser->loser and lossing->losing.
* tests/sanity/style.test: Catch 'an uni[^n]'.
* spot/ta/ta.hh, spot/taalgos/tgba2ta.cc, spot/taalgos/tgba2ta.hh,
spot/twa/twagraph.cc, spot/twaalgos/complement.hh,
spot/twaalgos/sccinfo.cc: Fix various occurences of this pattern.
2017-03-31 21:44:49 +02:00
Alexandre Duret-Lutz
b910330a78 [buddy] Typos in comments
* src/kernel.c (bdd_addref): Fix typo documentation.
* src/bddop.c (bdd_appall, bdd_appallcomp): Likewise.
2017-03-31 21:22:04 +02:00
Alexandre Duret-Lutz
f5d53e3a5e python: update some incorrect or obsolete code
* tests/python/ipnbdoctest.py: Use importlib instead of imp.
* tests/python/ltlparse.py: Fix invalid escape sequence.
2017-03-31 21:22:04 +02:00
Alexandre Duret-Lutz
6623af67e6 twa_graph: fix purge_unreachable_states on alternating automata
The algorithm had two problems: it was removing only useless
destination from universal destination (instead of removing the entire
edge), and it was not properly iterating over the entire reachable
automaton.

* spot/twa/twagraph.cc: Fix it.
* spot/twa/twagraph.hh: Adjust documentation.
* tests/core/alternating.test: Add more tests.
* tests/python/twagraph.py: Adjust.
* NEWS: Mention the bug.
2017-03-29 10:34:41 +02:00
Alexandre Duret-Lutz
73bb562bf5 complement: reset the terminal property
Reported by Thomas Medioni.

* spot/twaalgos/complement.cc: Here.
* tests/core/complement.test: Add a test case.
* NEWS: Mention it.
2017-03-28 07:28:52 +02:00
Alexandre Duret-Lutz
cdf699ff23 genltl: fix %F for --r-left and --r-right
Fixes #247.

* bin/genltl.cc: Here.
* tests/core/genltl.test: Make sure %F always return a correct pattern
name..
* NEWS: Mention the bug.
2017-03-22 22:48:16 +01:00
Alexandre Duret-Lutz
1596f0ed75 org: move babel's temporary directory in builddir
Fixes #244, reported by Vincent Tourneur.

* doc/org/.dir-locals.el.in, doc/org/init.el.in: Define
org-babel-temporary-directory and create the directory.
2017-03-22 22:48:16 +01:00
Alexandre Duret-Lutz
0121d278a7 * doc/org/tut11.org: Typo in title. 2017-03-22 22:48:16 +01:00
Alexandre Duret-Lutz
bf31ff12ad parsetl: improve coverage
* spot/parsetl/parsetl.yy: Adjust one diagnostic.
* spot/parsetl/scantl.ll: Fix recovering of missing closing brace
in lenient mode.
* tests/python/ltlparse.py: Add tests.
* NEWS: Mention the lenient mode bug.
2017-03-22 22:48:16 +01:00
Alexandre Duret-Lutz
6b339a3712 Bump version to 2.3.2.dev
* NEWS, configure.ac: Here.
2017-03-15 09:21:59 +01:00
Alexandre Duret-Lutz
696eba8a29 Release Spot 2.3.2
* configure.ac, NEWS, doc/org/setup.org: Bump version to 2.3.2.
2017-03-15 09:17:10 +01:00
Alexandre Duret-Lutz
2f7d5cfd00 tl.pdf: adjust syntactic hierarchy class to match code
Fixes #243.

* doc/tl/tl.tex: Here.
2017-03-14 14:37:23 +01:00
Alexandre Duret-Lutz
880131a0c3 [buddy] add -Wno-gnu if supported
* m4/gccwarns.m4: Add -Wno-gnu to workaround a diagnostic from
clang 3.9.1 on arch Linux.  clang was complaining whtat assert()
is using a GNU extension.
2017-03-14 13:35:52 +01:00
Alexandre Duret-Lutz
b7afef3643 org: misc cosmetics
* doc/org/tut24.org: Add missing section title.
* doc/org/spot.css: Style h3 headings, and remove some useless lines.
2017-03-14 13:35:52 +01:00
Alexandre Duret-Lutz
7ee52041dd [buddy] remove useless #include<assert.h>
* src/bddio.c, src/bddop.c, src/imatrix.c, src/pairs.c: Here.
2017-03-14 13:35:52 +01:00
Alexandre Duret-Lutz
d0f92d75a1 tl: fix incorrect comment about {r} vs. cl(r)
Fixes #242.

* doc/tl/tl.tex: Remove incorrect claim that {r} does not match the
PSL semantics.
2017-03-14 13:35:52 +01:00
Alexandre Duret-Lutz
d6d987bd96 emptiness checks: replace assert-preconditions by exceptions
* spot/twaalgos/couvreurnew.cc, spot/twaalgos/gv04.cc,
spot/twaalgos/magic.cc, spot/twaalgos/se05.cc, spot/twaalgos/tau03.cc,
spot/twaalgos/tau03opt.cc: Throw if precondition on acceptance
condition is not satisfied.
* tests/python/misc-ec.py: New file.
* tests/Makefile.am: Add it.
* NEWS: Mention the change.
2017-03-10 15:41:57 +01:00
Alexandre Duret-Lutz
4c08e7ec00 python: add bindings for to_generalized_buchi()
* python/spot/impl.i: Here.
* NEWS: Mention it.
2017-03-08 18:11:44 +01:00