1. 26 Apr, 2019 2 commits
    • Alexandre Duret-Lutz's avatar
      formula: b* is siSERE · 4d16c076
      Alexandre Duret-Lutz authored
      Since b[+] and [*0] are siSERE, b* is siSERE as well.
      Suggested by Victor Khomenko.
      
      * spot/tl/formula.cc: Implement that for Star and also
      in the concatenation rule.
      * tests/core/kind.test, tests/core/ltlfilt.test: Adjust.
      4d16c076
    • Alexandre Duret-Lutz's avatar
      formula: fix syntactic-SI detection for ; operator · 38f0cfd4
      Alexandre Duret-Lutz authored
      Reported by Victor Khomenko.
      
      * spot/tl/formula.cc: Rewrite the siPSL detection for ";".
      * tests/core/ltlfilt.test: Add more tests.
      * tests/core/kind.test: Adjust.
      * NEWS: Mention the bug.
      38f0cfd4
  2. 06 Jul, 2018 1 commit
    • Alexandre Duret-Lutz's avatar
      tl: add support for X[n], F[n:m] and G[n:m] · e7aa334a
      Alexandre Duret-Lutz authored
      * NEWS, doc/tl/tl.tex, doc/tl/tl.bib: Document these new operators.
      * spot/parsetl/parsetl.yy, spot/parsetl/scantl.ll: Parse those.
      * spot/tl/formula.cc, spot/tl/formula.hh: Add constructors.
      * spot/gen/formulas.cc: Use it.
      * tests/core/sugar.test: New file.
      * tests/Makefile.am: Add it.
      e7aa334a
  3. 28 Nov, 2017 1 commit
  4. 17 Nov, 2017 1 commit
  5. 29 Sep, 2017 1 commit
  6. 26 Sep, 2017 1 commit
  7. 02 Aug, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      formula: hide throw statements from inline methods · ab42075d
      Alexandre Duret-Lutz authored
      * spot/tl/formula.hh: Move all throw statements behind
      some [[noreturn]] report...() methods...
      * spot/tl/formula.cc: ... defined here.  This makes the methods
      shorter and helps their inlining.  Incidentally, this also removes the
      uninitialized read that weirdly occurs when _GLIBCXX_DEBUG is on, as
      observed with #184, but I do not know why.
      ab42075d
  8. 23 Nov, 2016 1 commit
    • Etienne Renault's avatar
      Prefer emplace_back to push_back · 43ec36cd
      Etienne Renault authored
      * spot/graph/ngraph.hh, spot/ltsmin/ltsmin.cc,
      spot/misc/bitvect.hh, spot/misc/intvcomp.cc,
      spot/misc/satsolver.cc, spot/priv/weight.cc,
      spot/ta/taexplicit.cc, spot/taalgos/minimize.cc,
      spot/taalgos/reachiter.cc, spot/tl/exclusive.cc,
      spot/tl/formula.cc, spot/tl/formula.hh,
      spot/tl/mark.cc, spot/tl/mutation.cc,
      spot/tl/relabel.cc, spot/tl/remove_x.cc,
      spot/tl/simplify.cc, spot/twa/acc.cc,
      spot/twa/acc.hh, spot/twa/formula2bdd.cc,
      spot/twa/taatgba.cc, spot/twa/taatgba.hh,
      spot/twa/twa.hh, spot/twa/twagraph.cc,
      spot/twaalgos/bfssteps.cc, spot/twaalgos/canonicalize.cc,
      spot/twaalgos/compsusp.cc, spot/twaalgos/copy.cc,
      spot/twaalgos/cycles.cc, spot/twaalgos/degen.cc,
      spot/twaalgos/determinize.cc, spot/twaalgos/dtwasat.cc,
      spot/twaalgos/emptiness.cc, spot/twaalgos/gv04.cc,
      spot/twaalgos/hoa.cc, spot/twaalgos/ltl2taa.cc,
      spot/twaalgos/ltl2tgba_fm.cc, spot/twaalgos/magic.cc,
      spot/twaalgos/mask.hh, spot/twaalgos/minimize.cc,
      spot/twaalgos/powerset.cc, spot/twaalgos/product.cc,
      spot/twaalgos/randomgraph.cc, spot/twaalgos/reachiter.cc,
      spot/twaalgos/relabel.cc, spot/twaalgos/remfin.cc,
      spot/twaalgos/sccfilter.cc, spot/twaalgos/se05.cc,
      spot/twaalgos/simulation.cc, spot/twaalgos/stutter.cc,
      spot/twaalgos/tau03opt.cc, spot/twaalgos/totgba.cc,
      spot/twaalgos/word.cc, tests/core/bitvect.cc: here.
      43ec36cd
  9. 29 Oct, 2016 1 commit
  10. 22 Sep, 2016 1 commit
  11. 07 Aug, 2016 1 commit
  12. 10 Mar, 2016 1 commit
    • Laurent XU's avatar
      sanity: Replace tabulars by spaces in *.cc *.hh *.hxx · f7e7b4f1
      Laurent XU authored
      * bin/autfilt.cc, bin/common_aoutput.cc, bin/common_aoutput.hh,
      bin/common_finput.cc, bin/common_finput.hh, bin/common_hoaread.cc,
      bin/common_output.cc, bin/common_output.hh, bin/common_post.cc,
      bin/common_post.hh, bin/common_r.hh, bin/common_range.cc,
      bin/common_range.hh, bin/common_setup.cc, bin/common_trans.cc,
      bin/common_trans.hh, bin/dstar2tgba.cc, bin/genltl.cc,
      bin/ltl2tgba.cc, bin/ltl2tgta.cc, bin/ltlcross.cc, bin/ltldo.cc,
      bin/ltlfilt.cc, bin/ltlgrind.cc, bin/randaut.cc, bin/randltl.cc,
      bin/spot-x.cc, spot/graph/graph.hh, spot/graph/ngraph.hh,
      spot/kripke/kripkegraph.hh, spot/ltsmin/ltsmin.cc,
      spot/ltsmin/ltsmin.hh, spot/misc/bareword.cc, spot/misc/bitvect.cc,
      spot/misc/bitvect.hh, spot/misc/common.hh, spot/misc/escape.cc,
      spot/misc/fixpool.hh, spot/misc/formater.cc, spot/misc/hash.hh,
      spot/misc/intvcmp2.cc, spot/misc/intvcmp2.hh, spot/misc/intvcomp.cc,
      spot/misc/intvcomp.hh, spot/misc/location.hh, spot/misc/minato.cc,
      spot/misc/minato.hh, spot/misc/mspool.hh, spot/misc/optionmap.cc,
      spot/misc/optionmap.hh, spot/misc/random.cc, spot/misc/random.hh,
      spot/misc/satsolver.cc, spot/misc/satsolver.hh, spot/misc/timer.cc,
      spot/misc/timer.hh, spot/misc/tmpfile.cc, spot/misc/trival.hh,
      spot/parseaut/fmterror.cc, spot/parseaut/parsedecl.hh,
      spot/parseaut/public.hh, spot/parsetl/fmterror.cc,
      spot/parsetl/parsedecl.hh, spot/priv/accmap.hh, spot/priv/bddalloc.cc,
      spot/priv/freelist.cc, spot/priv/trim.cc, spot/priv/weight.cc,
      spot/priv/weight.hh, spot/ta/taexplicit.cc, spot/ta/taexplicit.hh,
      spot/ta/taproduct.cc, spot/ta/taproduct.hh, spot/ta/tgtaexplicit.cc,
      spot/ta/tgtaexplicit.hh, spot/ta/tgtaproduct.cc,
      spot/ta/tgtaproduct.hh, spot/taalgos/dot.cc, spot/taalgos/dot.hh,
      spot/taalgos/emptinessta.cc, spot/taalgos/emptinessta.hh,
      spot/taalgos/minimize.cc, spot/taalgos/tgba2ta.cc,
      spot/taalgos/tgba2ta.hh, spot/tl/apcollect.cc, spot/tl/contain.cc,
      spot/tl/contain.hh, spot/tl/dot.cc, spot/tl/exclusive.cc,
      spot/tl/exclusive.hh, spot/tl/formula.cc, spot/tl/formula.hh,
      spot/tl/length.cc, spot/tl/mark.cc, spot/tl/mutation.cc,
      spot/tl/mutation.hh, spot/tl/parse.hh, spot/tl/print.cc,
      spot/tl/print.hh, spot/tl/randomltl.cc, spot/tl/randomltl.hh,
      spot/tl/relabel.cc, spot/tl/relabel.hh, spot/tl/remove_x.cc,
      spot/tl/simplify.cc, spot/tl/simplify.hh, spot/tl/snf.cc,
      spot/tl/snf.hh, spot/tl/unabbrev.cc, spot/tl/unabbrev.hh,
      spot/twa/acc.cc, spot/twa/acc.hh, spot/twa/bdddict.cc,
      spot/twa/bdddict.hh, spot/twa/bddprint.cc, spot/twa/formula2bdd.cc,
      spot/twa/formula2bdd.hh, spot/twa/taatgba.cc, spot/twa/taatgba.hh,
      spot/twa/twa.cc, spot/twa/twa.hh, spot/twa/twagraph.cc,
      spot/twa/twagraph.hh, spot/twa/twaproduct.cc, spot/twa/twaproduct.hh,
      spot/twaalgos/are_isomorphic.cc, spot/twaalgos/are_isomorphic.hh,
      spot/twaalgos/bfssteps.cc, spot/twaalgos/bfssteps.hh,
      spot/twaalgos/cleanacc.cc, spot/twaalgos/complete.cc,
      spot/twaalgos/compsusp.cc, spot/twaalgos/compsusp.hh,
      spot/twaalgos/copy.cc, spot/twaalgos/cycles.cc,
      spot/twaalgos/cycles.hh, spot/twaalgos/degen.cc,
      spot/twaalgos/degen.hh, spot/twaalgos/determinize.cc,
      spot/twaalgos/determinize.hh, spot/twaalgos/dot.cc,
      spot/twaalgos/dot.hh, spot/twaalgos/dtbasat.cc,
      spot/twaalgos/dtbasat.hh, spot/twaalgos/dtwasat.cc,
      spot/twaalgos/dtwasat.hh, spot/twaalgos/emptiness.cc,
      spot/twaalgos/emptiness.hh, spot/twaalgos/emptiness_stats.hh,
      spot/twaalgos/gtec/ce.cc, spot/twaalgos/gtec/ce.hh,
      spot/twaalgos/gtec/gtec.cc, spot/twaalgos/gtec/gtec.hh,
      spot/twaalgos/gtec/sccstack.cc, spot/twaalgos/gtec/status.cc,
      spot/twaalgos/gv04.cc, spot/twaalgos/hoa.cc, spot/twaalgos/hoa.hh,
      spot/twaalgos/isdet.cc, spot/twaalgos/isunamb.cc,
      spot/twaalgos/isweakscc.cc, spot/twaalgos/lbtt.cc,
      spot/twaalgos/lbtt.hh, spot/twaalgos/ltl2taa.cc,
      spot/twaalgos/ltl2taa.hh, spot/twaalgos/ltl2tgba_fm.cc,
      spot/twaalgos/ltl2tgba_fm.hh, spot/twaalgos/magic.cc,
      spot/twaalgos/magic.hh, spot/twaalgos/mask.cc, spot/twaalgos/mask.hh,
      spot/twaalgos/minimize.cc, spot/twaalgos/minimize.hh,
      spot/twaalgos/ndfs_result.hxx, spot/twaalgos/neverclaim.cc,
      spot/twaalgos/neverclaim.hh, spot/twaalgos/postproc.cc,
      spot/twaalgos/postproc.hh, spot/twaalgos/powerset.cc,
      spot/twaalgos/powerset.hh, spot/twaalgos/product.cc,
      spot/twaalgos/product.hh, spot/twaalgos/projrun.cc,
      spot/twaalgos/projrun.hh, spot/twaalgos/randomgraph.cc,
      spot/twaalgos/randomgraph.hh, spot/twaalgos/randomize.cc,
      spot/twaalgos/randomize.hh, spot/twaalgos/reachiter.cc,
      spot/twaalgos/reachiter.hh, spot/twaalgos/relabel.cc,
      spot/twaalgos/relabel.hh, spot/twaalgos/remfin.cc,
      spot/twaalgos/remprop.cc, spot/twaalgos/sbacc.cc,
      spot/twaalgos/sccfilter.cc, spot/twaalgos/sccfilter.hh,
      spot/twaalgos/sccinfo.cc, spot/twaalgos/sccinfo.hh,
      spot/twaalgos/se05.cc, spot/twaalgos/se05.hh,
      spot/twaalgos/sepsets.cc, spot/twaalgos/simulation.cc,
      spot/twaalgos/simulation.hh, spot/twaalgos/stats.cc,
      spot/twaalgos/stats.hh, spot/twaalgos/strength.cc,
      spot/twaalgos/strength.hh, spot/twaalgos/stripacc.cc,
      spot/twaalgos/stutter.cc, spot/twaalgos/stutter.hh,
      spot/twaalgos/tau03.cc, spot/twaalgos/tau03opt.cc,
      spot/twaalgos/tau03opt.hh, spot/twaalgos/totgba.cc,
      spot/twaalgos/translate.cc, spot/twaalgos/word.cc, tests/core/acc.cc,
      tests/core/bitvect.cc, tests/core/checkpsl.cc, tests/core/checkta.cc,
      tests/core/consterm.cc, tests/core/emptchk.cc, tests/core/equalsf.cc,
      tests/core/graph.cc, tests/core/ikwiad.cc, tests/core/intvcmp2.cc,
      tests/core/intvcomp.cc, tests/core/kind.cc, tests/core/kripkecat.cc,
      tests/core/ltlrel.cc, tests/core/ngraph.cc, tests/core/randtgba.cc,
      tests/core/readltl.cc, tests/core/reduc.cc, tests/core/safra.cc,
      tests/core/syntimpl.cc, tests/ltsmin/modelcheck.cc: Replace tabulars by
      8 spaces.
      * tests/sanity/style.test: Add checks for no tabulars in *.cc *.hh *.hxx
      f7e7b4f1
  13. 04 Dec, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      rename src/ as spot/ and use include <spot/...> · f120dd32
      Alexandre Duret-Lutz authored
      * NEWS: Mention the change.
      * src/: Rename as ...
      * spot/: ... this, adjust all headers to include <spot/...> instead of
      "...", and adjust all Makefile.am to search headers from the top-level
      directory.
      * HACKING: Add conventions about #include.
      * spot/sanity/style.test: Add a few more grep to catch cases
      that do not follow these conventions.
      * .gitignore, Makefile.am, README, bench/stutter/Makefile.am,
      bench/stutter/stutter_invariance_formulas.cc,
      bench/stutter/stutter_invariance_randomgraph.cc, configure.ac,
      debian/rules, doc/Doxyfile.in, doc/Makefile.am,
      doc/org/.dir-locals.el.in, doc/org/g++wrap.in, doc/org/init.el.in,
      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, iface/ltsmin/Makefile.am,
      iface/ltsmin/kripke.test, iface/ltsmin/ltsmin.cc,
      iface/ltsmin/ltsmin.hh, iface/ltsmin/modelcheck.cc,
      wrap/python/Makefile.am, wrap/python/ajax/spotcgi.in,
      wrap/python/spot_impl.i, wrap/python/tests/ltl2tgba.py,
      wrap/python/tests/randgen.py, wrap/python/tests/run.in: Adjust.
      f120dd32
  14. 28 Sep, 2015 4 commits
    • Alexandre Duret-Lutz's avatar
      doc: more examples of the formula interface · c67540db
      Alexandre Duret-Lutz authored
      * src/tl/formula.hh, src/tl/formula.cc: Add an operator<< to print
      formulas.
      * doc/org/tut01.org, doc/org/tut02.org: Adjust.
      * doc/org/tut03.org: New file.
      * doc/org/tut.org, doc/Makefile.am: Add it.
      c67540db
    • Alexandre Duret-Lutz's avatar
      kill the ltl namespace · cb392101
      Alexandre Duret-Lutz authored
      * NEWS: Mention it.
      * bench/stutter/stutter_invariance_formulas.cc,
      bench/stutter/stutter_invariance_randomgraph.cc, doc/mainpage.dox,
      doc/org/tut01.org, doc/org/tut02.org, doc/org/tut10.org, doc/tl/tl.tex,
      iface/ltsmin/ltsmin.cc, iface/ltsmin/ltsmin.hh,
      iface/ltsmin/modelcheck.cc, src/bin/autfilt.cc,
      src/bin/common_aoutput.cc, src/bin/common_aoutput.hh,
      src/bin/common_finput.cc, src/bin/common_finput.hh,
      src/bin/common_output.cc, src/bin/common_output.hh, src/bin/common_r.hh,
      src/bin/common_trans.cc, src/bin/common_trans.hh, src/bin/dstar2tgba.cc,
      src/bin/genltl.cc, src/bin/ltl2tgba.cc, src/bin/ltl2tgta.cc,
      src/bin/ltlcross.cc, src/bin/ltldo.cc, src/bin/ltlfilt.cc,
      src/bin/ltlgrind.cc, src/bin/randaut.cc, src/bin/randltl.cc,
      src/kripke/kripkeexplicit.cc, src/kripke/kripkeexplicit.hh,
      src/kripkeparse/kripkeparse.yy, src/kripkeparse/public.hh,
      src/ltlparse/fmterror.cc, src/ltlparse/ltlparse.yy,
      src/ltlparse/ltlscan.ll, src/ltlparse/parsedecl.hh,
      src/ltlparse/public.hh, src/parseaut/parseaut.yy,
      src/parseaut/public.hh, src/tests/checkpsl.cc, src/tests/checkta.cc,
      src/tests/complementation.cc, src/tests/consterm.cc,
      src/tests/emptchk.cc, src/tests/equalsf.cc, src/tests/ikwiad.cc,
      src/tests/kind.cc, src/tests/length.cc, src/tests/ltlprod.cc,
      src/tests/ltlrel.cc, src/tests/parse.test,
      src/tests/parse_print_test.cc, src/tests/randtgba.cc,
      src/tests/readltl.cc, src/tests/reduc.cc, src/tests/syntimpl.cc,
      src/tests/taatgba.cc, src/tests/tostring.cc, src/tests/tostring.test,
      src/tl/apcollect.cc, src/tl/apcollect.hh, src/tl/contain.cc,
      src/tl/contain.hh, src/tl/declenv.cc, src/tl/declenv.hh,
      src/tl/defaultenv.cc, src/tl/defaultenv.hh, src/tl/dot.cc,
      src/tl/dot.hh, src/tl/environment.hh, src/tl/exclusive.cc,
      src/tl/exclusive.hh, src/tl/formula.cc, src/tl/formula.hh,
      src/tl/length.cc, src/tl/length.hh, src/tl/mark.cc, src/tl/mark.hh,
      src/tl/mutation.cc, src/tl/mutation.hh, src/tl/nenoform.cc,
      src/tl/nenoform.hh, src/tl/print.cc, src/tl/print.hh,
      src/tl/randomltl.cc, src/tl/randomltl.hh, src/tl/relabel.cc,
      src/tl/relabel.hh, src/tl/remove_x.cc, src/tl/remove_x.hh,
      src/tl/simpfg.cc, src/tl/simpfg.hh, src/tl/simplify.cc,
      src/tl/simplify.hh, src/tl/snf.cc, src/tl/snf.hh, src/tl/unabbrev.cc,
      src/tl/unabbrev.hh, src/twa/bdddict.cc, src/twa/bdddict.hh,
      src/twa/bddprint.cc, src/twa/formula2bdd.cc, src/twa/formula2bdd.hh,
      src/twa/taatgba.cc, src/twa/taatgba.hh, src/twa/twa.hh,
      src/twa/twagraph.cc, src/twa/twagraph.hh, src/twaalgos/compsusp.cc,
      src/twaalgos/compsusp.hh, src/twaalgos/ltl2taa.cc,
      src/twaalgos/ltl2taa.hh, src/twaalgos/ltl2tgba_fm.cc,
      src/twaalgos/ltl2tgba_fm.hh, src/twaalgos/minimize.cc,
      src/twaalgos/minimize.hh, src/twaalgos/neverclaim.cc,
      src/twaalgos/postproc.cc, src/twaalgos/postproc.hh,
      src/twaalgos/powerset.cc, src/twaalgos/powerset.hh,
      src/twaalgos/randomgraph.cc, src/twaalgos/randomgraph.hh,
      src/twaalgos/relabel.cc, src/twaalgos/relabel.hh,
      src/twaalgos/remprop.cc, src/twaalgos/remprop.hh, src/twaalgos/stats.cc,
      src/twaalgos/stats.hh, src/twaalgos/stutter.cc, src/twaalgos/stutter.hh,
      src/twaalgos/translate.cc, src/twaalgos/translate.hh,
      wrap/python/spot_impl.i: Remove the ltl namespace.
      cb392101
    • Alexandre Duret-Lutz's avatar
      merge ltlvisit/ ltlast/ ltlenv/ into a single tl/ directory · 6ded5e75
      Alexandre Duret-Lutz authored
      The ltl prefix does not make a lot of sens anymore (since we
      support psl as well).  ltlast/ and ltlenv/ were almost empty.
      And ltlvisit/ did not contain any visitor anymore.
      
      * src/ltlvisit/, src/ltlast/, src/ltlenv/: Merge into...
      * src/tl/: ...this.
      * NEWS: Mention the change.
      * README, bench/stutter/stutter_invariance_formulas.cc,
      bench/stutter/stutter_invariance_randomgraph.cc, configure.ac,
      doc/org/tut01.org, doc/org/tut02.org, doc/org/tut10.org, doc/tl/tl.tex,
      iface/ltsmin/ltsmin.hh, iface/ltsmin/modelcheck.cc, src/Makefile.am,
      src/bin/autfilt.cc, src/bin/common_output.cc, src/bin/common_output.hh,
      src/bin/common_r.hh, src/bin/common_trans.cc, src/bin/genltl.cc,
      src/bin/ltl2tgba.cc, src/bin/ltl2tgta.cc, src/bin/ltlcross.cc,
      src/bin/ltldo.cc, src/bin/ltlfilt.cc, src/bin/ltlgrind.cc,
      src/bin/randltl.cc, src/kripke/kripkeexplicit.hh,
      src/kripkeparse/public.hh, src/parseaut/public.hh, src/priv/accmap.hh,
      src/ta/taexplicit.hh, src/ta/tgtaexplicit.hh, src/tests/equalsf.cc,
      src/tests/ikwiad.cc, src/tests/length.cc, src/tests/ltlrel.cc,
      src/tests/randtgba.cc, src/tests/readltl.cc, src/tests/reduc.cc,
      src/tests/syntimpl.cc, src/tests/taatgba.cc, src/tests/tostring.cc,
      src/tests/twagraph.cc, src/twa/acc.hh, src/twa/bdddict.cc,
      src/twa/bdddict.hh, src/twa/bddprint.cc, src/twa/taatgba.cc,
      src/twa/taatgba.hh, src/twa/twa.hh, src/twa/twagraph.cc,
      src/twa/twagraph.hh, src/twa/twasafracomplement.cc,
      src/twaalgos/compsusp.cc, src/twaalgos/compsusp.hh,
      src/twaalgos/dtgbasat.cc, src/twaalgos/hoa.cc,
      src/twaalgos/isweakscc.cc, src/twaalgos/lbtt.cc,
      src/twaalgos/ltl2taa.cc, src/twaalgos/ltl2taa.hh,
      src/twaalgos/ltl2tgba_fm.cc, src/twaalgos/ltl2tgba_fm.hh,
      src/twaalgos/minimize.hh, src/twaalgos/neverclaim.cc,
      src/twaalgos/randomgraph.hh, src/twaalgos/relabel.hh,
      src/twaalgos/remprop.hh, src/twaalgos/stats.cc, src/twaalgos/stutter.cc,
      src/twaalgos/translate.hh, wrap/python/spot_impl.i,
      src/ltlparse/ltlparse.yy, src/ltlparse/public.hh: Adjust.
      6ded5e75
    • Alexandre Duret-Lutz's avatar
      formula: rename the constants for consistency · 8b4ec5de
      Alexandre Duret-Lutz authored
      False/True are problematic in Python, and I don't like that the
      enum is op::False but the constructor formula::ff().  So let's
      just use ff and tt everywhere, and also eword instead of EmptyWord.
      
      * src/ltlast/formula.hh (False, True, EmptyWord, AP, is_false, is_true):
      Rename to...
      (ff, tt, eword, ap, is_ff, is_tt): ... these.
      * iface/ltsmin/ltsmin.cc, src/ltlast/formula.cc,
      src/ltlvisit/apcollect.cc, src/ltlvisit/dot.cc, src/ltlvisit/mark.cc,
      src/ltlvisit/mutation.cc, src/ltlvisit/print.cc,
      src/ltlvisit/relabel.cc, src/ltlvisit/simpfg.cc,
      src/ltlvisit/simplify.cc, src/ltlvisit/snf.cc, src/ltlvisit/unabbrev.cc,
      src/twa/acc.cc, src/twa/acc.hh, src/twa/formula2bdd.cc,
      src/twaalgos/gtec/gtec.cc, src/twaalgos/hoa.cc, src/twaalgos/ltl2taa.cc,
      src/twaalgos/ltl2tgba_fm.cc, src/twaalgos/neverclaim.cc,
      src/twaalgos/product.cc, src/twaalgos/remfin.cc, src/twaalgos/safety.cc,
      src/tests/parseerr.test, src/tests/utf8.test, wrap/python/spot.py:
      Adjust.
      8b4ec5de
  15. 26 Sep, 2015 2 commits
    • Alexandre Duret-Lutz's avatar
      nullptr cleanup for -Wzero-as-null-pointer-constant · 1729a79a
      Alexandre Duret-Lutz authored
      Fixes #106.
      
      * m4/gccwarn.m4: Use -Wzero-as-null-pointer-constant if supported.
      * src/bin/autfilt.cc, src/bin/common_aoutput.cc,
      src/bin/common_finput.cc, src/bin/common_finput.hh,
      src/bin/common_output.cc, src/bin/common_output.hh,
      src/bin/common_post.cc, src/bin/common_r.hh, src/bin/common_range.hh,
      src/bin/common_setup.cc, src/bin/common_trans.cc, src/bin/dstar2tgba.cc,
      src/bin/genltl.cc, src/bin/ltl2tgba.cc, src/bin/ltl2tgta.cc,
      src/bin/ltlcross.cc, src/bin/ltldo.cc, src/bin/ltlfilt.cc,
      src/bin/ltlgrind.cc, src/bin/randaut.cc, src/bin/randltl.cc,
      src/bin/spot-x.cc, src/kripke/kripkeexplicit.cc, src/ltlast/formula.cc,
      src/ltlvisit/randomltl.cc, src/ltlvisit/randomltl.hh,
      src/ltlvisit/relabel.cc, src/ltlvisit/relabel.hh,
      src/ltlvisit/simplify.cc, src/ltlvisit/snf.hh, src/misc/fixpool.hh,
      src/misc/mspool.hh, src/misc/hash.hh, src/misc/optionmap.cc,
      src/misc/satsolver.cc, src/misc/tmpfile.cc, src/misc/tmpfile.hh,
      src/priv/bddalloc.cc, src/ta/ta.hh, src/ta/taexplicit.cc,
      src/ta/taexplicit.hh, src/ta/taproduct.cc, src/ta/tgtaexplicit.hh,
      src/ta/tgtaproduct.cc, src/taalgos/minimize.cc,
      src/taalgos/reachiter.cc, src/taalgos/tgba2ta.cc,
      src/tests/complementation.cc, src/tests/ikwiad.cc,
      src/tests/randtgba.cc, src/tests/reduc.cc, src/twa/bdddict.cc,
      src/twa/bddprint.cc, src/twa/taatgba.cc, src/twa/twa.cc,
      src/twa/twagraph.hh, src/twa/twaproduct.cc,
      src/twa/twasafracomplement.cc, src/twaalgos/bfssteps.cc,
      src/twaalgos/compsusp.cc, src/twaalgos/dtgbasat.cc,
      src/twaalgos/emptiness.cc, src/twaalgos/gtec/ce.cc,
      src/twaalgos/gv04.cc, src/twaalgos/ltl2taa.cc,
      src/twaalgos/ltl2tgba_fm.cc, src/twaalgos/ltl2tgba_fm.hh,
      src/twaalgos/magic.cc, src/twaalgos/minimize.cc,
      src/twaalgos/ndfs_result.hxx, src/twaalgos/postproc.cc,
      src/twaalgos/postproc.hh, src/twaalgos/reachiter.cc,
      src/twaalgos/reducerun.cc, src/twaalgos/safety.hh,
      src/twaalgos/sccfilter.hh, src/twaalgos/se05.cc,
      src/twaalgos/simulation.cc, src/twaalgos/tau03.cc,
      src/twaalgos/tau03opt.cc, src/twaalgos/translate.cc,
      src/twaalgos/translate.hh, utf8/utf8/core.h,
      bench/stutter/stutter_invariance_formulas.cc, iface/ltsmin/ltsmin.cc,
      iface/ltsmin/modelcheck.cc: Use nullptr to fix the warning.
      1729a79a
    • Alexandre Duret-Lutz's avatar
      revamp the formula hierarchy (montro-patch) · b77f7e24
      Alexandre Duret-Lutz authored
      Flatten the formula ltl::formula hiearchy into a single ltl::vnode that
      has an enumerator to distinguish the types of node, and a common
      interface to access children, update reference counts, etc.  The
      ltl::formula class is now a thin wrapper around an ltl::vnode pointer to
      keep track of reference counts automatically.  Visitor are not used
      anymore; we now have map() and traversor() methods that are more
      concise.
      
      This basically fixes #43, but should be followed by some fine tuning
      that should now be localized to the formula.hh and formula.cc files.
      
      Some statistics about this patch.  I started working on it on Sep 9, had
      a first compiling version two weeks later on Sep 22, and it then took 5
      days to fixes the ~70 distincts bugs that were introduced during the
      conversion.  About 13200 lines were modified, and one third of those
      were removed.
      
      * src/ltlast/formula.cc, src/ltlast/formula.hh: Complete rewrite,
      including what was in separate nearby files.
      * src/ltlast/allnodes.hh, src/ltlast/atomic_prop.cc,
      src/ltlast/atomic_prop.hh, src/ltlast/binop.cc, src/ltlast/binop.hh,
      src/ltlast/bunop.cc, src/ltlast/bunop.hh, src/ltlast/constant.cc,
      src/ltlast/constant.hh, src/ltlast/multop.cc, src/ltlast/multop.hh,
      src/ltlast/unop.cc, src/ltlast/unop.hh, src/ltlvisit/dump.cc,
      src/ltlvisit/dump.hh, src/ltlast/predecl.hh: Delete these files.  Their
      feature have been merged in formula.hh and formula.cc.
      * src/ltlast/visitor.hh, src/ltlvisit/clone.cc, src/ltlvisit/clone.hh,
      src/ltlvisit/dump.hh, src/ltlvisit/postfix.cc, src/ltlvisit/postfix.hh:
      Delete these files, as we do not use visitors anymore.
      * bench/stutter/stutter_invariance_formulas.cc,
      bench/stutter/stutter_invariance_randomgraph.cc, doc/org/tut01.org,
      doc/org/tut02.org, doc/org/tut10.org, doc/org/tut22.org,
      iface/ltsmin/ltsmin.cc, iface/ltsmin/ltsmin.hh,
      iface/ltsmin/modelcheck.cc, src/bin/autfilt.cc,
      src/bin/common_aoutput.cc, src/bin/common_aoutput.hh,
      src/bin/common_finput.cc, src/bin/common_finput.hh,
      src/bin/common_output.cc, src/bin/common_output.hh,
      src/bin/common_trans.cc, src/bin/common_trans.hh, src/bin/dstar2tgba.cc,
      src/bin/genltl.cc, src/bin/ltl2tgba.cc, src/bin/ltl2tgta.cc,
      src/bin/ltlcross.cc, src/bin/ltldo.cc, src/bin/ltlfilt.cc,
      src/bin/ltlgrind.cc, src/bin/randaut.cc, src/bin/randltl.cc,
      src/kripke/kripkeexplicit.cc, src/kripke/kripkeexplicit.hh,
      src/kripkeparse/kripkeparse.yy, src/ltlast/Makefile.am,
      src/ltlenv/declenv.cc, src/ltlenv/declenv.hh, src/ltlenv/defaultenv.cc,
      src/ltlenv/defaultenv.hh, src/ltlenv/environment.hh,
      src/ltlparse/ltlparse.yy, src/ltlparse/public.hh,
      src/ltlvisit/Makefile.am, src/ltlvisit/apcollect.cc,
      src/ltlvisit/apcollect.hh, src/ltlvisit/contain.cc,
      src/ltlvisit/contain.hh, src/ltlvisit/dot.cc, src/ltlvisit/dot.hh,
      src/ltlvisit/exclusive.cc, src/ltlvisit/exclusive.hh,
      src/ltlvisit/length.cc, src/ltlvisit/length.hh, src/ltlvisit/mark.cc,
      src/ltlvisit/mark.hh, src/ltlvisit/mutation.cc,
      src/ltlvisit/mutation.hh, src/ltlvisit/nenoform.cc,
      src/ltlvisit/nenoform.hh, src/ltlvisit/print.cc, src/ltlvisit/print.hh,
      src/ltlvisit/randomltl.cc, src/ltlvisit/randomltl.hh,
      src/ltlvisit/relabel.cc, src/ltlvisit/relabel.hh,
      src/ltlvisit/remove_x.cc, src/ltlvisit/remove_x.hh,
      src/ltlvisit/simpfg.cc, src/ltlvisit/simpfg.hh,
      src/ltlvisit/simplify.cc, src/ltlvisit/simplify.hh, src/ltlvisit/snf.cc,
      src/ltlvisit/snf.hh, src/ltlvisit/unabbrev.cc, src/ltlvisit/unabbrev.hh,
      src/parseaut/parseaut.yy, src/ta/taexplicit.cc, src/ta/tgtaexplicit.cc,
      src/taalgos/minimize.cc, src/taalgos/tgba2ta.cc, src/tests/bare.test,
      src/tests/checkpsl.cc, src/tests/checkta.cc,
      src/tests/complementation.cc, src/tests/consterm.cc,
      src/tests/emptchk.cc, src/tests/equalsf.cc, src/tests/ikwiad.cc,
      src/tests/isop.test, src/tests/kind.cc, src/tests/length.cc,
      src/tests/ltldo.test, src/tests/ltlfilt.test, src/tests/ltlgrind.test,
      src/tests/ltlprod.cc, src/tests/ltlrel.cc,
      src/tests/parse_print_test.cc, src/tests/parseaut.test,
      src/tests/parseerr.test, src/tests/randtgba.cc, src/tests/readltl.cc,
      src/tests/reduc.cc, src/tests/syntimpl.cc, src/tests/taatgba.cc,
      src/tests/tostring.cc, src/tests/twagraph.cc, src/tests/utf8.test,
      src/twa/acc.cc, src/twa/bdddict.cc, src/twa/bdddict.hh,
      src/twa/bddprint.cc, src/twa/formula2bdd.cc, src/twa/formula2bdd.hh,
      src/twa/taatgba.cc, src/twa/taatgba.hh, src/twa/twa.cc, src/twa/twa.hh
      src/twa/twagraph.cc, src/twa/twagraph.hh, src/twa/twasafracomplement.cc,
      src/twaalgos/compsusp.cc, src/twaalgos/compsusp.hh,
      src/twaalgos/dtgbasat.cc, src/twaalgos/hoa.cc, src/twaalgos/lbtt.cc,
      src/twaalgos/ltl2taa.cc, src/twaalgos/ltl2taa.hh,
      src/twaalgos/ltl2tgba_fm.cc, src/twaalgos/ltl2tgba_fm.hh,
      src/twaalgos/minimize.cc, src/twaalgos/minimize.hh,
      src/twaalgos/neverclaim.cc, src/twaalgos/postproc.cc,
      src/twaalgos/postproc.hh, src/twaalgos/powerset.cc,
      src/twaalgos/powerset.hh, src/twaalgos/randomgraph.cc,
      src/twaalgos/remprop.cc, src/twaalgos/remprop.hh, src/twaalgos/stats.cc,
      src/twaalgos/stats.hh, src/twaalgos/stutter.cc, src/twaalgos/stutter.hh,
      src/twaalgos/translate.cc, src/twaalgos/translate.hh,
      wrap/python/ajax/spotcgi.in, wrap/python/spot.py,
      wrap/python/spot_impl.i, wrap/python/Makefile.am,
      wrap/python/tests/automata-io.ipynb, wrap/python/tests/formulas.ipynb,
      wrap/python/tests/ltl2tgba.py, wrap/python/tests/ltlparse.py,
      wrap/python/tests/ltlsimple.py, wrap/python/tests/randltl.ipynb: Adjust
      to use the new interface.
      * src/sanity/style.test: Accept more C++11 patterns.
      * NEWS: Mention the change.
      b77f7e24
  16. 20 Jun, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      ltl: remove is_eltl_formula() · 813c3799
      Alexandre Duret-Lutz authored
      * doc/tl/tl.tex, src/ltlast/atomic_prop.cc, src/ltlast/binop.cc,
      src/ltlast/bunop.cc, src/ltlast/constant.cc, src/ltlast/formula.cc,
      src/ltlast/formula.hh, src/ltlast/multop.cc, src/ltlast/unop.cc:
      Remove is_eltl_formula().
      * src/tests/kind.test: Adjust.
      813c3799
  17. 27 Jan, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      ltl: keep track of spin-compatible AP · a4a0cf3b
      Alexandre Duret-Lutz authored
      * src/misc/bareword.cc, src/misc/bareword.hh (is_spin_ap): New function.
      * src/ltlast/formula.cc, src/ltlast/formula.hh (is_spin_atomic_props):
      New method and boolean.
      * src/ltlast/atomic_prop.cc, src/ltlast/constant.cc: Update it.
      * src/ltltest/kind.test: Test it.
      a4a0cf3b
  18. 19 Jan, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      ltl: rename is_X_free() into is_syntactic_stutter_invariant() · 34f1601b
      Alexandre Duret-Lutz authored
      and adjust it to detect siPSL formulas, as in the paper of Dax et
      al. (ATVA'09).  For issue #51.
      
      * src/ltlast/atomic_prop.cc, src/ltlast/binop.cc,
      src/ltlast/bunop.cc, src/ltlast/constant.cc, src/ltlast/formula.cc,
      src/ltlast/formula.hh, src/ltlast/multop.cc, src/ltlast/unop.cc: Rename
      the property, and adjust its computation on siSERE.
      * src/ltlvisit/remove_x.cc, src/ltlvisit/simplify.cc,
      src/tgbaalgos/stutter.cc: Adjust to new names.
      * src/bin/ltlfilt.cc: Add option --syntactic-sutter-invariant.
      * src/ltltest/kind.test: Update tests and add some new.
      34f1601b
  19. 25 Oct, 2014 2 commits
    • Alexandre Duret-Lutz's avatar
      ltl: get rid of ltl::ref_formula · 8d947a87
      Alexandre Duret-Lutz authored
      Instead, manage all reference counting from ltl::formula.
      It ridance of virtual calls to clone() and destroy() easily compensate
      the extra test in destroy() to not delete constant nodes.
      
      * src/ltlast/refformula.cc, src/ltlast/refformula.hh: Delete.
      * src/ltlast/Makefile.am, wrap/python/spot.i: Adjust.
      * src/ltlast/atomic_prop.cc, src/ltlast/atomic_prop.hh,
      src/ltlast/binop.cc, src/ltlast/binop.hh, src/ltlast/bunop.cc,
      src/ltlast/bunop.hh, src/ltlast/formula.cc, src/ltlast/formula.hh,
      src/ltlast/multop.cc, src/ltlast/multop.hh, src/ltlast/unop.cc,
      src/ltlast/unop.hh: Ajust the reference counting code.
      8d947a87
    • Alexandre Duret-Lutz's avatar
      ltl: rename formula::count_ as formula::serial_. · d79da2e9
      Alexandre Duret-Lutz authored
      * src/ltlast/formula.hh, src/ltlast/formula.cc: Here.
      d79da2e9
  20. 12 Feb, 2014 1 commit
    • Alexandre Duret-Lutz's avatar
      c++11: replace push(Type(args...)) by emplace(args...) · 49c66c63
      Alexandre Duret-Lutz authored
      This of course concerns push_back and push_front as well.
      
      * src/bin/common_finput.cc, src/bin/dstar2tgba.cc, src/bin/ltl2tgba.cc,
      src/bin/ltl2tgta.cc, src/bin/ltlcross.cc, src/bin/ltlfilt.cc,
      src/dstarparse/dstarparse.yy, src/kripkeparse/kripkeparse.yy,
      src/ltlast/formula.cc, src/ltlparse/ltlparse.yy, src/misc/minato.cc,
      src/neverparse/neverclaimparse.yy, src/priv/bddalloc.cc, src/ta/ta.cc,
      src/taalgos/emptinessta.cc, src/tgba/taatgba.cc,
      src/tgbaalgos/gtec/gtec.cc, src/tgbaalgos/gtec/sccstack.cc,
      src/tgbaalgos/magic.cc, src/tgbaalgos/ndfs_result.hxx,
      src/tgbaalgos/rundotdec.cc, src/tgbaalgos/scc.cc, src/tgbaalgos/se05.cc,
      src/tgbaalgos/simulation.cc, src/tgbaalgos/tau03.cc,
      src/tgbaalgos/tau03opt.cc, src/tgbaparse/tgbaparse.yy: Use emplace
      to make the code less verbose and avoid creating temporaries.
      49c66c63
  21. 29 Sep, 2013 1 commit
    • Alexandre Duret-Lutz's avatar
      Sort comutative binops like we sort multops. · c01909e3
      Alexandre Duret-Lutz authored
      * src/ltlast/formula.hh (is_literal): Rename as...
      (get_literal): ... this.
      (is_literal): New method.
      (formula_ptr_less_than_multop): Rename as...
      (formula_ptr_less_than_bool_first): ... this.
      * src/ltlast/binop.cc: Use formula_ptr_less_than_bool_first.
      * src/ltlast/multop.cc, src/ltlast/formula.cc: Adjust
      to renamings.
      c01909e3
  22. 26 Sep, 2013 1 commit
    • Alexandre Duret-Lutz's avatar
      Arrange multops so that Boolean arguments come first. · 536e45b3
      Alexandre Duret-Lutz authored
      This helps recursive implication checks.  Also order
      atomic propositions with strverscmp().
      
      * src/ltlast/formula.hh (formula_ptr_less_than_multop,
      is_literal, atomic_prop_cmp): New.
      * src/ltlast/formula.cc (is_literal, atomic_prop_cmp): Implement them.
      * src/ltlast/multop.cc: Use formula_ptr_less_than_multop.
      * src/ltltest/isop.test, src/ltltest/ltlfilt.test,
      src/tgbatest/det.test, src/tgbatest/dstar.test,
      src/tgbatest/explicit.test, src/tgbatest/explpro2.test,
      src/tgbatest/explpro3.test, src/tgbatest/explprod.test,
      src/tgbatest/nondet.test, src/tgbatest/tripprod.test: Adjust tests.
      * NEWS: Mention the new order.
      536e45b3
  23. 04 Apr, 2013 1 commit
  24. 14 Oct, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      Add a has_lbt_atomic_props() method to LTL formulas. · b2de0136
      Alexandre Duret-Lutz authored
      * src/ltlast/formula.hh (has_lbt_atomic_props): New method.
      * src/ltlast/formula.cc (printprops): Display it.
      * src/ltlast/atomic_prop.cc: Update it.
      * src/bin/ltlcheck.cc, src/bin/genltl.cc: Use it.
      * doc/tl/tl.tex: Menton has_lbt_atomic_props().
      b2de0136
  25. 12 Oct, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      Upgrade GPL v2+ to GPL v3+. · 1551c5d9
      Alexandre Duret-Lutz authored
      * NEWS: Mention this.
      * COPYING: Replace by GPL v3.
      * src/sanity/style.test: Check files with the wrong license,
      in case we forgot to update it during a merge.
      * Makefile.am, bench/Makefile.am, bench/emptchk/Makefile.am,
      bench/emptchk/defs.in, bench/emptchk/ltl-human.sh,
      bench/emptchk/ltl-random.sh, bench/emptchk/pml-clserv.sh,
      bench/emptchk/pml-eeaean.sh, bench/emptchk/pml2tgba.pl,
      bench/ltl2tgba/big, bench/ltl2tgba/defs.in, bench/ltl2tgba/known,
      bench/ltl2tgba/lbtt2csv.pl, bench/ltl2tgba/ltl2baw.in,
      bench/ltl2tgba/parseout.pl, bench/ltl2tgba/small,
      bench/ltlclasses/Makefile.am, bench/ltlclasses/defs.in,
      bench/ltlclasses/run, bench/ltlcounter/Makefile.am,
      bench/ltlcounter/defs.in, bench/ltlcounter/run,
      bench/scc-stats/Makefile.am, bench/scc-stats/stats.cc,
      bench/split-product/Makefile.am, bench/split-product/cutscc.cc,
      bench/split-product/pml2tgba.pl, bench/wdba/Makefile.am,
      bench/wdba/defs.in, bench/wdba/run, configure.ac, doc/Makefile.am,
      doc/dot.in, doc/tl/Makefile.am, iface/Makefile.am,
      iface/dve2/Makefile.am, iface/dve2/defs.in, iface/dve2/dve2.cc,
      iface/dve2/dve2.hh, iface/dve2/dve2check.cc,
      iface/dve2/dve2check.test, iface/dve2/finite.test,
      iface/dve2/kripke.test, iface/gspn/Makefile.am, iface/gspn/common.cc,
      iface/gspn/common.hh, iface/gspn/dcswave.test,
      iface/gspn/dcswaveeltl.test, iface/gspn/dcswavefm.test,
      iface/gspn/dcswaveltl.test, iface/gspn/dottygspn.cc,
      iface/gspn/dottyssp.cc, iface/gspn/gspn.cc, iface/gspn/gspn.hh,
      iface/gspn/ltlgspn.cc, iface/gspn/simple.test, iface/gspn/ssp.cc,
      iface/gspn/ssp.hh, iface/gspn/udcsefm.test, iface/gspn/udcseltl.test,
      iface/gspn/udcsfm.test, iface/gspn/udcsltl.test, src/Makefile.am,
      src/bin/Makefile.am, src/bin/common_cout.cc, src/bin/common_cout.hh,
      src/bin/common_finput.cc, src/bin/common_finput.hh,
      src/bin/common_output.cc, src/bin/common_output.hh,
      src/bin/common_post.cc, src/bin/common_post.hh, src/bin/common_r.cc,
      src/bin/common_r.hh, src/bin/common_range.cc, src/bin/common_range.hh,
      src/bin/common_setup.cc, src/bin/common_setup.hh,
      src/bin/common_sys.hh, src/bin/genltl.cc, src/bin/ltl2tgba.cc,
      src/bin/ltl2tgta.cc, src/bin/ltlfilt.cc, src/bin/man/Makefile.am,
      src/bin/randltl.cc, src/eltlparse/Makefile.am,
      src/eltlparse/eltlparse.yy, src/eltlparse/eltlscan.ll,
      src/eltlparse/fmterror.cc, src/eltlparse/parsedecl.hh,
      src/eltlparse/public.hh, src/eltltest/Makefile.am,
      src/eltltest/acc.cc, src/eltltest/acc.test, src/eltltest/defs.in,
      src/eltltest/nfa.cc, src/eltltest/nfa.test, src/evtgba/Makefile.am,
      src/evtgba/evtgba.cc, src/evtgba/evtgba.hh, src/evtgba/evtgbaiter.hh,
      src/evtgba/explicit.cc, src/evtgba/explicit.hh, src/evtgba/product.cc,
      src/evtgba/product.hh, src/evtgba/symbol.cc, src/evtgba/symbol.hh,
      src/evtgbaalgos/Makefile.am, src/evtgbaalgos/dotty.cc,
      src/evtgbaalgos/dotty.hh, src/evtgbaalgos/reachiter.cc,
      src/evtgbaalgos/reachiter.hh, src/evtgbaalgos/save.cc,
      src/evtgbaalgos/save.hh, src/evtgbaalgos/tgba2evtgba.cc,
      src/evtgbaalgos/tgba2evtgba.hh, src/evtgbaparse/Makefile.am,
      src/evtgbaparse/evtgbaparse.yy, src/evtgbaparse/evtgbascan.ll,
      src/evtgbaparse/fmterror.cc, src/evtgbaparse/parsedecl.hh,
      src/evtgbaparse/public.hh, src/evtgbatest/Makefile.am,
      src/evtgbatest/defs.in, src/evtgbatest/explicit.cc,
      src/evtgbatest/explicit.test, src/evtgbatest/ltl2evtgba.cc,
      src/evtgbatest/ltl2evtgba.test, src/evtgbatest/product.cc,
      src/evtgbatest/product.test, src/evtgbatest/readsave.cc,
      src/evtgbatest/readsave.test, src/kripke/Makefile.am,
      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/kripke/kripkeprint.cc, src/kripke/kripkeprint.hh,
      src/kripkeparse/Makefile.am, src/kripkeparse/fmterror.cc,
      src/kripkeparse/kripkeparse.yy, src/kripkeparse/kripkescan.ll,
      src/kripkeparse/parsedecl.hh, src/kripkeparse/public.hh,
      src/kripkeparse/scankripke.ll, src/kripketest/Makefile.am,
      src/kripketest/bad_parsing.test, src/kripketest/defs.in,
      src/kripketest/kripke.test, src/kripketest/parse_print_test.cc,
      src/ltlast/Makefile.am, src/ltlast/allnodes.hh,
      src/ltlast/atomic_prop.cc, src/ltlast/atomic_prop.hh,
      src/ltlast/automatop.cc, src/ltlast/automatop.hh, src/ltlast/binop.cc,
      src/ltlast/binop.hh, src/ltlast/bunop.cc, src/ltlast/bunop.hh,
      src/ltlast/constant.cc, src/ltlast/constant.hh, src/ltlast/formula.cc,
      src/ltlast/formula.hh, src/ltlast/formula_tree.cc,
      src/ltlast/formula_tree.hh, src/ltlast/multop.cc,
      src/ltlast/multop.hh, src/ltlast/nfa.cc, src/ltlast/nfa.hh,
      src/ltlast/predecl.hh, src/ltlast/refformula.cc,
      src/ltlast/refformula.hh, src/ltlast/unop.cc, src/ltlast/unop.hh,
      src/ltlast/visitor.hh, src/ltlenv/Makefile.am, src/ltlenv/declenv.cc,
      src/ltlenv/declenv.hh, src/ltlenv/defaultenv.cc,
      src/ltlenv/defaultenv.hh, src/ltlenv/environment.hh,
      src/ltlparse/Makefile.am, src/ltlparse/fmterror.cc,
      src/ltlparse/ltlfile.cc, src/ltlparse/ltlfile.hh,
      src/ltlparse/ltlparse.yy, src/ltlparse/ltlscan.ll,
      src/ltlparse/parsedecl.hh, src/ltlparse/public.hh,
      src/ltltest/Makefile.am, src/ltltest/consterm.cc,
      src/ltltest/consterm.test, src/ltltest/defs.in, src/ltltest/equals.cc,
      src/ltltest/equals.test, src/ltltest/kind.cc, src/ltltest/kind.test,
      src/ltltest/length.cc, src/ltltest/length.test,
      src/ltltest/lunabbrev.test, src/ltltest/nenoform.test,
      src/ltltest/parse.test, src/ltltest/parseerr.test,
      src/ltltest/readltl.cc, src/ltltest/reduc.cc, src/ltltest/reduc.test,
      src/ltltest/reduccmp.test, src/ltltest/reducpsl.test,
      src/ltltest/syntimpl.cc, src/ltltest/syntimpl.test,
      src/ltltest/tostring.cc, src/ltltest/tostring.test,
      src/ltltest/tunabbrev.test, src/ltltest/tunenoform.test,
      src/ltltest/utf8.test, src/ltltest/uwrm.test,
      src/ltlvisit/Makefile.am, src/ltlvisit/apcollect.cc,
      src/ltlvisit/apcollect.hh, src/ltlvisit/clone.cc,
      src/ltlvisit/clone.hh, src/ltlvisit/contain.cc,
      src/ltlvisit/contain.hh, src/ltlvisit/destroy.cc,
      src/ltlvisit/destroy.hh, src/ltlvisit/dotty.cc, src/ltlvisit/dotty.hh,
      src/ltlvisit/dump.cc, src/ltlvisit/dump.hh, src/ltlvisit/lbt.cc,
      src/ltlvisit/lbt.hh, src/ltlvisit/length.cc, src/ltlvisit/length.hh,
      src/ltlvisit/lunabbrev.cc, src/ltlvisit/lunabbrev.hh,
      src/ltlvisit/mark.cc, src/ltlvisit/mark.hh, src/ltlvisit/nenoform.cc,
      src/ltlvisit/nenoform.hh, src/ltlvisit/postfix.cc,
      src/ltlvisit/postfix.hh, src/ltlvisit/randomltl.cc,
      src/ltlvisit/randomltl.hh, src/ltlvisit/reduce.cc,
      src/ltlvisit/reduce.hh, src/ltlvisit/relabel.cc,
      src/ltlvisit/relabel.hh, src/ltlvisit/simpfg.cc,
      src/ltlvisit/simpfg.hh, src/ltlvisit/simplify.cc,
      src/ltlvisit/simplify.hh, src/ltlvisit/snf.cc, src/ltlvisit/snf.hh,
      src/ltlvisit/tostring.cc, src/ltlvisit/tostring.hh,
      src/ltlvisit/tunabbrev.cc, src/ltlvisit/tunabbrev.hh,
      src/ltlvisit/wmunabbrev.cc, src/ltlvisit/wmunabbrev.hh,
      src/misc/Makefile.am, src/misc/acccompl.cc, src/misc/acccompl.hh,
      src/misc/accconv.cc, src/misc/accconv.hh, src/misc/bareword.cc,
      src/misc/bareword.hh, src/misc/bddalloc.cc, src/misc/bddalloc.hh,
      src/misc/bddlt.hh, src/misc/bddop.cc, src/misc/bddop.hh,
      src/misc/casts.hh, src/misc/escape.cc, src/misc/escape.hh,
      src/misc/fixpool.hh, src/misc/freelist.cc, src/misc/freelist.hh,
      src/misc/hash.hh, src/misc/hashfunc.hh, src/misc/intvcmp2.cc,
      src/misc/intvcmp2.hh, src/misc/intvcomp.cc, src/misc/intvcomp.hh,
      src/misc/ltstr.hh, src/misc/memusage.cc, src/misc/memusage.hh,
      src/misc/minato.cc, src/misc/minato.hh, src/misc/modgray.cc,
      src/misc/modgray.hh, src/misc/mspool.hh, src/misc/optionmap.cc,
      src/misc/optionmap.hh, src/misc/random.cc, src/misc/random.hh,
      src/misc/timer.cc, src/misc/timer.hh, src/misc/unique_ptr.hh,
      src/misc/version.cc, src/misc/version.hh, src/neverparse/Makefile.am,
      src/neverparse/fmterror.cc, src/neverparse/neverclaimparse.yy,
      src/neverparse/neverclaimscan.ll, src/neverparse/parsedecl.hh,
      src/neverparse/public.hh, src/saba/Makefile.am,
      src/saba/explicitstateconjunction.cc,
      src/saba/explicitstateconjunction.hh, src/saba/saba.cc,
      src/saba/saba.hh, src/saba/sabacomplementtgba.cc,
      src/saba/sabacomplementtgba.hh, src/saba/sabastate.hh,
      src/saba/sabasucciter.hh, src/sabaalgos/Makefile.am,
      src/sabaalgos/sabadotty.cc, src/sabaalgos/sabadotty.hh,
      src/sabaalgos/sabareachiter.cc, src/sabaalgos/sabareachiter.hh,
      src/sabatest/Makefile.am, src/sabatest/defs.in,
      src/sabatest/sabacomplementtgba.cc, src/sanity/Makefile.am,
      src/sanity/readme.test, src/sanity/style.test, src/ta/Makefile.am,
      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/Makefile.am, src/taalgos/dotty.cc, src/taalgos/dotty.hh,
      src/taalgos/emptinessta.cc, src/taalgos/emptinessta.hh,
      src/taalgos/minimize.cc, src/taalgos/minimize.hh,
      src/taalgos/reachiter.cc, src/taalgos/reachiter.hh,
      src/taalgos/statessetbuilder.cc, src/taalgos/statessetbuilder.hh,
      src/taalgos/stats.cc, src/taalgos/stats.hh, src/taalgos/tgba2ta.cc,
      src/taalgos/tgba2ta.hh, src/tgba/Makefile.am, src/tgba/bdddict.cc,
      src/tgba/bdddict.hh, src/tgba/bddprint.cc, src/tgba/bddprint.hh,
      src/tgba/formula2bdd.cc, src/tgba/formula2bdd.hh,
      src/tgba/futurecondcol.cc, src/tgba/futurecondcol.hh,
      src/tgba/public.hh, src/tgba/sba.hh, src/tgba/state.hh,
      src/tgba/statebdd.cc, src/tgba/statebdd.hh, src/tgba/succiter.hh,
      src/tgba/succiterconcrete.cc, src/tgba/succiterconcrete.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/tgbabddconcretefactory.cc,
      src/tgba/tgbabddconcretefactory.hh,
      src/tgba/tgbabddconcreteproduct.cc,
      src/tgba/tgbabddconcreteproduct.hh, src/tgba/tgbabddcoredata.cc,
      src/tgba/tgbabddcoredata.hh, src/tgba/tgbabddfactory.hh,
      src/tgba/tgbaexplicit.cc, src/tgba/tgbaexplicit.hh,
      src/tgba/tgbakvcomplement.cc, src/tgba/tgbakvcomplement.hh,
      src/tgba/tgbaproduct.cc, src/tgba/tgbaproduct.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,
      src/tgba/wdbacomp.hh, src/tgbaalgos/Makefile.am,
      src/tgbaalgos/bfssteps.cc, src/tgbaalgos/bfssteps.hh,
      src/tgbaalgos/cutscc.cc, src/tgbaalgos/cutscc.hh,
      src/tgbaalgos/cycles.cc, src/tgbaalgos/cycles.hh,
      src/tgbaalgos/degen.cc, src/tgbaalgos/degen.hh,
      src/tgbaalgos/dotty.cc, src/tgbaalgos/dotty.hh,
      src/tgbaalgos/dottydec.cc, src/tgbaalgos/dottydec.hh,
      src/tgbaalgos/dupexp.cc, src/tgbaalgos/dupexp.hh,
      src/tgbaalgos/eltl2tgba_lacim.cc, src/tgbaalgos/eltl2tgba_lacim.hh,
      src/tgbaalgos/emptiness.cc, src/tgbaalgos/emptiness.hh,
      src/tgbaalgos/emptiness_stats.hh, src/tgbaalgos/gtec/Makefile.am,
      src/tgbaalgos/gtec/ce.cc, src/tgbaalgos/gtec/ce.hh,
      src/tgbaalgos/gtec/explscc.cc, src/tgbaalgos/gtec/explscc.hh,
      src/tgbaalgos/gtec/gtec.cc, src/tgbaalgos/gtec/gtec.hh,
      src/tgbaalgos/gtec/nsheap.cc, src/tgbaalgos/gtec/nsheap.hh,
      src/tgbaalgos/gtec/sccstack.cc, src/tgbaalgos/gtec/sccstack.hh,
      src/tgbaalgos/gtec/status.cc, src/tgbaalgos/gtec/status.hh,
      src/tgbaalgos/gv04.cc, src/tgbaalgos/gv04.hh, src/tgbaalgos/isdet.cc,
      src/tgbaalgos/isdet.hh, src/tgbaalgos/isweakscc.cc,
      src/tgbaalgos/isweakscc.hh, src/tgbaalgos/lbtt.cc,
      src/tgbaalgos/lbtt.hh, src/tgbaalgos/ltl2taa.cc,
      src/tgbaalgos/ltl2taa.hh, src/tgbaalgos/ltl2tgba_fm.cc,
      src/tgbaalgos/ltl2tgba_fm.hh, src/tgbaalgos/ltl2tgba_lacim.cc,
      src/tgbaalgos/ltl2tgba_lacim.hh, src/tgbaalgos/magic.cc,
      src/tgbaalgos/magic.hh, src/tgbaalgos/minimize.cc,
      src/tgbaalgos/minimize.hh, src/tgbaalgos/ndfs_result.hxx,
      src/tgbaalgos/neverclaim.cc, src/tgbaalgos/neverclaim.hh,
      src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh,
      src/tgbaalgos/powerset.cc, src/tgbaalgos/powerset.hh,
      src/tgbaalgos/projrun.cc, src/tgbaalgos/projrun.hh,
      src/tgbaalgos/randomgraph.cc, src/tgbaalgos/randomgraph.hh,
      src/tgbaalgos/reachiter.cc, src/tgbaalgos/reachiter.hh,
      src/tgbaalgos/reducerun.cc, src/tgbaalgos/reducerun.hh,
      src/tgbaalgos/reductgba_sim.cc, src/tgbaalgos/reductgba_sim.hh,
      src/tgbaalgos/replayrun.cc, src/tgbaalgos/replayrun.hh,
      src/tgbaalgos/rundotdec.cc, src/tgbaalgos/rundotdec.hh,
      src/tgbaalgos/safety.cc, src/tgbaalgos/safety.hh,
      src/tgbaalgos/save.cc, src/tgbaalgos/save.hh, src/tgbaalgos/scc.cc,
      src/tgbaalgos/scc.hh, src/tgbaalgos/sccfilter.cc,
      src/tgbaalgos/sccfilter.hh, src/tgbaalgos/se05.cc,
      src/tgbaalgos/se05.hh, src/tgbaalgos/simulation.cc,
      src/tgbaalgos/simulation.hh, src/tgbaalgos/stats.cc,
      src/tgbaalgos/stats.hh, src/tgbaalgos/tau03.cc,
      src/tgbaalgos/tau03.hh, src/tgbaalgos/tau03opt.cc,
      src/tgbaalgos/tau03opt.hh, src/tgbaalgos/weight.cc,
      src/tgbaalgos/weight.hh, src/tgbaparse/Makefile.am,
      src/tgbaparse/fmterror.cc, src/tgbaparse/parsedecl.hh,
      src/tgbaparse/public.hh, src/tgbaparse/tgbaparse.yy,
      src/tgbaparse/tgbascan.ll, src/tgbatest/Makefile.am,
      src/tgbatest/babiak.test, src/tgbatest/bddprod.test,
      src/tgbatest/complementation.cc, src/tgbatest/complementation.test,
      src/tgbatest/cycles.test, src/tgbatest/defs.in,
      src/tgbatest/degendet.test, src/tgbatest/degenid.test,
      src/tgbatest/dfs.test, src/tgbatest/dupexp.test,
      src/tgbatest/eltl2tgba.test, src/tgbatest/emptchk.test,
      src/tgbatest/emptchke.test, src/tgbatest/emptchkr.test,
      src/tgbatest/explicit.cc, src/tgbatest/explicit.test,
      src/tgbatest/explicit2.cc, src/tgbatest/explicit2.test,
      src/tgbatest/explpro2.test, src/tgbatest/explpro3.test,
      src/tgbatest/explpro4.test, src/tgbatest/explprod.cc,
      src/tgbatest/explprod.test, src/tgbatest/intvcmp2.cc,
      src/tgbatest/intvcomp.cc, src/tgbatest/intvcomp.test,
      src/tgbatest/kv.test, src/tgbatest/ltl2neverclaim.test,
      src/tgbatest/ltl2ta.test, src/tgbatest/ltl2tgba.cc,
      src/tgbatest/ltl2tgba.test, src/tgbatest/ltlcounter.test,
      src/tgbatest/ltlprod.cc, src/tgbatest/ltlprod.test,
      src/tgbatest/mixprod.cc, src/tgbatest/mixprod.test,
      src/tgbatest/neverclaimread.test, src/tgbatest/nondet.test,
      src/tgbatest/obligation.test, src/tgbatest/powerset.cc,
      src/tgbatest/randpsl.test, src/tgbatest/randtgba.cc,
      src/tgbatest/randtgba.test, src/tgbatest/readsave.test,
      src/tgbatest/renault.test, src/tgbatest/scc.test,
      src/tgbatest/sccsimpl.test, src/tgbatest/spotlbtt.test,
      src/tgbatest/spotlbtt2.test, src/tgbatest/taatgba.cc,
      src/tgbatest/taatgba.test, src/tgbatest/tgbaread.cc,
      src/tgbatest/tgbaread.test, src/tgbatest/tripprod.cc,
      src/tgbatest/tripprod.test, src/tgbatest/wdba.test,
      src/tgbatest/wdba2.test, wrap/Makefile.am, wrap/python/Makefile.am,
      wrap/python/ajax/Makefile.am, wrap/python/ajax/spot.in,
      wrap/python/buddy.i, wrap/python/spot.i,
      wrap/python/tests/Makefile.am, wrap/python/tests/alarm.py,
      wrap/python/tests/bddnqueen.py, wrap/python/tests/implies.py,
      wrap/python/tests/interdep.py, wrap/python/tests/ltl2tgba.py,
      wrap/python/tests/ltl2tgba.test, wrap/python/tests/ltlparse.py,
      wrap/python/tests/ltlsimple.py, wrap/python/tests/minato.py,
      wrap/python/tests/modgray.py, wrap/python/tests/optionmap.py,
      wrap/python/tests/parsetgba.py, wrap/python/tests/run.in,
      wrap/python/tests/setxor.py: Update licence version, and replace the
      FSF address by a URL.
      1551c5d9
  26. 02 May, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      Use 'const formula*' instead of 'formula*' everywhere. · bf62d439
      Alexandre Duret-Lutz authored
      The distinction makes no sense since Spot 0.5, where we switched from
      mutable furmulae to immutable formulae.  The difference between
      const_visitor and visitor made no sense either.  They have been merged
      into one: visitor.
      
      * iface/dve2/dve2check.cc, iface/gspn/ltlgspn.cc,
      src/eltlparse/eltlparse.yy, src/eltlparse/public.hh,
      src/evtgbatest/ltl2evtgba.cc, src/kripkeparse/kripkeparse.yy,
      src/ltlast/atomic_prop.cc, src/ltlast/atomic_prop.hh,
      src/ltlast/automatop.cc, src/ltlast/automatop.hh, src/ltlast/binop.cc,
      src/ltlast/binop.hh, src/ltlast/bunop.cc, src/ltlast/bunop.hh,
      src/ltlast/constant.cc, src/ltlast/constant.hh, src/ltlast/formula.cc,
      src/ltlast/formula.hh, src/ltlast/formula_tree.cc,
      src/ltlast/formula_tree.hh, src/ltlast/multop.cc,
      src/ltlast/multop.hh, src/ltlast/predecl.hh, src/ltlast/refformula.cc,
      src/ltlast/refformula.hh, src/ltlast/unop.cc, src/ltlast/unop.hh,
      src/ltlast/visitor.hh, src/ltlenv/declenv.cc, src/ltlenv/declenv.hh,
      src/ltlenv/defaultenv.cc, src/ltlenv/defaultenv.hh,
      src/ltlenv/environment.hh, src/ltlparse/ltlfile.cc,
      src/ltlparse/ltlfile.hh, src/ltlparse/ltlparse.yy,
      src/ltlparse/public.hh, src/ltltest/consterm.cc,
      src/ltltest/equals.cc, src/ltltest/genltl.cc, src/ltltest/kind.cc,
      src/ltltest/length.cc, src/ltltest/randltl.cc, src/ltltest/readltl.cc,
      src/ltltest/reduc.cc, src/ltltest/syntimpl.cc,
      src/ltltest/tostring.cc, src/ltlvisit/apcollect.cc,
      src/ltlvisit/apcollect.hh, src/ltlvisit/clone.cc,
      src/ltlvisit/clone.hh, src/ltlvisit/contain.cc,
      src/ltlvisit/contain.hh, src/ltlvisit/dotty.cc,
      src/ltlvisit/length.cc, src/ltlvisit/lunabbrev.cc,
      src/ltlvisit/lunabbrev.hh, src/ltlvisit/mark.cc, src/ltlvisit/mark.hh,
      src/ltlvisit/nenoform.cc, src/ltlvisit/nenoform.hh,
      src/ltlvisit/postfix.cc, src/ltlvisit/postfix.hh,
      src/ltlvisit/randomltl.cc, src/ltlvisit/randomltl.hh,
      src/ltlvisit/reduce.cc, src/ltlvisit/reduce.hh,
      src/ltlvisit/simpfg.cc, src/ltlvisit/simpfg.hh,
      src/ltlvisit/simplify.cc, src/ltlvisit/simplify.hh,
      src/ltlvisit/snf.cc, src/ltlvisit/snf.hh, src/ltlvisit/tostring.cc,
      src/ltlvisit/tunabbrev.cc, src/ltlvisit/tunabbrev.hh,
      src/ltlvisit/wmunabbrev.cc, src/ltlvisit/wmunabbrev.hh,
      src/neverparse/neverclaimparse.yy, src/sabatest/sabacomplementtgba.cc,
      src/tgba/bdddict.cc, src/tgba/formula2bdd.cc, src/tgba/taatgba.cc,
      src/tgba/taatgba.hh, src/tgbaalgos/eltl2tgba_lacim.cc,
      src/tgbaalgos/ltl2taa.cc, src/tgbaalgos/ltl2tgba_fm.cc,
      src/tgbaalgos/ltl2tgba_lacim.cc, src/tgbaalgos/minimize.cc,
      src/tgbaalgos/randomgraph.cc, src/tgbaparse/tgbaparse.yy,
      src/tgbatest/complementation.cc, src/tgbatest/ltl2tgba.cc,
      src/tgbatest/ltlprod.cc, src/tgbatest/mixprod.cc,
      src/tgbatest/randtgba.cc: Massive adjustment!
      * src/tgbatest/reductgba.cc: Delete.
      bf62d439
  27. 28 Apr, 2012 7 commits
    • Alexandre Duret-Lutz's avatar
      Replace the "encoding: utf-8" by "coding: utf-8" comments. · 8f40fd41
      Alexandre Duret-Lutz authored
      * Makefile.am, src/ltlast/formula.cc, src/ltlast/formula.hh,
      src/tgba/tgbaexplicit.hh, wrap/python/ajax/Makefile.am,
      wrap/python/spot.i: Here.
      * HACKING: Document -*- coding: utf-8 -*-.
      8f40fd41
    • Alexandre Duret-Lutz's avatar
      ltl2tgba.html: Display properties of formulas. · 3d41bf9f
      Alexandre Duret-Lutz authored
      * src/ltlast/formula.hh, src/ltlast/formula.cc (list_formula_props):
      New function.
      * wrap/python/spot.i: Adjust to wrap list_formula_props.
      * wrap/python/ajax/ltl2tgba.html: Add option to display properties.
      * wrap/python/ajax/spot.in: Handle ff=p and display properties.
      * wrap/python/ajax/protocol.txt: Adjust.
      3d41bf9f
    • Alexandre Duret-Lutz's avatar
      Track finite formulae. · fb386209
      Alexandre Duret-Lutz authored
      I.e., SERE without star, or LTL formula using only X and Boolean
      operators.
      
      * src/ltlast/formula.hh, src/ltlast/formula.cc: Add a bit for
      tracking finite formulas.
      * src/ltlast/atomic_prop.cc, src/ltlast/automatop.cc,
      src/ltlast/bunop.cc, src/ltlast/constant.cc, src/ltlast/formula.cc:
      Adjust.
      * src/ltlast/unop.cc, src/ltlast/binop.cc: Adjust and use that
      bit to refine the computation of some LTL classes.
      * src/ltltest/kind.test: New tests.
      fb386209
    • Alexandre Duret-Lutz's avatar
      Track syntactic classes. · df760a45
      Alexandre Duret-Lutz authored
      These are safety, guarantee, obligation, persistence, and recurrence.
      
      * src/ltlast/formula.hh, src/ltlast/formula.cc: Declare a bit for
      each of these classes.
      * src/ltlast/atomic_prop.cc, src/ltlast/constant.cc,
      src/ltlast/automatop.cc, src/ltlast/binop.cc, src/ltlast/bunop.cc,
      src/ltlast/unop.cc: Update these bits.
      * src/ltltest/kind.test: Update tests and add more.
      df760a45
    • Alexandre Duret-Lutz's avatar
      Track SERE formulas. · 459921ef
      Alexandre Duret-Lutz authored
      * src/ltlast/atomic_prop.cc, src/ltlast/automatop.cc,
      src/ltlast/binop.cc, src/ltlast/bunop.cc, src/ltlast/constant.cc,
      src/ltlast/formula.cc, src/ltlast/formula.hh,
      src/ltlast/multop.cc, src/ltlast/unop.cc: Add a bit is.sere_formula
      to track SEREs, and fix tracking of PSL formulae.
      * src/ltltest/kind.test: Adjust.
      459921ef
    • Alexandre Duret-Lutz's avatar
      Replace the constant_term visitor by a flag in the formulae. · 48cde88b
      Alexandre Duret-Lutz authored
      * src/ltlast/formula.hh (formula::accepts_eword): New method.
      (formula::is.accepting_eword): New flag.
      * src/ltlast/formula.cc (print_formula_props): Display the new
      property.
      * src/ltlast/atomic_prop.cc, src/ltlast/automatop.cc,
      src/ltlast/binop.cc, src/ltlast/bunop.cc, src/ltlast/constant.cc,
      src/ltlast/multop.cc, src/ltlast/unop.cc: Update
      is.accepting_eword as appropriate.
      * src/ltltest/consterm.cc, src/tgbaalgos/ltl2tgba_fm.cc: Adjust to
      use accepts_eword().
      * src/ltlvisit/consterm.cc, src/ltlvisit/consterm.hh: Delete.
      * src/ltlvisit/Makefile.am: Remove these files.
      48cde88b
    • Alexandre Duret-Lutz's avatar
      Maintain basic LTL properties using a bitfield inside formula objects. · 546260e7
      Alexandre Duret-Lutz authored
      This bitfield is easily updated as the formulae are constructed.
      Doing so avoids many AST recursions to compute these properties
      individually.  This patch removes the eventual_universal_visitor,
      as well as the kind_of() function.
      
      * src/ltlast/formula.hh (is_boolean, is_sugar_free_boolean,
      is_in_nenoform, is_X_free, is_sugar_free_ltl,
      is_ltl_formula, is_eltl_formula, is_psl_formula, is_eventual,
      is_universal, is_marked): New methods to query formula
      properties in constant time.
      (get_props, ltl_prop): A method and structure for
      implementation as a field bit in an unsigned, for fast
      computation.
      (print_formula_props): New function.
      * src/ltlast/formula.cc (print_formula_props): Implement it.
      * src/ltlast/atomic_prop.cc, src/ltlast/binop.cc,
      src/ltlast/bunop.cc, src/ltlast/constant.cc, src/ltlast/multop.cc,
      src/ltlast/unop.cc, src/ltlast/automatop.cc: Compute the
      properties as instances are constructed.
      * src/ltlparse/ltlparse.yy: Update to use is_boolean() instead
      of kind_of().
      * src/ltltest/kind.cc: Update to use print_formula_props().
      * src/ltltest/kind.test: Adjust to test eventual and universal
      properties.
      * src/ltlvisit/kind.cc, src/ltlvisit/kind.hh: Delete these files.
      * src/ltlvisit/Makefile.am: Remove kind.hh and kind.cc.
      * src/ltlvisit/reduce.cc (recurse_eu, eventual_universal_visitor):
      Remove, no longer needed.
      (reduce_visitor, is_eventual, is_universal): Adjust to
      use formula::is_eventual(), and formula::is_universal().
      * src/ltlvisit/reduce.hh (is_eventual, is_universal): Declare as
      deprecated.
      546260e7
  28. 24 Jan, 2010 1 commit
    • Guillaume Sadegh's avatar
      Fix copyrights. · 3a974d61
      Guillaume Sadegh authored
      * bench/Makefile.am, bench/gspn-ssp/Makefile.am,
      bench/gspn-ssp/defs.in, bench/scc-stats/Makefile.am,
      bench/split-product/Makefile.am, configure.ac,
      iface/Makefile.am, iface/gspn/Makefile.am, iface/gspn/ssp.hh,
      iface/nips/Makefile.am, iface/nips/common.cc,
      iface/nips/common.hh, iface/nips/dottynips.cc,
      iface/nips/nips.cc, iface/nips/nips.hh, src/Makefile.am,
      src/eltlparse/Makefile.am, src/eltlparse/eltlparse.yy,
      src/eltlparse/eltlscan.ll, src/eltlparse/fmterror.cc,
      src/eltlparse/parsedecl.hh, src/eltltest/Makefile.am,
      src/eltltest/defs.in, src/eltltest/nfa.cc, src/evtgba/evtgba.hh,
      src/evtgba/product.cc, src/evtgba/product.hh,
      src/evtgbaalgos/tgba2evtgba.cc, src/evtgbaparse/Makefile.am,
      src/evtgbaparse/evtgbaparse.yy, src/evtgbatest/defs.in,
      src/evtgbatest/explicit.test, src/evtgbatest/ltl2evtgba.cc,
      src/evtgbatest/ltl2evtgba.test, src/evtgbatest/product.cc,
      src/evtgbatest/product.test, src/evtgbatest/readsave.cc,
      src/evtgbatest/readsave.test, src/ltlast/atomic_prop.cc,
      src/ltlast/atomic_prop.hh, src/ltlast/binop.cc,
      src/ltlast/binop.hh, src/ltlast/constant.cc,
      src/ltlast/constant.hh, src/ltlast/formula.cc,
      src/ltlast/formula.hh, src/ltlast/formula_tree.cc,
      src/ltlast/formula_tree.hh, src/ltlast/multop.cc,
      src/ltlast/multop.hh, src/ltlast/nfa.cc, src/ltlast/nfa.hh,
      src/ltlast/unop.cc, src/ltlast/unop.hh, src/ltlenv/declenv.cc,
      src/ltlenv/declenv.hh, src/ltlenv/environment.hh,
      src/ltlparse/Makefile.am, src/ltlparse/ltlparse.yy,
      src/ltltest/Makefile.am, src/ltltest/defs.in,
      src/ltltest/equals.cc, src/ltltest/equals.test,
      src/ltltest/lunabbrev.test, src/ltltest/nenoform.test,
      src/ltltest/parse.test, src/ltltest/parseerr.test,
      src/ltltest/randltl.cc, src/ltltest/readltl.cc,
      src/ltltest/reduccmp.test, src/ltltest/syntimpl.cc,
      src/ltltest/syntimpl.test, src/ltltest/tostring.cc,
      src/ltltest/tostring.test, src/ltltest/tunabbrev.test,
      src/ltltest/tunenoform.test, src/ltlvisit/basicreduce.cc,
      src/ltlvisit/clone.cc, src/ltlvisit/clone.hh,
      src/ltlvisit/contain.cc, src/ltlvisit/destroy.cc,
      src/ltlvisit/destroy.hh, src/ltlvisit/lunabbrev.cc,
      src/ltlvisit/nenoform.cc, src/ltlvisit/randomltl.cc,
      src/ltlvisit/reduce.cc, src/ltlvisit/syntimpl.cc,
      src/ltlvisit/tostring.cc, src/misc/bddalloc.cc,
      src/misc/bddop.cc, src/misc/bddop.hh, src/misc/freelist.hh,
      src/misc/hash.hh, src/misc/minato.cc, src/misc/minato.hh,
      src/misc/optionmap.cc, src/misc/timer.cc, src/misc/timer.hh,
      src/saba/Makefile.am, src/saba/explicitstateconjunction.cc,
      src/saba/explicitstateconjunction.hh, src/saba/saba.cc,
      src/saba/saba.hh, src/saba/sabacomplementtgba.cc,
      src/saba/sabacomplementtgba.hh, src/saba/sabastate.hh,
      src/saba/sabasucciter.hh, src/sabaalgos/Makefile.am,
      src/sabaalgos/sabadotty.cc, src/sabaalgos/sabadotty.hh,
      src/sabaalgos/sabareachiter.cc, src/sabaalgos/sabareachiter.hh,
      src/sabatest/Makefile.am, src/sabatest/defs.in,
      src/sanity/Makefile.am, src/tgba/Makefile.am,
      src/tgba/bdddict.cc, src/tgba/bddprint.cc,
      src/tgba/formula2bdd.cc, src/tgba/state.hh,
      src/tgba/succiterconcrete.cc, src/tgba/taatgba.hh,
      src/tgba/tgba.hh, src/tgba/tgbabddconcretefactory.cc,
      src/tgba/tgbabddconcretefactory.hh, src/tgba/tgbacomplement.cc,
      src/tgba/tgbacomplement.hh, src/tgba/tgbaexplicit.cc,
      src/tgba/tgbaexplicit.hh, src/tgba/tgbaproduct.cc,
      src/tgba/tgbareduc.cc, src/tgba/tgbareduc.hh,
      src/tgba/tgbasafracomplement.cc, src/tgba/tgbasgba.cc,
      src/tgba/tgbasgba.hh, src/tgba/tgbaunion.cc,
      src/tgba/tgbaunion.hh, src/tgbaalgos/dupexp.cc,
      src/tgbaalgos/eltl2tgba_lacim.cc,
      src/tgbaalgos/eltl2tgba_lacim.hh, src/tgbaalgos/emptiness.cc,
      src/tgbaalgos/gtec/gtec.cc, src/tgbaalgos/ltl2taa.cc,
      src/tgbaalgos/ltl2taa.hh, src/tgbaalgos/ltl2tgba_lacim.cc,
      src/tgbaalgos/neverclaim.cc, src/tgbaalgos/neverclaim.hh,
      src/tgbaalgos/powerset.cc, src/tgbaalgos/reachiter.cc,
      src/tgbaalgos/reachiter.hh, src/tgbaalgos/reductgba_sim.cc,
      src/tgbaalgos/reductgba_sim.hh,
      src/tgbaalgos/reductgba_sim_del.cc, src/tgbaalgos/stats.cc,
      src/tgbaalgos/stats.hh, src/tgbaparse/Makefile.am,
      src/tgbaparse/tgbaparse.yy, src/tgbatest/Makefile.am,
      src/tgbatest/bddprod.test, src/tgbatest/complementation.cc,
      src/tgbatest/complementation.test, src/tgbatest/defs.in,
      src/tgbatest/dfs.test, src/tgbatest/dupexp.test,
      src/tgbatest/explicit.cc, src/tgbatest/explicit.test,
      src/tgbatest/explpro3.test, src/tgbatest/explpro4.test,
      src/tgbatest/explprod.cc, src/tgbatest/explprod.test,
      src/tgbatest/ltl2neverclaim.test, src/tgbatest/ltl2tgba.cc,
      src/tgbatest/ltl2tgba.test, src/tgbatest/ltlprod.cc,
      src/tgbatest/ltlprod.test, src/tgbatest/mixprod.cc,
      src/tgbatest/mixprod.test, src/tgbatest/powerset.cc,
      src/tgbatest/readsave.cc, src/tgbatest/readsave.test,
      src/tgbatest/reduccmp.test, src/tgbatest/reductgba.cc,
      src/tgbatest/reductgba.test, src/tgbatest/taatgba.cc,
      src/tgbatest/tgbaread.cc, src/tgbatest/tgbaread.test,
      src/tgbatest/tripprod.cc, src/tgbatest/tripprod.test,
      wrap/python/cgi/ltl2tgba.in, wrap/python/tests/ltl2tgba.py,
      wrap/python/tests/ltlparse.py, wrap/python/tests/ltlsimple.py:
      Fix copyrights.
      3a974d61