Commit graph

4231 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
3f71521625 [buddy] fix handling of bdd_apply_biimp
* src/bddop.c: Fix shortcut.
2017-06-20 16:29:26 +02:00
Alexandre Duret-Lutz
2dd134b0aa doc: Jessie -> Stretch
* doc/org/install.org: Update.
2017-06-20 16:29:26 +02:00
Alexandre Duret-Lutz
20a4959ff6 stats: fix slow %s and inappropriate %S output
Fixes #269.

* spot/twaalgos/stats.cc: Use twa_statistics instead of
twa_sub_statistics when %t is not used.
* bin/common_aoutput.cc: Likewise, also fix %S to use twa_statistics
instead of num_states(), and document that %s,%t,%e all return
statistics about the reachable part of the automaton.
* tests/core/format.test: Add more tests.
* NEWS: Document the issue.
2017-06-19 17:52:41 +02:00
Alexandre Duret-Lutz
97e903b13d libtool: surrender to Debian's castrated libtool
The libtool version distributed by Debian is patched to *not* propagate
dependencies (i.e., if libA depends on libB, then linking against libA
will not automatically link against libB, it has to be explicit),
contrary to what the Libtool manual document.  So now we explicitly
link against both libA and libB in such case.

* configure.ac: Remove the workaround that does not work for
MinGW.
* doc/org/compile.org: Mention the issue.
* bin/Makefile.am, tests/Makefile.am, spot/ltsmin/Makefile.am,
doc/org/g++wrap.in: Make the dependencies explicit.
2017-06-11 23:15:20 +02:00
Etienne Renault
440380c5ca ikwiad: fix accepting run printing
* tests/core/ikwiad.cc: here.
2017-06-11 23:12:03 +02:00
Alexandre Duret-Lutz
526e19d4b6 * tests/core/ltlcross4.test: Ignore space diff in pandas' output. 2017-06-03 11:03:58 +02:00
Alexandre Duret-Lutz
526b299de8 work around change in pandas 0.20
* tests/core/ltlcross4.test: Replace describe() by agg() to work
around a backward incompatible change in pandas 0.20.
2017-06-03 10:04:14 +02:00
Alexandre Duret-Lutz
ae0e84ac9e simulation: do not depend on bdd numbers for ordering classes
Fixes #262 again.  Reported by Maximilien Colange.

* spot/twaalgos/simulation.cc: Use state numbers to order classes, not
their signatures.  The problem was that even if two simulation of the
same automaton assign the same signature, the BDD identifier used for
that signature might be different, and therefore the ordering obtained
by using BDDs as keys in a map can be different.  A side-effect of
this change is that the order of states in automata produced by
simulation-based reduction may change; many tests had to be updated.
* tests/core/ltl2tgba.test: Add a new test case based on Maximilien's
report.
* tests/core/complement.test, tests/core/det.test,
tests/core/parseaut.test, tests/core/prodor.test,
tests/python/atva16-fig2a.ipynb, tests/python/automata.ipynb,
tests/python/decompose.ipynb, tests/python/highlighting.ipynb,
tests/python/piperead.ipynb, tests/python/testingaut.ipynb,
tests/python/word.ipynb: Update test cases for new order of states.
2017-06-03 10:03:59 +02:00
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