1. 12 May, 2013 1 commit
    • 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
  2. 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
  3. 27 Apr, 2013 6 commits
    • 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
      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
    • 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
  4. 09 Apr, 2013 14 commits
    • 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
      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
      * 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
    • Alexandre Duret-Lutz's avatar
      63cb925f
    • Alexandre Duret-Lutz's avatar
      degen: disable custom order by default · 73ee5044
      Alexandre Duret-Lutz authored
      Because benchmark show that this option usually do not help.
      
      * src/tgbaalgos/degen.hh, src/tgbatest/ltl2tgba.cc: Here.
      * src/tgbaalgos/degen.hh: Document the new options.
      73ee5044
    • Alexandre Duret-Lutz's avatar
      degen: small fixups and interface with ltl2tgba · c04951c4
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/degen.cc: Fixups.
      * src/tgbatest/ltl2tgba.cc: Add switches to enable/disable
      the options Tomáš added to degeneralize().
      c04951c4
    • Tomáš Babiak's avatar
      degen: introduce three optimizations · 774a266b
      Tomáš Babiak authored
      * src/tgbaalgos/degen.cc, src/tgbaalgos/degen.hh: Add three
      options use_z_level, use_cust_acc_orders, and use_lvl_cache.
      774a266b
  5. 04 Apr, 2013 1 commit
  6. 05 Mar, 2013 1 commit
    • Alexandre Duret-Lutz's avatar
      cgi: Add an nondeterministic monitor option · abb51705
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/postproc.hh (run): Rename the first argument as
      input_disown to help Swig.
      * wrap/python/spot.i: Wrap spot::postprocessor.
      * wrap/python/ajax/ltl2tgba.html, wrap/python/ajax/protocol.txt:
      Add an option for nondeterministic monitor.
      * wrap/python/ajax/spot.in: Honor the new option, and rewrite the
      monitor production using postprocessor.
      abb51705
  7. 21 Jan, 2013 3 commits
  8. 17 Jan, 2013 2 commits
  9. 24 Dec, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      Address several issues reported by cppcheck all over the place. · a577850e
      Alexandre Duret-Lutz authored
      * src/bin/common_finput.cc, src/tgbaalgos/lbtt.cc: Use !empty() instead
      of size() > 0.
      * src/bin/ltl2tgta.cc, src/kripke/kripkeexplicit.cc,
      src/tgbatest/complementation.cc: Avoid useless assignments.
      * src/bin/ltlcross.cc: Correct mistaken assignment inside assert().
      * src/evtgba/symbol.hh, src/tgba/tgbabddcoredata.cc,
      src/tgba/tgbabddcoredata.hh,
      src/tgba/tgbasafracomplement.cc (operator=): Do not return a const
      reference.
      * src/evtgbatest/ltl2evtgba.cc, src/evtgbatest/product.cc,
      src/evtgbatest/product.cc: Check indices before using them, not after.
      * src/kripke/kripkeexplicit.cc, src/kripke/kripkeexplicit.hh,
      src/tgbatest/randtgba.cc: Pass constant strings by reference.
      * src/kripke/kripkeprint.cc, src/tgbaalgos/simulation.cc:
      Remove a useless operation.
      * src/ltlvisit/simplify.cc: Remove a duplicate condition.
      * src/misc/formater.hh: Remove unused attribute.
      * src/misc/modgray.cc: Initialize done_ in the constructor.
      * src/saba/explicitstateconjunction.cc,
      src/saba/explicitstateconjunction.hh (operator=): Fix prototype.
      * src/saba/sabacomplementtgba.cc: Remove unused default constructor.
      * src/ta/taexplicit.cc, src/ta/taproduct.cc, src/ta/tgtaproduct.cc,
      src/ta/tgtaproduct.hh, src/taalgos/emptinessta.cc,
      src/taalgos/minimize.cc, src/taalgos/reachiter.cc,
      src/taalgos/tgba2ta.cc, src/tgbaalgos/cutscc.cc: Use C++ casts, and
      ++it instead of it++.
      * src/taalgos/dotty.cc, src/tgbatest/ltl2tgba.cc: Refine the scope of
      variables.
      * src/tgba/tgbakvcomplement.hh (bdd_order): Always initialize bdd_.
      * src/tgba/tgbasgba.cc, src/tgba/wdbacomp.cc: Use the initialization
      line to initialize all members.
      a577850e
  10. 19 Dec, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      Cosmetics. · aa2374c5
      Alexandre Duret-Lutz authored
      * src/sanity/style.test: Catch extra space around operator declarations.
      * src/ltlast/automatop.hh, src/ltlast/multop.hh,
      src/tgba/tgbabddcoredata.cc, src/tgba/tgbabddcoredata.hh,
      src/tgbaalgos/simulation.cc: Fix them.
      aa2374c5
  11. 14 Nov, 2012 1 commit
    • Thomas Badie's avatar
      Fix non determinism in the simulation. · d10e772d
      Thomas Badie authored
      * src/tgbaalgos/simulation.cc: Fix non determinism.
      * src/tgbatest/simdet.test: Test that the behavior is now correct.
      * src/tgbatest/Makefile.am (TESTS): Add the new test to the
      test-suite.
      d10e772d
  12. 26 Oct, 2012 1 commit
  13. 24 Oct, 2012 1 commit
  14. 21 Oct, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      postproc: add the possibility to output a monitor · 76787b23
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/stripacc.cc, src/tgbaalgos/stripacc.hh: New files.
      * src/tgbaalgos/Makefile.am: Add them.
      * src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh: Add a Monitor
      output option.
      * src/bin/ltl2tgba.cc: Add a --monitor/-M option.
      * NEWS: Mention monitors.
      * src/tgba/tgbaexplicit.hh (is_accepting_state): Fix for the
      case where the automaton has no acceptance set.
      76787b23
  15. 19 Oct, 2012 1 commit
  16. 18 Oct, 2012 1 commit
  17. 13 Oct, 2012 3 commits