1. 08 Jun, 2013 1 commit
    • Alexandre Duret-Lutz's avatar
      Move \ingroup before \brief in all Doxygen comments. · 1ec9cebe
      Alexandre Duret-Lutz authored
      Using \ingroup between \brief and the rest of the documentation causes
      Doxygen to concatenate the brief with the rest of the doc.
      
      * src/sanity/style.test: Warn when \ingroup is found
      on the line after \brief.
      * src/kripke/fairkripke.hh, src/kripke/kripke.hh,
      src/kripke/kripkeprint.hh, src/ltlast/atomic_prop.hh,
      src/ltlast/automatop.hh, src/ltlast/binop.hh, src/ltlast/bunop.hh,
      src/ltlast/constant.hh, src/ltlast/formula.hh, src/ltlast/multop.hh,
      src/ltlast/refformula.hh, src/ltlast/unop.hh, src/ltlast/visitor.hh,
      src/ltlenv/declenv.hh, src/ltlenv/defaultenv.hh,
      src/ltlenv/environment.hh, src/ltlparse/ltlfile.hh,
      src/ltlvisit/clone.hh, src/ltlvisit/destroy.hh, src/ltlvisit/dotty.hh,
      src/ltlvisit/dump.hh, src/ltlvisit/length.hh, src/ltlvisit/lunabbrev.hh,
      src/ltlvisit/mark.hh, src/ltlvisit/nenoform.hh, src/ltlvisit/postfix.hh,
      src/ltlvisit/randomltl.hh, src/ltlvisit/reduce.hh,
      src/ltlvisit/relabel.hh, src/ltlvisit/simpfg.hh,
      src/ltlvisit/simplify.hh, src/ltlvisit/tunabbrev.hh,
      src/ltlvisit/wmunabbrev.hh, src/misc/bddalloc.hh, src/misc/bddlt.hh,
      src/misc/freelist.hh, src/misc/hash.hh, src/misc/ltstr.hh,
      src/misc/minato.hh, src/misc/modgray.hh, src/misc/optionmap.hh,
      src/misc/version.hh, src/saba/explicitstateconjunction.hh,
      src/saba/saba.hh, src/saba/sabacomplementtgba.hh, src/saba/sabastate.hh,
      src/saba/sabasucciter.hh, src/sabaalgos/sabadotty.hh,
      src/sabaalgos/sabareachiter.hh, src/ta/ta.hh, src/ta/taproduct.hh,
      src/ta/tgta.hh, src/taalgos/reachiter.hh, src/taalgos/tgba2ta.hh,
      src/tgba/futurecondcol.hh, src/tgba/sba.hh, src/tgba/state.hh,
      src/tgba/succiter.hh, src/tgba/tgba.hh, src/tgba/tgbabddconcrete.hh,
      src/tgba/tgbabddconcreteproduct.hh, src/tgba/tgbakvcomplement.hh,
      src/tgba/tgbaproduct.hh, src/tgba/tgbasafracomplement.hh,
      src/tgba/tgbascc.hh, src/tgba/tgbasgba.hh, src/tgba/tgbatba.hh,
      src/tgba/tgbaunion.hh, src/tgba/wdbacomp.hh, src/tgbaalgos/bfssteps.hh,
      src/tgbaalgos/degen.hh, src/tgbaalgos/dotty.hh,
      src/tgbaalgos/dottydec.hh, src/tgbaalgos/dupexp.hh,
      src/tgbaalgos/eltl2tgba_lacim.hh, src/tgbaalgos/lbtt.hh,
      src/tgbaalgos/ltl2taa.hh, src/tgbaalgos/ltl2tgba_fm.hh,
      src/tgbaalgos/ltl2tgba_lacim.hh, src/tgbaalgos/neverclaim.hh,
      src/tgbaalgos/powerset.hh, src/tgbaalgos/projrun.hh,
      src/tgbaalgos/randomgraph.hh, src/tgbaalgos/reachiter.hh,
      src/tgbaalgos/reducerun.hh, src/tgbaalgos/replayrun.hh,
      src/tgbaalgos/rundotdec.hh, src/tgbaalgos/save.hh,
      src/tgbaalgos/stripacc.hh, src/tgbaalgos/translate.hh: Move \ingroup
      before \brief.
      1ec9cebe
  2. 22 May, 2013 1 commit
  3. 17 May, 2013 1 commit
  4. 12 May, 2013 6 commits
    • Alexandre Duret-Lutz's avatar
      ltlcross: add a --products=N option · 9b82d755
      Alexandre Duret-Lutz authored
      * src/bin/ltlcross.cc: Implement the new option.  Average the product
      statistics on all products.
      * src/tgbatest/basimul.test, src/tgbatest/ltlcross.test,
      src/tgbatest/ltlcross2.test, bench/ltl2tgba/tools: Use the new option.
      * NEWS: Mention it.
      9b82d755
    • Alexandre Duret-Lutz's avatar
      bdddict: add an unregister_all_typed_variables() method · b4670f85
      Alexandre Duret-Lutz authored
      * src/tgba/bdddict.cc, src/tgba/bdddict.hh
      (unregister_all_typed_variables): New method.
      * src/tgbaalgos/degen.cc (degeneralize): Use it.
      * NEWS: Mention it.
      b4670f85
    • Alexandre Duret-Lutz's avatar
      simulation: Fix co-simulation and iterated simulations of BA automata · 0c7c9338
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/simulation.hh, src/tgbaalgos/simulation.cc
      (simulation_sba, cosimulation_sba, iterated_simulations_sba): New
      function.  Also speedup the existing functions by avoiding
      add_acceptince_conditions() and add_conditions().  Finally, use
      scc_filter_states() when dealing with degeneralized automata.
      * src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh (do_ba_simul):
      New method.  Use it after degeneralization.
      * src/tgba/tgbaexplicit.hh (get_transition, get_state): New methods.
      * src/tgbatest/basimul.test: New file.
      * src/tgbatest/Makefile.am (TESTS): Add it.
      * NEWS: Introduce the new function and summarize the bug.
      0c7c9338
    • Alexandre Duret-Lutz's avatar
      bin: Ignore empty lines on input. · 372790a4
      Alexandre Duret-Lutz authored
      * src/bin/common_finput.cc: Here.
      * src/ltltest/ltlfilt.test: Test it.
      * NEWS: Mention it.
      372790a4
    • Alexandre Duret-Lutz's avatar
      ltlcross: Add a --seed option. · 9e589422
      Alexandre Duret-Lutz authored
      * src/bin/ltlcross.cc: Here.
      * NEWS: Mention it.
      9e589422
    • Alexandre Duret-Lutz's avatar
      Introduce scc_filter_states(). · 6b5b002f
      Alexandre Duret-Lutz authored
      The main motivation is the upcoming patch that introduces
      simulation_sba() and requires this function.
      
      * src/tgbaalgos/sccfilter.hh, src/tgbaalgos/sccfilter.cc: Implement it.
      * src/tgbaalgos/postproc.cc: Use it for monitors, because we do not
      care about acceptance conditions.
      * NEWS: Mention it.
      6b5b002f
  5. 11 May, 2013 1 commit
  6. 09 May, 2013 1 commit
    • Alexandre Duret-Lutz's avatar
      lbtt: improve the LBTT output · eed7e2df
      Alexandre Duret-Lutz authored
      Provide a way to output automata with state-based acceptance.  Also
      print the guards using to_lbt_string() for consistency: as a
      consequence, atomic proposition that do not match p[0-9]+ are now
      double-quoted.
      
      * src/tgbaalgos/lbtt.hh (lbtt_reachable): Add a sba option.
      * src/tgbaalgos/lbtt.cc: Implement it, and use to_lbt_string().
      * src/ltlvisit/lbt.cc (is_pnum): Reject 'p' without number.
      * src/bin/ltl2tgba.cc: Activate the sba option of --ba was given.
      Add an option --lbtt=t to get the old behavior.
      * src/bin/man/ltl2tgba.x: Document the LBTT format we use with
      some links and examples.
      * src/tgbatest/lbttparse.test: More tests.
      * src/tgbatest/ltlcross2.test: Add a check with --lbtt --ba.
      * NEWS: Update.
      eed7e2df
  7. 30 Apr, 2013 1 commit
    • Alexandre Duret-Lutz's avatar
      Fix genltl --gh-r · e2378b49
      Alexandre Duret-Lutz authored
      Reported by František Blahoudek.
      
      * src/bin/genltl.cc (R_n): Really generate (GFp1 || FGp2), not
      (GFp1 || GFp2).
      * NEWS: Mention the bug.
      * THANKS: Update.
      e2378b49
  8. 28 Apr, 2013 2 commits
  9. 27 Apr, 2013 9 commits
    • Alexandre Duret-Lutz's avatar
      ltlcross: count SCCs of various strenghts · fec939c1
      Alexandre Duret-Lutz authored
      * src/bin/ltlcross.cc: Implement the counters.
      * doc/org/ltlcross.org: Update the documentation.
      * bench/ltl2tgba/sum.py: Do not assume a fixed column for the time.
      * NEWS: Update.
      fec939c1
    • Alexandre Duret-Lutz's avatar
      isweakscc: cleanup interfaces and code · cb7cd868
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/isweakscc.cc, src/tgbaalgos/isweakscc.hh: Do not pass
      automata since they are known from the scc.  Avoid several dynamic
      casts.  Try to match the established vocabulary wrt "weak" and
      "inherently weak".  The old is_weak_scc() that used to enumerate cycles
      is therefore renamed to is_inherently_weak_scc(), while the new
      is_weak_scc() will should ensure all transitions are fully accepting.
      * NEWS: Mention the new interface.
      cb7cd868
    • Etienne Renault's avatar
      Heuristics for SCC strength · 450ec22b
      Etienne Renault authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      Provides 3 heurisitics to compute the strength of an SCC:
      inherent, structural and syntactic
      
      * src/tgbaalgos/isweakscc.cc: implementation
      * src/tgbaalgos/isweakscc.hh: definition
      450ec22b
    • Etienne Renault's avatar
      Fix Warning GCC 4.8 · b4fbbc95
      Etienne Renault authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/tgbatest/taatgba.cc: Remove unused typedef
      b4fbbc95
    • Alexandre Duret-Lutz's avatar
      Implement a favor_even_univ option in the rewriting rules. · 9caa9ad1
      Alexandre Duret-Lutz authored
      The set of rules enabled by favor_even_univ try to "lift" the
      subformulae that are both eventual and universal, so they appear
      higher in the AST.  This is contrary to what we used to do (and still
      do when the option is unset), were we try to postpone such subformulae
      (by moving them down the AST).  It is still a bit experimental.
      
      * src/ltlvisit/simplify.hh: Add option favor_event_univ.
      * src/ltlvisit/simplify.cc: Implement new rewriting rules.
      * doc/tl/tl.tex: Document them.
      * src/tgbatest/ltl2tgba.cc: Add option -ra to enable them.
      * src/tgbatest/spotlbtt.test: Test the translation with this option.
      * src/ltltest/reduc.cc, src/ltltest/equals.cc: Add option
      to enable the new rules.
      * src/ltltest/eventuniv.test: New file to test them.
      * src/ltltest/Makefile.am: Add it.
      9caa9ad1
    • Alexandre Duret-Lutz's avatar
      translate: use compositional suspension on request · b6d4806d
      Alexandre Duret-Lutz authored
      This has to be turned on using "-x comp-susp" and other
      related options documented in spot-x (7).
      
      * src/tgbaalgos/translate.hh, src/tgbaalgos/translate.cc:
      Add support for calling composition-suspension, with
      optional simulation, WDBA-minimization, and composition.
      * src/bin/spot-x.cc: Document the new options.
      * src/bin/man/spot-x.x: Add some bibliography.
      * src/tgbatest/ltlcross2.test: Test it.
      b6d4806d
    • Alexandre Duret-Lutz's avatar
      scc_filter: Improve selection of missing acceptance sets. · 88cd376d
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/sccfilter.cc: Reuse existing acceptance set as filler
      in SCC sets that need less SCC sets than the other SCCs automaton.
      * src/tgbatest/sccsimpl.test: Add more tests.
      88cd376d
    • Alexandre Duret-Lutz's avatar
      postproc: Perform simulation on the BA in --high mode. · 4c2791e0
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh: Do simulation
      on the BA produced in --high mode.
      * src/bin/spot-x.cc: Document the ba-simul option that can be used
      to disable it.
      4c2791e0
    • Alexandre Duret-Lutz's avatar
      Introduce compositional suspension (SPIN'13) · 53c69235
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/compsusp.cc, src/tgbaalgos/compsusp.hh: New files.
      * src/tgbaalgos/Makefile.am: Add them.
      * src/tgbaalgos/sccfilter.cc, src/tgbaalgos/sccfilter.hh: Add option
      for suspended labels removal.
      * src/tgbatest/ltl2tgba.cc, src/tgbatest/spotlbtt.test: Test it.
      53c69235
  10. 15 Apr, 2013 1 commit
  11. 09 Apr, 2013 16 commits
    • Alexandre Duret-Lutz's avatar
    • Alexandre Duret-Lutz's avatar
      remove_x: Implement detection of stutter-invariant LTL formulas. · a7bfb42d
      Alexandre Duret-Lutz authored
      * src/bin/ltlfilt.cc: Add options --remove-x and --stutter-invariant.
      * src/ltlvisit/remove_x.cc, src/ltlvisit/remove_x.hh: New files.
      * src/ltlvisit/Makefile.am: Add them.
      * src/ltltest/remove_x.test: New file.
      * src/ltltest/Makefile.am: Add it.
      * NEWS: Mention the new algorithms.
      a7bfb42d
    • Alexandre Duret-Lutz's avatar
      8896c3d5
    • Alexandre Duret-Lutz's avatar
      ltlscan: get rid of boost::lexical_cast · 9145515b
      Alexandre Duret-Lutz authored
      This is one less useless dependency on Boost.
      
      * src/ltlparse/ltlscan.ll: Replace lexical_cast<unsigned>() by
      strtoul().
      * src/ltltest/parseerr.test: Add a test case.
      9145515b
    • Alexandre Duret-Lutz's avatar
      Introduce a translator class. · c5b7e8e1
      Alexandre Duret-Lutz authored
      This perform pre- and post-processings in addition to
      the LTL-to-TGBA translation.
      
      * src/tgbaalgos/translate.cc, src/tgbaalgos/translate.hh: New files.
      * src/tgbaalgos/Makefile.am: Add them.
      * src/tgbaalgos/postproc.hh: Make the private part protected, so
      that we can inherit from that in the translator class.
      * src/bin/ltl2tgba.cc: Use the translator class to hide LTL
      simplification, translation, and postprocessings.
      * NEWS: Mention it.
      c5b7e8e1
    • Alexandre Duret-Lutz's avatar
      ltl2tgta: Honor -x as well · 276f9108
      Alexandre Duret-Lutz authored
      * src/bin/ltl2tgta.cc: Honor -x.
      * src/bin/man/ltl2tgta.x, src/bin/man/spot-x.x: Add cross references.
      276f9108
    • Alexandre Duret-Lutz's avatar
      spot-x.7: new man page for common fine-tuning options · d78670ad
      Alexandre Duret-Lutz authored
      * src/bin/spot-x.cc, src/bin/man/spot-x.x: New files.
      * src/bin/Makefile.am, src/bin/man/Makefile.am: Adjust.
      * src/bin/man/ltl2tgba.x: Remove all fine-tuning options,
      and make a reference spot spot-x (7).
      * src/bin/common_setup.hh, src/bin/common_setup.cc: Add
      a misc_argp_hidden version of the option, so that --help
      and --version are not shown in the --help output used
      by help2man to generate spot-x.7.
      * src/bin/ltl2tgba.cc: Refer to spot-x.7.
      d78670ad
    • Alexandre Duret-Lutz's avatar
      simulation: many fixes. · 1337c9c3
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/simulation.cc: Attempt to fix several cases.
      * src/tgbatest/sim.test: Add more tests.
      * src/tgbatest/sim2.test: New file.
      * src/tgbatest/Makefile.am: Add it.
      1337c9c3
    • Alexandre Duret-Lutz's avatar
      postproc: add an scc-filter option · a965af71
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh: Add an
      scc-filter option.
      * src/bin/man/ltl2tgba.x: Document it.
      a965af71
    • Alexandre Duret-Lutz's avatar
      postproc: add some experimental don't care options · bc7a2865
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh: Add a
      "simul-limit" option, and add two new cases to "simul"
      for the two don't care simulation
      * src/bin/man/ltl2tgba.x: Mention the new options.
      bc7a2865
    • Alexandre Duret-Lutz's avatar
      ca941685
    • Thomas Badie's avatar
      Add the "don't care" simulation · 08c77318
      Thomas Badie authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/tgba/bddprint.cc, src/tgba/bddprint.hh: Add bdd_print_isop
      that prints the bdd into a Irreductible Sum Of Product.
      * src/tgbaalgos/dupexp.cc, src/tgbaalgos/dupexp.hh: Add a way to
      know which states (in the input) is which (in the result).
      * src/tgbaalgos/simulation.cc, src/tgbaalgos/simulation.hh: Add
      the Don't Care Simulation and the Don't Care Iterated Simulation.
      * src/tgbatest/ltl2tgba.cc, src/tgbatest/spotlbtt.test,
      src/tgbatest/Makefile.am, src/tgbatest/sim.test: Test them.
      * bench/ltl2tgba/algorithms, bench/ltl2tgba/README,
      bench/ltl2tgba/algorithms: Add a way to bench the don't care
      simulation.
      08c77318
    • Alexandre Duret-Lutz's avatar
      postproc: add a "simul" option to select the simulation algorithm · 5796114e
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/postproc.hh, src/tgbaalgos/postproc.cc: Honor the
      "simul" option in the option_map.
      (do_simul, do_degen): New method to wrap the algorithms that may be
      altered via option_map.
      * src/bin/man/ltl2tgba.x (simul): Document this option.
      5796114e
    • Alexandre Duret-Lutz's avatar
      sccfilter: ignore more acceptance conditions · c46891ed
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/sccfilter.cc: Compute useless variable SCC-wise, then
      renumber the useful variables so that they can be shared between SCCs.
      * src/tgbatest/sccsimpl.test, src/tgbatest/ltl2ta.test: Adjust test
      cases.
      c46891ed
    • Alexandre Duret-Lutz's avatar
      postproc: Add an option_map parameter · 05e59a9e
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/postproc.cc: Add an option_map parameter, and use to get
      extra options to pass to the degeneralization algorithm.
      * src/tgbaalgos/postproc.hh: Adjust prototype, and store Boolean
      variables for degeneralize() options.
      * src/bin/ltl2tgba.cc: Add a -x option to fill the option map, and pass
      it to the postprocessor.
      * src/bin/man/ltl2tgba.x: Document the three degeneralization options.
      05e59a9e
    • Alexandre Duret-Lutz's avatar
      degen: fix a memory leak · 1b2f9fe5
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/degen.cc (degeneralize): Do not call i->current_state()
      to get the current SCC, as we already have the state in d.first.
      1b2f9fe5