Commit graph

1054 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
645ecce1c9 Some cleanup of Thibaud's patches.
* AUTHORS: Add Thibaud.
* NEWS: Mention ltlgrind and ltlcross --grind.
* src/ltlvisit/mutation.hh, src/ltlvisit/mutation.cc:
Use an enum instead of #define.  Rename get_mutations()
into mutate().  Other minor cosmetic changes.
* src/bin/ltlgrind.cc: Adjust.
* src/bin/ltlcross.cc: Slight changes the the output
* doc/org/ltlcross.org, doc/org/ltlgrind.org: Minor
rewordings and fix for org-mode syntax.
* src/ltltest/ltlcrossgrind.test,
src/ltltest/ltlgrind.test: Fix copyright year.
2014-10-06 20:39:44 +02:00
Alexandre Duret-Lutz
51fe5108fe Remove support for state-based alternating automata.
This was never actually used and we have a new implementation of
alternating automata coming.

* src/saba/, src/sabaalgos/, src/sabatest/: Remove.
* src/Makefile.am, configure.ac, README: Adjust.
* NEWS: Mention it.
2014-10-06 10:35:51 +02:00
Alexandre Duret-Lutz
2c764fb3c7 Store membership to acceptance sets using bitsets, not BDDs.
This is a huge patch, that took over a month to complete.  The bit sets
are currently restricted to what 'unsigned can store', but it should be
easy to extend it to 'uint64_t' should we need it.

* NEWS: Update.
* src/tgba/acc.hh: New file.
* src/tgbatest/acc.cc, src/tgbatest/acc.test: Test it.
* src/tgba/tgbakvcomplement.cc, src/tgba/tgbakvcomplement.hh,
src/tgba/tgbasgba.cc, src/tgba/tgbasgba.hh: Delete.  The KV
complementation is too slow to be used in practice, and I somehow broke
it during the conversion to bitsets.  The tgba->sgba conversion was only
used for the KV complementation, and should be better redone on
tgba_digraph_ptr should it be needed again.
* src/bin/ltlcross.cc, src/dstarparse/dra2ba.cc,
src/dstarparse/nsa2tgba.cc, src/graphtest/tgbagraph.cc,
src/graphtest/tgbagraph.test, 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/misc/hash.hh, src/neverparse/neverclaimparse.yy, src/priv/accmap.hh,
src/ta/ta.cc, src/ta/ta.hh, src/ta/taexplicit.cc, src/ta/taexplicit.hh,
src/ta/taproduct.cc, src/ta/taproduct.hh, src/ta/tgta.cc,
src/ta/tgta.hh, src/ta/tgtaexplicit.cc, src/ta/tgtaexplicit.hh,
src/ta/tgtaproduct.cc, src/ta/tgtaproduct.hh, src/taalgos/dotty.cc,
src/taalgos/emptinessta.cc, src/taalgos/minimize.cc,
src/taalgos/tgba2ta.cc, src/tgba/Makefile.am, src/tgba/fwd.hh,
src/tgba/taatgba.cc, src/tgba/taatgba.hh, src/tgba/tgba.cc,
src/tgba/tgba.hh, src/tgba/tgbagraph.cc, src/tgba/tgbagraph.hh,
src/tgba/tgbamask.cc, src/tgba/tgbamask.hh, src/tgba/tgbaproduct.cc,
src/tgba/tgbaproduct.hh, src/tgba/tgbaproxy.cc, src/tgba/tgbaproxy.hh,
src/tgba/tgbasafracomplement.cc, src/tgba/tgbasafracomplement.hh,
src/tgbaalgos/bfssteps.cc, src/tgbaalgos/complete.cc,
src/tgbaalgos/compsusp.cc, src/tgbaalgos/degen.cc,
src/tgbaalgos/dotty.cc, src/tgbaalgos/dtbasat.cc,
src/tgbaalgos/dtgbacomp.cc, src/tgbaalgos/dtgbasat.cc,
src/tgbaalgos/dupexp.cc, src/tgbaalgos/emptiness.cc,
src/tgbaalgos/emptiness.hh, src/tgbaalgos/gtec/ce.cc,
src/tgbaalgos/gtec/gtec.cc, src/tgbaalgos/gtec/gtec.hh,
src/tgbaalgos/gtec/sccstack.cc, src/tgbaalgos/gtec/sccstack.hh,
src/tgbaalgos/gv04.cc, src/tgbaalgos/hoaf.cc,
src/tgbaalgos/isweakscc.cc, src/tgbaalgos/lbtt.cc,
src/tgbaalgos/ltl2tgba_fm.cc, src/tgbaalgos/magic.cc,
src/tgbaalgos/ndfs_result.hxx, src/tgbaalgos/neverclaim.cc,
src/tgbaalgos/postproc.cc, src/tgbaalgos/powerset.cc,
src/tgbaalgos/randomgraph.cc, src/tgbaalgos/randomgraph.hh,
src/tgbaalgos/reducerun.cc, src/tgbaalgos/replayrun.cc,
src/tgbaalgos/safety.cc, src/tgbaalgos/save.cc, src/tgbaalgos/scc.cc,
src/tgbaalgos/scc.hh, src/tgbaalgos/sccfilter.cc,
src/tgbaalgos/sccinfo.cc, src/tgbaalgos/sccinfo.hh,
src/tgbaalgos/se05.cc, src/tgbaalgos/simulation.cc,
src/tgbaalgos/simulation.hh, src/tgbaalgos/stats.cc,
src/tgbaalgos/stripacc.cc, src/tgbaalgos/tau03.cc,
src/tgbaalgos/tau03opt.cc, src/tgbaalgos/weight.cc,
src/tgbaalgos/weight.hh, src/tgbaparse/tgbaparse.yy,
src/tgbatest/Makefile.am, src/tgbatest/complementation.cc,
src/tgbatest/complementation.test, src/tgbatest/degenlskip.test,
src/tgbatest/det.test, src/tgbatest/dstar.test, src/tgbatest/emptchk.cc,
src/tgbatest/explpro2.test, src/tgbatest/explpro3.test,
src/tgbatest/explpro4.test, src/tgbatest/explprod.test,
src/tgbatest/ltl2tgba.cc, src/tgbatest/ltl2tgba.test,
src/tgbatest/maskacc.cc, src/tgbatest/maskacc.test,
src/tgbatest/neverclaimread.test, src/tgbatest/randtgba.cc,
src/tgbatest/readsave.test, src/tgbatest/sim.test,
src/tgbatest/sim2.test, src/tgbatest/spotlbtt.test,
src/tgbatest/tgbaread.test, src/tgbatest/tripprod.test,
iface/dve2/dve2.cc: Adjust or use to the new acceptance interface.
2014-10-06 10:18:57 +02:00
Alexandre Duret-Lutz
8c2efa6615 Merge branch 'master' into next
* configure.ac, NEWS: Bump version to 1.99a at the same time.
2014-09-29 21:14:49 +02:00
Alexandre Duret-Lutz
c7f98fd7f7 hoaf: rename I(i) as Inf(i).
We just changed the format specification today.

