1. 12 Sep, 2012 2 commits
    • Alexandre Duret-Lutz's avatar
      Fix multiple inclusions of config.h. · 26deb56a
      Alexandre Duret-Lutz authored
      * src/bin/common_sys.hh: New file.
      * src/bin/Makefile.am: Add it.
      * src/bin/common_output.hh, src/bin/common_r.cc,
      src/bin/common_range.cc, src/bin/genltl.cc, src/bin/ltlfilt.cc,
      src/bin/randltl.cc: Include common_sys.hh instead of config.h.
    • Alexandre Duret-Lutz's avatar
      Add count_nondet_states(aut) and is_deterministic(aut). · 04b5e370
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/isdet.cc, src/tgbaalgos/isdet.hh: New files.
      * src/tgbaalgos/Makefile.am: Add them.
      * wrap/python/spot.i: Wrap them.
      * wrap/python/ajax/spot.in: Display count of nondeterministic
      * src/tgbatest/ltl2tgba.cc (-kt): Likewise.
      * NEWS: Upadte.
  2. 07 Sep, 2012 19 commits
    • Alexandre Duret-Lutz's avatar
      Kill src/ltltest/randltl and replace it by src/bin/randltl. · 649e8e2d
      Alexandre Duret-Lutz authored
      * src/ltltest/randltl.cc: Delete.
      * src/ltltest/Makefile.am (noinst_PROGRAMS, randltl_SOURCES): Remove.
      * src/ltltest/reduc.test, src/ltltest/reducpsl.test,
      src/ltltest/utf8.test, src/tgbatest/randpsl.test,
      bench/emptchk/README: Adjust to use bin/randltl.
    • Alexandre Duret-Lutz's avatar
      Kill src/ltltest/genltl now that src/bin/genltl does everything it did. · 1257893f
      Alexandre Duret-Lutz authored
      * src/ltltest/genltl.cc: Delete.
      * src/ltltest/Makefile.am (noinst_PROGRAMS): Remove genltl.
      * src/tgbatest/ltlcounter.test, bench/ltlclasses/run,
      bench/ltlcounter/run: Adjust to call bin/genltl.
    • Alexandre Duret-Lutz's avatar
      Fix missing spaces after comma. · 0990de50
      Alexandre Duret-Lutz authored
      * src/sanity/style.test: Fix the space-after-comma test.
      * src/bin/randltl.cc, src/tgba/tgbaexplicit.hh: Add missing spaces.
    • Alexandre Duret-Lutz's avatar
      randltl: Output unique formulae by default. · f19526a9
      Alexandre Duret-Lutz authored
      * src/bin/randltl.cc: Replace the --unique by an --allow-dups option.
    • Alexandre Duret-Lutz's avatar
    • Alexandre Duret-Lutz's avatar
    • Alexandre Duret-Lutz's avatar
      randltl: add option to simplify formulas · e43bc893
      Alexandre Duret-Lutz authored
      * src/bin/common_r.cc, src/bin/common_r.hh: New files, extracted from...
      * src/bin/ltlfilt.cc: Here.
      * src/bin/randltl.cc: Use them.
      * src/bin/Makefile.am: Adjust.
    • Alexandre Duret-Lutz's avatar
      Fix prototype of ltl_simplifier::ltl_simplifier. · 7274ca2b
      Alexandre Duret-Lutz authored
      * src/ltlvisit/simplify.hh, src/ltlvisit/simplify.cc: Here.
    • Alexandre Duret-Lutz's avatar
    • Alexandre Duret-Lutz's avatar
      randltl: first stage of the reimplementation · 760d75cc
      Alexandre Duret-Lutz authored
      * src/bin/common_range.cc, src/bin/common_range.hh: New files,
      extracted from...
      * src/bin/genltl.cc: ... here.
      * src/bin/randltl.cc, src/bin/man/randltl.x: New files.
      * src/bin/Makefile.am, src/bin/man/Makefile.am: Adjust.
      * src/bin/man/genltl.x: Point to randltl(1).
    • Alexandre Duret-Lutz's avatar
    • Alexandre Duret-Lutz's avatar
      help2man: generate man pages for genltl and ltlfilt · c96513b6
      Alexandre Duret-Lutz authored
      * tools/help2man, tools/x-to-1.in: New files, copied from gnulib
      * configure.ac: Create x-to-1 and export CROSS_COMPILING.
      * Makefile.am: Distribute help2man.
      * src/bin/Makefile.am (SUBDIRS): New.
      * src/bin/man/Makefile.am: New file.
      * src/bin/man/genltl.x, src/bin/man/ltlfilt.x: New files.
      * src/bin/genltl.cc: Document the RANGE in the options,
      and move the bibliography to genltl.x.
      * README: Document src/bin/man
    • Alexandre Duret-Lutz's avatar
      ltlfilt, genltl: factor the common output options. · e0873cc7
      Alexandre Duret-Lutz authored
      * src/bin/common_output.cc, src/bin/common_output.hh: New file
      with the common output code.
      * src/bin/Makefile.am: Add them.
      * src/bin/genltl.cc, src/bin/ltlfilt.cc: Simplify, using
      argp's children parser, and calling output_formula().
    • Alexandre Duret-Lutz's avatar
      ltlfilt: update the exit status in the same way as grep · 267183bd
      Alexandre Duret-Lutz authored
      * src/bin/ltlfilt.cc: Do it.
    • Alexandre Duret-Lutz's avatar
      ltlfilt: add option to filter by implication or equivalence · 24a8c031
      Alexandre Duret-Lutz authored
      * src/ltlvisit/simplify.cc, src/ltlvisit/simplify.hh: Add a
      implication() option.
      * src/bin/ltlfilt.cc: Add options --implied-by, --imply, and
    • Alexandre Duret-Lutz's avatar
      genltl: reimplement using argp, and allowing ranges. · d1b8537f
      Alexandre Duret-Lutz authored
      * src/bin/genltl.cc: New file.
      * src/bin/Makefile.am: Add it.
    • Alexandre Duret-Lutz's avatar
      ltlfilt: use error() to report errors. · 90279bd4
      Alexandre Duret-Lutz authored
      * lib/error.c, lib/error.h, lib/msvc-inval.c, lib/msvc-inval.h,
      lib/msvc-nothrow.c, lib/msvc-nothrow.h, m4/error.m4, m4/msvc-inval.m4,
      m4/msvc-nothrow.m4: New files from gnulib
      * lib/Makefile.am, m4/gnulib-cache.m4, m4/gnulib-comp.m4: Adjust.
      * src/bin/ltlfilt.cc: Use error() and error_at_line().
    • Alexandre Duret-Lutz's avatar
      ltlfilt: Call set_program_name(). · 8132f918
      Alexandre Duret-Lutz authored
      * src/bin/ltlfilt.cc (main): Call set_program_name().
      * lib/progname.c, lib/progname.h: New files, from gnulib
      * lib/Makefile.am, m4/gnulib-cache.m4, m4/gnulib-comp.m4: Adjust.
    • Alexandre Duret-Lutz's avatar
      Install gnulib to make sure we can use argp in ltlfilt. · 93f6e217
      Alexandre Duret-Lutz authored
      * lib/Makefile.am, lib/alloca.c, lib/alloca.in.h, lib/argp-ba.c,
      lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
      lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
      lib/argp-parse.c, lib/argp-pin.c, lib/argp-pv.c, lib/argp-pvh.c,
      lib/argp-xinl.c, lib/argp.h, lib/asnprintf.c, lib/basename-lgpl.c,
      lib/dirname-lgpl.c, lib/dirname.h, lib/dosname.h, lib/errno.in.h,
      lib/float+.h, lib/float.c, lib/float.in.h, lib/getopt.c,
      lib/getopt.in.h, lib/getopt1.c, lib/getopt_int.h, lib/gettext.h,
      lib/intprops.h, lib/itold.c, lib/malloc.c, lib/memchr.c,
      lib/memchr.valgrind, lib/mempcpy.c, lib/printf-args.c,
      lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
      lib/rawmemchr.c, lib/rawmemchr.valgrind, lib/size_max.h,
      lib/sleep.c, lib/stdalign.in.h, lib/stdbool.in.h, lib/stddef.in.h,
      lib/stdint.in.h, lib/stdio.in.h, lib/stdlib.in.h, lib/strcasecmp.c,
      lib/strchrnul.c, lib/strchrnul.valgrind, lib/strerror-override.c,
      lib/strerror-override.h, lib/strerror.c, lib/string.in.h,
      lib/strings.in.h, lib/stripslash.c, lib/strncasecmp.c,
      lib/strndup.c, lib/strnlen.c, lib/sys_types.in.h, lib/sysexits.in.h,
      lib/unistd.in.h, lib/vasnprintf.c, lib/vasnprintf.h, lib/verify.h,
      lib/vsnprintf.c, lib/wchar.in.h, lib/xsize.h, m4/00gnulib.m4,
      m4/alloca.m4, m4/argp.m4, m4/dirname.m4, m4/double-slash-root.m4,
      m4/errno_h.m4, m4/exponentd.m4, m4/extensions.m4, m4/float_h.m4,
      m4/getopt.m4, m4/gnulib-cache.m4, m4/gnulib-common.m4,
      m4/gnulib-comp.m4, m4/gnulib-tool.m4, m4/include_next.m4,
      m4/intmax_t.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/malloc.m4,
      m4/math_h.m4, m4/memchr.m4, m4/mempcpy.m4, m4/mmap-anon.m4,
      m4/multiarch.m4, m4/nocrash.m4, m4/off_t.m4, m4/printf.m4,
      m4/rawmemchr.m4, m4/size_max.m4, m4/sleep.m4, m4/ssize_t.m4,
      m4/stdalign.m4, m4/stdbool.m4, m4/stddef_h.m4, m4/stdint.m4,
      m4/stdint_h.m4, m4/stdio_h.m4, m4/stdlib_h.m4, m4/strcase.m4,
      m4/strchrnul.m4, m4/strerror.m4, m4/string_h.m4, m4/strings_h.m4,
      m4/strndup.m4, m4/strnlen.m4, m4/sys_socket_h.m4, m4/sys_types_h.m4,
      m4/sysexits.m4, m4/unistd_h.m4, m4/vasnprintf.m4, m4/vsnprintf.m4,
      m4/warn-on-use.m4, m4/wchar_h.m4, m4/wchar_t.m4, m4/wint_t.m4,
      m4/xsize.m4, tools/snippet/_Noreturn.h, tools/snippet/arg-nonnull.h,
      tools/snippet/c++defs.h, tools/snippet/warn-on-use.h: New files from
      gnulib 1af55d85d9762a679b4302d5995f05ccd883e956.
      * configure.ac, Makefile.am: Adjust to compile gnulib.
      * src/bin/Makefile.am: Adjust to use gnulib.
      * README: Mention lib/.
  3. 04 Sep, 2012 3 commits
  4. 29 Aug, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      Add back the '*' syntax for And. · 5939d6f4
      Alexandre Duret-Lutz authored
      This somehow revert changes from 2010-01-30 which killed this use of
      star to make room for the Kleen star.  Here we only allow '*' in the
      temporal formula, so that it can still be the Kleen star in SERE.  The
      motivation for '*' available as And is better compatibility with Wring
      and VIS.
      * src/ltlparse/ltlscan.ll: Distinguish * from [*].
      * src/ltlparse/ltlparse.yy: Allows * to be used as AND between
      temporal formulae.
      * src/ltltest/equals.test, src/ltltest/parse.test: Add a few
      * doc/tl/tl.tex: Document it.
  5. 28 Aug, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      Add an option to use WDBA only if it reduces the size of the automaton. · 60ec3ace
      Alexandre Duret-Lutz authored
      * src/tgba/tgbaexplicit.hh (num_states): New method.
      * src/tgbaalgos/minimize.hh, src/tgbaalgos/minimize.cc
      (minimize_obligation): Add a reject_bigger option.
      * src/tgbatest/ltl2tgba.cc (-RM): New option.
      * src/tgbatest/spotlbtt.test: Test -RM.
      * bench/ltl2tgba/algorithms: Include -RM in addition to -Rm, and
      replace -RDS by -RIS.
      * NEWS: Mention this.
  6. 21 Aug, 2012 14 commits
    • Alexandre Duret-Lutz's avatar
      Cleanup ltl2tgba.cc. · 2ea652d3
      Alexandre Duret-Lutz authored
      * src/tgbatest/ltl2tgba.cc: Fix some typos, and factor the second
      call to scc_filter when simulations are used.
    • Alexandre Duret-Lutz's avatar
    • Thomas Badie's avatar
      Optimize the use of -RRS with -R3. · 25b8d50c
      Thomas Badie authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/tgbatest/ltl2tgba.cc: Change the order of the call to the
      simulation and the cosimulation.
      Call scc_filter when cosimulation is called with -R3.
      Call scc_filter when simulation is called with -R3.
    • Thomas Badie's avatar
      * src/tgbaalgos/simulation.cc: Fix a bug in the simulation. · 0b74f549
      Thomas Badie authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
    • Thomas Badie's avatar
      Create the iterated simulations. · a0cce105
      Thomas Badie authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/tgbaalgos/simulation.cc: Create the iterated_simulations.
      (direct_simulation) Add an attribute "stat" that represents the
      number of states and transitions of the resulting automaton.
      * src/tgbaalgos/simulation.hh: Declare the iterated_simulations.
      * src/tgbatest/spotlbtt.test: Test the iterated_simulations.
      * src/tgbatest/ltl2tgba.cc: Associate the option -RIS to the
    • Thomas Badie's avatar
      Create the cosimulation. · 387bace9
      Thomas Badie authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/tgbaalgos/simulation.cc: Add the cosimulation:
      (acc_compl_automaton) Add a template parameter.
      (acc_compl_automaton::process_link) Add a swap source destination.
      (direct_simulation) Add a template parameter.
      (direct_simulation::compute_sig) Add a flag in the signature to
      know if the state is initial.
      (direct_simulation::build_result) Remove the flag before reading
      the signature.
      Swap source and destination when building the new automaton.
      * src/tgbaalgos/simulation.hh: Declare and document the
      * src/tgbatest/ltl2tgba.cc: Associate the cosimulation with the -RRS
      * src/tgbatest/spotlbtt.test: Add a test on the cosimulation.
    • Alexandre Duret-Lutz's avatar
      80 columns. · aa230d1f
      Alexandre Duret-Lutz authored
      * src/ltlvisit/apcollect.hh, src/taalgos/minimize.cc,
      src/taalgos/tgba2ta.cc, src/tgbatest/ltl2tgba.cc: Here.
    • Ala-Eddine Ben-Salem's avatar
      Set is_accepting_state to false in GTA · e30b9232
      Ala-Eddine Ben-Salem authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/taalgos/tgba2ta.cc: Set is_accepting_state to false in GTA.
      * src/tgbatest/ltl2tgba.cc: Call tgta_explicit.get_ta() to avoid
    • Alexandre Duret-Lutz's avatar
      Fix tgta_explicit not to inherit from ta_explicit to please clang++. · 941cb0b5
      Alexandre Duret-Lutz authored
      * src/ta/tgtaexplicit.cc, src/ta/tgtaexplicit.hh: Use a ta_explicit
      attribute instead of inheriting from it.
      (get_ta): New method.
      * src/taalgos/minimize.cc, src/taalgos/minimize.hh,
      src/taalgos/tgba2ta.cc, src/tgbatest/ltl2tgba.cc: Adjust usage.
      * wrap/python/spot.i (as_ta): Remove, now that we have get_ta.
      * wrap/python/ajax/spot.in: Use get_ta instead of as_ta.
    • Alexandre Duret-Lutz's avatar
      Clean up dotty output of TAs. · d4130f15
      Alexandre Duret-Lutz authored
      * src/taalgos/dotty.cc: Clean up output of TAs.
      * src/tgbatest/ltl2tgba.cc: Fix memory management, and use the TA
      printer for TGTA.
      * wrap/python/spot.i (as_ta): New function to convert a tgta_explicit
      into a TA.
      * wrap/python/ajax/spot.in: Use this new function to display automata.
    • Alexandre Duret-Lutz's avatar
      Simplify the construction of TA. · 20c3f9f8
      Alexandre Duret-Lutz authored
      * src/ltlvisit/apcollect.cc, src/ltlvisit/apcollect.hh: Add a version
      that builds a BDD.
      * src/tgbatest/ltl2tgba.cc: Use it.
    • Alexandre Duret-Lutz's avatar
      Don't always delete the tgba used in ta_explicit. · 8e1438c9
      Alexandre Duret-Lutz authored
      * src/ta/taexplicit.hh (ta_explicit): Take a boolean to tell whether
      the tgba is owned.
      * src/ta/taexplicit.cc, src/ta/tgtaexplicit.cc,
      src/ta/tgtaexplicit.hh: Likewise.
      * src/ta/taexplicit.cc (~ta_explicit): Adjust destruction.
      * src/tgbatest/ltl2tgba.cc: Adjust usage.
      * src/taalgos/minimize.cc: Likewise.
    • Alexandre Duret-Lutz's avatar
      Fix ta/ and taalgos/ include path for VPATH builds. · be607118
      Alexandre Duret-Lutz authored
      * src/ta/Makefile.am, src/taalgos/Makefile.am: Add -I..
    • Alexandre Duret-Lutz's avatar
      Don't use -Rm for two different things. · 20c7f1e8
      Alexandre Duret-Lutz authored
      * src/tgbatest/ltl2tgba.cc: Introduce -RT to turn on bisimulation on
      TA instead of hijacking -Rm.
      * src/tgbatest/ltl2ta.test: Adjust.