1. 30 Mar, 2011 2 commits
  2. 29 Mar, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      Include <cstddef> in python modules to workaround Swig bug. · 35a01937
      Alexandre Duret-Lutz authored
      * wrap/python/spot.i, wrap/python/buddy.i: Include <cstddef>
      because Swig 2.0.2 uses ptrdiff_t and does not do the include
      itself.  In g++ most libstdc++ standard headers have been changed
      to no longer include <cstddef> as an implementation detail, so
      the difference shows.
      35a01937
  3. 21 Mar, 2011 2 commits
  4. 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
  5. 11 Mar, 2011 1 commit
  6. 10 Mar, 2011 2 commits
    • Alexandre Duret-Lutz's avatar
      Add support for finite behaviors in the DVE interface. · cb83e855
      Alexandre Duret-Lutz authored
      * iface/dve2/dve2.hh (load_dve2): Take a "dead" argument.
      * iface/dve2/dve2.cc (callback_context): Add a destructor
      to simplify...
      (dve2_succ_iterator::~dve2_succ_iterator) ... this one.
      (convert_aps): Skip the dead proposition.
      (dve2_kripke::dve2_kripke): Take a dead argument, and
      setup alive_prop and dead_prop.
      (compute_state_condition, get_succ): Use a cache for the
      conditions and successor of the last state, to share
      some work between these two function.  Add loops on dead
      states.
      (load_dve2): Pass dead to dve2_kripke and convert_aps.
      * iface/dve2/dve2check.cc: Add a -dDEAD option.
      * iface/dve2/finite.test, iface/dve2/finite.dve: New file.
      * iface/dve2/Makefile.am: Declare them.
      cb83e855
    • Alexandre Duret-Lutz's avatar
      * iface/dve2/dve2.cc (convert_aps): Fix two typos while · ef976c93
      Alexandre Duret-Lutz authored
      parsing >= and >, mistakenly registered as <= and <.
      ef976c93
  7. 07 Mar, 2011 9 commits
  8. 06 Mar, 2011 4 commits
    • Alexandre Duret-Lutz's avatar
      Teach the DVE2 interface about enumerated types. · 7b5879d2
      Alexandre Duret-Lutz authored
      * iface/dve2/dve2.cc (convert_aps): Add support for
      enumerated types.  E.g. an atomic proposition such
      as "P_0.CS" really means "P_0 == CS".
      7b5879d2
    • Alexandre Duret-Lutz's avatar
      Teach the DVE2 interface about atomic propositions such as "a <= · 8136bd41
      Alexandre Duret-Lutz authored
      10" or "b != 3".  This only work for integer variables presently.
      
      * iface/dve2/dve2.hh (load_dve2): Take an atomic_prop_set
      argument to indicate the AP to observe.
      * iface/dve2/dve2.cc (convert_aps): New function.  Parse the
      atomic propositions in format them in a prop_set structure that
      will allow fast generation of the state condition.
      (load_dve2): Call convert_aps, and pass the resulting prop_set
      structure to the kripke object.
      (dve2_kripke::dve2_kripke): Store the prop_set structure.
      (dve2_kripke::~dve2_kripke): Release the prop_set, and unregister
      the bdd_variable associated to it.
      (compute_state_condition): New method that uses the prop_set.
      (succ_iter, state_condition): Call compute_state_condition().
      * iface/dve2/dve2check.cc: Adjust the call to load_dve2 to
      pass it atomic propositions read from the command line.
      8136bd41
    • Alexandre Duret-Lutz's avatar
      Display states variables in the state label. · 5a76a7bb
      Alexandre Duret-Lutz authored
      * iface/dve2/dve2.cc (dve2_kripke::dve2_kripke): Retrieve
      the name of all the state variables.
      (dve2_kripke::format_state): Use them to format the name
      of the state.
      5a76a7bb
    • Alexandre Duret-Lutz's avatar
      We can now explore a divine2 compiled model, but the atomic · 16b4c288
      Alexandre Duret-Lutz authored
      properties are still missing.
      
      * iface/dve2/dve2.cc, iface/dve2/dve2.hh: Add
      classes for presenting the DiVinE2 model as a kripke object.
      (load_dve2): Load the *.dve2C file using libltdl.
      * iface/dve2/Makefile.am: Add a dve2check program.
      * iface/dve2/dve2check.cc: New file.  Currently it just
      outputs the reachability graph using dotty.
      16b4c288
  9. 05 Mar, 2011 4 commits
    • Alexandre Duret-Lutz's avatar
      Setup libltdl in ltdl/, so we can use it in the dve2 interface. · 155d76f4
      Alexandre Duret-Lutz authored
      Don't keep it under version control since it is installed by
      autoreconf.
      
      * configure.ac: Call LT_CONFIG_LTDL_DIR and LTDL_INIT.
      * README: Mention ltdl/.
      * Makefile.am: Recurse into ldtl.
      * iface/dve2/Makefile.am: Link with it.
      155d76f4
    • Alexandre Duret-Lutz's avatar
      Setup build system for a new dve2 interface. · 3427f3bf
      Alexandre Duret-Lutz authored
      * iface/dve2/dve2.cc, iface/dve2/dve2.hh: New dummy files.
      * iface/dve2/Makefile.am: New file.
      * iface/Makefile.am (SUBDIRS): Add dve2.
      * configure.ac: Build iface/dve2/Makefile.
      * README: Mention the new directory.
      3427f3bf
    • 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
  10. 04 Mar, 2011 2 commits
  11. 01 Mar, 2011 1 commit
  12. 27 Feb, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] · 8f5ecc14
      Alexandre Duret-Lutz authored
      * examples/cmilner/Makefile.am (cmilner_LDADD): Link with -lm, to
      find the pow() function.
      8f5ecc14
  13. 21 Feb, 2011 2 commits
  14. 14 Feb, 2011 1 commit
  15. 13 Feb, 2011 1 commit
  16. 10 Feb, 2011 3 commits
  17. 09 Feb, 2011 2 commits
  18. 08 Feb, 2011 1 commit