* src/tgbaalgos/hoaf.cc: Here.
* NEWS: mention it.
2014-09-06 11:19:30 +02:00
Alexandre Duret-Lutz
d401fadc65 neverparse: diagnose redefinition of state labels
Reported by Joachim Klein.

* src/neverparse/neverclaimparse.yy: Store labels and the
location of their first definition in a global map to catch
redefinitions.
* src/tgbatest/neverclaimread.test: Test it.
* NEWS: Mention it.
2014-08-31 19:56:24 +02:00
Alexandre Duret-Lutz
9a8becb8d8 ltlcross: fix missing check for complement of negative automata
* src/bin/ltlcross.cc: Fix it.
* src/tgbatest/ltl2dstar.test: Test it.
* NEWS: Mention it.
2014-08-31 19:56:24 +02:00
Alexandre Duret-Lutz
49a0997866 ltlcross: add --verbose option
* src/bin/ltlcross.cc: Implement it.
* NEWS: Mention it.
2014-08-31 19:56:24 +02:00
Alexandre Duret-Lutz
700cf88b06 Merge branch master (Spot 1.2.5) into next.
* src/bin/dstar2tgba.cc, src/bin/ltlcross.cc, src/bin/randltl.cc,
src/ltltest/reduccmp.test, src/neverparse/neverclaimparse.yy,
src/tgbatest/ltl2ta.test, src/tgbatest/ltl2tgba.cc,
src/tgbatest/ltlcross.test, src/tgbatest/neverclaimread.test,
wrap/python/ajax/ltl2tgba.html: Fix conflicts.
2014-08-22 16:45:41 +02:00
Alexandre Duret-Lutz
3152c1a6cb * NEWS, configure.ac: Bump version to 1.2.5a. 2014-08-22 00:11:00 +02:00
Alexandre Duret-Lutz
290106b0a4 Release Spot 1.2.5.
* configure.ac, doc/org/tools.org, NEWS: Bump version to 1.2.5.
2014-08-21 23:16:39 +02:00
Alexandre Duret-Lutz
408dc878e5 ltl2tgba_fm: fix translation of !{f} as done last year for {f}
* src/tgbaalgos/ltl2tgba_fm.cc: Fix.
* src/tgbatest/randpsl.test: Rewrite using ltlcross and add a testcase.
* NEWS: Mention it.
2014-08-21 23:16:39 +02:00
Alexandre Duret-Lutz
85beeec2e4 ltl2tgba.html: Add option to output LBT format.
Suggested by Joachim Klein.

