1. 02 May, 2011 1 commit
  2. 15 Apr, 2011 1 commit
  3. 13 Apr, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      Fix compression of large repetitions · 445a785e
      Alexandre Duret-Lutz authored
      * src/misc/intvcomp.cc (stream_compression_base::run): Limit
      repeatitions to 40, not 42.
      (stream_decompression_base::refill): Refill the end of the stream
      with 0.
      (stream_decompression_base::look_n_bits): Add assertion.
      * src/tgbatest/intvcomp.cc: Add a new test case.
      445a785e
  4. 12 Apr, 2011 1 commit
  5. 10 Apr, 2011 2 commits
  6. 09 Apr, 2011 6 commits
  7. 04 Apr, 2011 1 commit
  8. 03 Apr, 2011 1 commit
  9. 31 Mar, 2011 3 commits
    • Alexandre Duret-Lutz's avatar
      Introduct a down_cast macro. · 9f63bb66
      Alexandre Duret-Lutz authored
      * src/misc/casts.hh: New file.
      * src/misc/Makefile.am: Add it.
      * iface/dve2/dve2.cc, iface/gspn/gspn.cc, iface/gspn/ssp.cc,
      src/evtgba/explicit.cc, src/evtgba/product.cc, src/misc/casts.hh,
      src/tgba/state.hh, src/tgba/statebdd.cc, src/tgba/taatgba.cc,
      src/tgba/taatgba.hh, src/tgba/tgbabddconcrete.cc,
      src/tgba/tgbaexplicit.cc, src/tgba/tgbaexplicit.hh,
      src/tgba/tgbakvcomplement.cc, src/tgba/tgbaproduct.cc,
      src/tgba/tgbasafracomplement.cc, src/tgba/tgbasgba.cc,
      src/tgba/tgbatba.cc, src/tgba/tgbaunion.cc, src/tgba/wdbacomp.cc,
      src/tgbaalgos/ndfs_result.hxx, src/tgbaalgos/reductgba_sim.cc,
      src/tgbaalgos/reductgba_sim_del.cc: Use down_cast when
      appropriate.
      9f63bb66
    • Alexandre Duret-Lutz's avatar
      Cosmetics. · 12783ff7
      Alexandre Duret-Lutz authored
      * src/sanity/style.test: Catch some binary operators not
      delimited with spaces.
      * src/tgbaalgos/bfssteps.cc, src/tgbaalgos/magic.cc,
      src/tgbaalgos/reducerun.cc, src/tgbaalgos/se05.cc,
      src/tgbaalgos/tau03.cc, src/tgbaalgos/tau03opt.cc: Fix these.
      12783ff7
    • Alexandre Duret-Lutz's avatar
      Make state_explicit instances persistent objects. · 36f7c648
      Alexandre Duret-Lutz authored
      * src/tgba/tgbaexplicit.cc, src/tgba/tgbaexplicit.hh: Merge
      state_explicit and tgba_explicit::state.  In the past,
      state_explicit was a small object encapsulating a pointer to the
      persistent tgba_explicit::state; and we used to clone() and
      destroy() a lot of state_explicit instance.  Now state_explicit is
      persistent, and clone() and destroy() have no effects.
      * src/tgba/tgbareduce.cc: Adjust, since this inherits from
      tgbaexplicit and uses the internals of state_explicit.
      * src/tgbatest/reductgba.cc: Fix deletion order for automata.
      * src/tgba/tgba.hh (last_support_conditions_input_,
      last_support_variables_input_): Make these protected, so
      they can be zeroed by tgba_explicit.
      36f7c648
  10. 30 Mar, 2011 4 commits
    • Alexandre Duret-Lutz's avatar
      Remove tgba_reduc::format_state(). · cd900a40
      Alexandre Duret-Lutz authored
      * src/tgba/tgbareduc.cc, src/tgba/tgbareduc.hh (format_state):
      Remove this useless copy of the tgba_explicit_string::format_state
      method.
      cd900a40
    • Alexandre Duret-Lutz's avatar
      Protect the state destructor. · 29a908cc
      Alexandre Duret-Lutz authored
      Client code should always call the destroy() method instead.  (It
      was introduced in Spot 0.7.)
      
      * src/tgba/state.hh (state::~state): Make it protected.
      29a908cc
    • Alexandre Duret-Lutz's avatar
      Speedup tgba_product when one of the argument is a Kripke structure. · 94ac863c
      Alexandre Duret-Lutz authored
      The gain is not very impressive.  The runtime of the first example
      in iface/dve2/README (also in dve2check.test) is 15% faster.
      
      * src/tgba/tgbaproduct.hh (tgba_succ_iterator_product): Move ...
      * src/tgba/tgbaproduct.cc (tgba_succ_iterator_product,
      tgba_succ_iterator_product_common): ... in these two classes.
      (tgba_succ_iterator_product_kripke): New class to speedup
      successor computation on Kripke structures.  We can assume that
      all the transitions leaving the same state have the same label.
      (tgba_product::tgba_product, tgba_product::succ_iter): Use
      tgba_succ_iterator_product_kripke when appropriate.
      (tgba_product_init::tgba_product_init): Adjust for the case
      where tgba_product did reverse its operands.
      94ac863c
    • Alexandre Duret-Lutz's avatar
  11. 21 Mar, 2011 1 commit
  12. 17 Mar, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      Improve a reduction rule for "a M b". · 1878bfd0
      Alexandre Duret-Lutz authored
      * src/ltlvisit/reduce.cc (reduce_visitor): Always reduce "a M b"
      to "a & b" if "a" is a pure eventual formula, remove the
      constraint on "b".
      * src/ltltest/reduccmp.test: Add two tests.
      1878bfd0
  13. 07 Mar, 2011 2 commits
    • Alexandre Duret-Lutz's avatar
      Clear the timer map to help valgrind. · 0584d278
      Alexandre Duret-Lutz authored
      * src/misc/timer.hh (reset_all): New method.
      * iface/dve2/dve2check.cc: Use it to help valgrind.
      0584d278
    • Alexandre Duret-Lutz's avatar
      Allow atomic propositions and identifiers like `X.Y'. · 4a622249
      Alexandre Duret-Lutz authored
      * src/ltlparse/ltlscan.ll: Do not recognize `.' as an AND.  Allow
      it in atomic propositions.
      * src/evtgbaparse/evtgbascan.ll, src/tgbaparse/tgbascan.ll: Accept
      `.' in identifiers.
      * src/misc/bareword.cc (is_bareword): Accept `.' inside
      barewords, so that there is no need to quote `X.Y'.
      * src/ltltest/parse.test: Do not use `.' as and operator..
      4a622249
  14. 05 Mar, 2011 2 commits
    • Alexandre Duret-Lutz's avatar
      Using double borders for acceptance states in SBAs. · e1ef47d9
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/dotty.hh (dotty_reachable): Take a new
      assume_sba argument.
      * src/tgbaalgos/dotty.cc (dotty_bfs): Take a new
      mark_accepting_states arguments.
      (dotty_bfs::process_state): Check if a state is accepting using
      the state_is_accepting() method for tgba_sba_proxies, or by
      looking at the first outgoing transition of the state.  Pass
      the result to the dectorator.
      (dotty_reachable): Adjust function.
      * src/tgbaalgos/dottydec.hh, src/tgbaalgos/dottydec.cc,
      src/tgbaalgos/rundotdec.hh, src/tgbaalgos/rundotdec.cc
      (state_decl): Add an "accepting" argument, and use it to
      decorate accepting states with a double border.
      * src/tgbatest/ltl2tgba.cc: Keep track of whether the output
      is an SBA or not, so that we can tell it to dotty().
      * wrap/python/ajax/spot.in: Likewise.
      * wrap/python/cgi-bin/ltl2tgba.in: Likewise.
      e1ef47d9
    • Alexandre Duret-Lutz's avatar
      2c5bae3d
  15. 04 Mar, 2011 1 commit
  16. 01 Mar, 2011 1 commit
  17. 21 Feb, 2011 2 commits
  18. 14 Feb, 2011 1 commit
  19. 10 Feb, 2011 1 commit
  20. 09 Feb, 2011 2 commits
  21. 08 Feb, 2011 1 commit
  22. 07 Feb, 2011 1 commit
  23. 06 Feb, 2011 1 commit
  24. 04 Feb, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      Add a way to count the number of sub-transitions. · 30727074
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/stats.hh (tgba_sub_statistics): New class.
      (sub_stats_reachable): New function.
      * src/tgbaalgos/stats.cc (sub_stats_bfs): New class.
      (tgba_sub_statistics::dump, sub_stats_reachable): New function.
      * src/tgbatest/ltl2tgba.cc (-kt): New option.
      * src/tgbatest/ltl2tgba.test: Use -kt.
      30727074
  25. 03 Feb, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      Read guard of the form !(x) in neverclaims. · 91e51c4c
      Alexandre Duret-Lutz authored
      So far all neverclaims encountered would use (!(x)), but the
      files from the Büchi store do not.
      
      * src/neverparse/neverclaimscan.ll: Accept ! in front of guard,
      so that we can read Promela files from Goal's Büchi store.
      * src/tgbatest/neverclaimread.test: Test it.
      91e51c4c