* wrap/python/ajax/ltl2tgba.html: New option.
* wrap/python/ajax/protocol.txt, NEWS: Document it.
* wrap/python/ajax/spot.in: Implement it.
* wrap/python/spot.i: Export src/ltlvisit/lbt.hh.
2014-08-21 23:16:39 +02:00
Alexandre Duret-Lutz
829012fe43 ltlcross: implement a --save-bogus=FILENAME option
Suggested by Joachim Klein.

* src/bin/ltlcross.cc: Implement it.
* src/tgbatest/ltlcross3.test: Test it.
* doc/org/ltlcross.org, NEWS: Document it.
2014-08-21 23:16:39 +02:00
Alexandre Duret-Lutz
2227ad60cf randltl: do not reset the seed between formulas
Reported by Joachim Klein.

* src/bin/randltl.cc: Here.
* NEWS: Mention the fix.
2014-08-21 13:23:36 +02:00
Alexandre Duret-Lutz
44fc323e7b randltl: accept a number of atomic propositions
Suggested by Joachim Klein.

* src/bin/randltl.cc: Implement it.
* src/ltltest/rand.test: Test it.
* doc/org/randltl.org, NEWS: Document it.
2014-08-21 13:17:18 +02:00
Alexandre Duret-Lutz
310a98c15a hoaf: first implementation of the HOA Format output.
The specifications are at http://adl.github.io/hoaf/

* src/tgbaalgos/hoaf.cc, src/tgbaalgos/hoaf.hh: New files.
* src/tgbaalgos/Makefile.am: Add them.
* src/bin/dstar2tgba.cc, src/bin/ltl2tgba.cc,
src/tgbatest/ltl2tgba.cc: Add option to output HOA.
* NEWS: Mention it.
2014-08-20 23:10:01 +02:00
Alexandre Duret-Lutz
e997676c3e Support LBT formula in ltl2tgba.html.
Suggested by Joachim Klein.

* wrap/python/ajax/spot.in: Try parse_lbt() when parse() fails.
* NEWS: Mention it.
2014-08-20 23:10:01 +02:00
Alexandre Duret-Lutz
e78548ebae ltlcross: display formulas in blue instead of white
So that people using white-background terminal can still read them...
Reported by Joachim Klein.

* src/bin/ltlcross.cc: Adjust.
* NEWS: Mention it.
2014-08-20 23:10:01 +02:00
Alexandre Duret-Lutz
795c2f1720 ltl2tgba_fm: Fix incorrect simplification of promises for M
The bug was reported by Joachim Klein.

* src/tgbaalgos/ltl2tgba_fm.cc (translate_dict::register_a_variable):
Reduce P(a M b) to P(a & b), not to P(a).
* src/tgbatest/ltlcross.test: Test Joachim's formula.
* src/tgbatest/ltl2ta.test: Adjust some expected values.
* NEWS: Mention the bug.
2014-08-20 23:10:01 +02:00
Alexandre Duret-Lutz
e7dc62e3c8 * NEWS: Add more news. 2014-08-19 14:57:35 +02:00
Alexandre Duret-Lutz
e5124faa13 man: more doc about TGBA and monitors
This was prompted by an exchange of emails with Caroline Lemieux.

* src/bin/man/ltl2tgba.x: Add notes and references.
* NEWS, THANKS: Update.
2014-08-19 14:52:51 +02:00
Alexandre Duret-Lutz
1eaaf8832a * NEWS: Mention recent removals. 2014-07-31 15:47:01 +02:00
Alexandre Duret-Lutz
6c76ba408e neverparse: Fix parsing of Modella's neverclaims.
Reported by František Blahoudek.

* src/neverparse/neverclaimparse.yy: Fix.
* src/tgbatest/neverclaimread.test: Test it.
* NEWS: Mention the fix.
2014-05-29 15:48:31 +02:00
Alexandre Duret-Lutz
a4934c4f71 * NEWS: Mention recent fix. 2014-05-17 15:13:35 +02:00
Alexandre Duret-Lutz
53de8fc3a4 Merge branch 'master' into next
Conflicts:
	src/ltlvisit/simplify.cc
	src/tgbatest/Makefile.am
2014-05-15 14:30:49 +02:00
Alexandre Duret-Lutz
f431852af9 * NEWS, configure.ac: Bump version to 1.2.4a. 2014-05-15 12:13:29 +02:00
Alexandre Duret-Lutz
c11f15c76c Release Spot 1.2.4
* NEWS, configure.ac, doc/org/tools.org: Bump version.
2014-05-15 11:07:25 +02:00
Alexandre Duret-Lutz
d741d9266d simplify: remove an incorrect simplification rule
Fortunately was only enabled with the
ltl_simplifier_options::favor_event_univ option, which cannot yet be
turned on from the command-line tools.

* src/ltlvisit/simplify.cc, doc/tl/tl.tex: Remove the rule.
* src/ltltest/eventuniv.test: Adjust.
* NEWS: Mention the bug.
2014-05-13 17:31:51 +02:00
Alexandre Duret-Lutz
362862dace llt2tgba_fm: fix translation of ":" in some SERE
* src/tgbaalgos/ltl2tgba_fm.cc: Here.
* src/ltltest/reduccmp.test: Add a test case.
* NEWS: Mention it.
2014-05-13 17:09:11 +02:00
Alexandre Duret-Lutz
48471b5114 simplify: fix 3 incorrect simplification rules
* src/ltlvisit/simplify.cc: Remove two incorrect rules, and
partially disable another one.
* doc/tl/tl.tex: Reflect the change.
* src/ltltest/reduccmp.test: Likewise.
* src/ltltest/equals.cc: Add safety checks to catch such errors in the
future.
* NEWS: Mention the bug.
2014-05-13 16:59:51 +02:00
Alexandre Duret-Lutz
a5b6865c0b ltl2ta: fix a crash with --ta.
* src/taalgos/tgba2ta.cc: Do not assume the input is an sba.
* src/tgbatest/ltl2ta2.test: New file.
* src/tgbatest/Makefile.am: Add it.
* NEWS: Mention the fix.
2014-04-07 18:21:10 +02:00
Alexandre Duret-Lutz
c4307e21ae * NEWS: Mention recent changes. 2014-04-07 18:21:10 +02:00
Alexandre Duret-Lutz
bd870f9ab8 tgba: remove the global_state and global_automaton argument of succ_iter
* iface/dve2/dve2.cc, src/kripke/kripkeexplicit.cc,
src/kripke/kripkeexplicit.hh, src/ta/tgtaexplicit.cc,
src/ta/tgtaexplicit.hh, src/ta/tgtaproduct.cc, src/ta/tgtaproduct.hh,
src/tgba/taatgba.cc, src/tgba/taatgba.hh, src/tgba/tgba.hh,
src/tgba/tgbabddconcrete.cc, src/tgba/tgbabddconcrete.hh,
src/tgba/tgbaexplicit.hh, src/tgba/tgbakvcomplement.cc,
src/tgba/tgbakvcomplement.hh, src/tgba/tgbamask.cc,
src/tgba/tgbamask.hh, src/tgba/tgbaproduct.cc, src/tgba/tgbaproduct.hh,
src/tgba/tgbaproxy.cc, src/tgba/tgbaproxy.hh,
src/tgba/tgbasafracomplement.cc, src/tgba/tgbasafracomplement.hh,
src/tgba/tgbascc.cc, src/tgba/tgbascc.hh, src/tgba/tgbasgba.cc,
src/tgba/tgbasgba.hh, src/tgba/tgbatba.cc, src/tgba/tgbatba.hh,
src/tgba/tgbaunion.cc, src/tgba/tgbaunion.hh, src/tgba/wdbacomp.cc:
Here.
* NEWS: Mention it.
2014-02-17 22:53:06 +01:00
Alexandre Duret-Lutz
0fba428cd9 tgba: remove the support_variable() method.
* src/kripke/fairkripke.cc, src/kripke/fairkripke.hh,
src/ta/tgtaexplicit.cc, src/ta/tgtaexplicit.hh, src/tgba/taatgba.cc,
src/tgba/taatgba.hh, src/tgba/tgba.cc, src/tgba/tgba.hh,
src/tgba/tgbabddconcrete.cc, src/tgba/tgbabddconcrete.hh,
src/tgba/tgbaexplicit.hh, src/tgba/tgbakvcomplement.cc,
src/tgba/tgbakvcomplement.hh, src/tgba/tgbaproduct.cc,
src/tgba/tgbaproduct.hh, src/tgba/tgbaproxy.cc, src/tgba/tgbaproxy.hh,
src/tgba/tgbasafracomplement.cc, src/tgba/tgbasafracomplement.hh,
src/tgba/tgbascc.cc, src/tgba/tgbascc.hh, src/tgba/tgbasgba.cc,
src/tgba/tgbasgba.hh, src/tgba/tgbatba.cc, src/tgba/tgbatba.hh,
src/tgba/tgbaunion.cc, src/tgba/tgbaunion.hh, src/tgba/wdbacomp.cc:
Remove anything related to support_variables() and
compute_support_variables().
* NEWS: Mention it.
* src/tgbaalgos/powerset.cc: Adjust the computation of all possible
conditions.
2014-02-17 17:53:54 +01:00
Alexandre Duret-Lutz
358ea9ed87 * NEWS: Mention recent changes. 2014-02-14 14:21:44 +01:00
Alexandre Duret-Lutz
be43c1e957 * NEWS, configure.ac: Bump version to 1.2.3a. 2014-02-11 17:30:10 +01:00
Alexandre Duret-Lutz
2a7d5f5f7f Release Spot 1.2.3
* NEWS, configure.ac, doc/org/tools.org: Update version.
2014-02-11 17:20:58 +01:00
Alexandre Duret-Lutz
f567d88ff8 * NEWS: mention recent fixes. 2014-02-11 10:45:15 +01:00
Alexandre Duret-Lutz
eb778c569a sat: adjust SPOT_SATSOLVER default for glucose 3.0
* src/misc/satsolver.cc: Add the "-model" option.
* NEWS, doc/org/satmin.org, src/bin/man/spot-x.x: Mention it.
2014-02-08 21:34:35 +01:00
Alexandre Duret-Lutz
3c985a3235 sat: document the SPOT_SATLOG envvar
* doc/org/satmin.org, src/bin/man/spot-x.x: Document it.
* NEWS: Mention it.
2014-02-08 20:31:49 +01:00
Alexandre Duret-Lutz
20824b96b9 timer: also consider the time spent in child processes
* src/misc/timer.hh: Fix.
* NEWS: Mention the bug.
2014-02-08 20:31:49 +01:00
Alexandre Duret-Lutz
c2195600b8 Fix spurious failre with Pandas 0.13.
* src/tgbatest/ltlcross4.test: Work around Pandas 0.13.
* NEWS: Mention it.
2014-02-06 01:33:17 +01:00
Alexandre Duret-Lutz
38388748b0 * NEWS: Mention recent fixes. 2014-02-06 00:45:18 +01:00
Alexandre Duret-Lutz
494dbe2041 length: slight simplification
* src/ltlvisit/length.cc (length_boolone_visitor): Simplify.
* NEWS: Mention Alexandre's fix.
2014-02-03 09:49:30 +01:00
Alexandre Duret-Lutz
b6e5ce7e15 python: better support for Python 3
* wrap/python/spot.i (spot::ltl::parse_error_list,
spot::tgba_parse_error_list): Add a __bool__ method, that is used
instead of __nonzero__ in Python 3.
* wrap/python/tests/interdep.py, wrap/python/tests/parsetgba.py:
Force destruction order.
* NEWS: Update.
2014-02-02 15:45:19 +01:00
Alexandre Duret-Lutz
a6714119f9 * NEWS, configure.ac: Bump version to 1.2.2a. 2014-01-24 12:19:58 +01:00
Alexandre Duret-Lutz
35612f3626 Release Spot 1.2.2
* NEWS, configure.ac, doc/org/tools.org: Set version to 1.2.2.
2014-01-24 11:16:07 +01:00
Alexandre Duret-Lutz
ff816fbebb * NEWS: Update with recent fixes. 2014-01-15 16:42:53 +01:00
Alexandre Duret-Lutz
2febbd5929 * NEWS, configure.ac: Bump version to 1.2.1a 2013-12-11 11:38:27 +01:00