1. 03 Jan, 2015 13 commits
  2. 23 Dec, 2014 1 commit
  3. 17 Dec, 2014 7 commits
    • Alexandre Duret-Lutz's avatar
    • Thibaud Michaud's avatar
      option --uniq in autfilt and randaut · a989d41b
      Thibaud Michaud authored
      * src/bin/autfilt.cc: add option --uniq.
      * src/bin/randaut.cc: add option --uniq.
      * src/tgbatest/uniq.test: Test it.
      a989d41b
    • Thibaud Michaud's avatar
      Wrap are_isomorphic inside a class and optimize when deterministic · 17687855
      Thibaud Michaud authored
      * src/bin/autfilt.cc: Use isomorphism_checker.
      * src/tgbaalgos/are_isomorphic.cc, src/tgbaalgos/are_isomorphic.hh: Wrap
      are_isomorphic inside a class to keep the canonic version of the first
      automaton between two calls, and use a more efficient algorithm in case
      both automata are deterministic.
      * src/tgbatest/isomorph.test: Add tests for deterministic automata.
      17687855
    • Thibaud Michaud's avatar
      Adding function to canonicalize an automaton. · 1995602d
      Thibaud Michaud authored
      * src/tgbaalgos/are_isomorphic.cc, src/tgbaalgos/are_isomorphic.hh,
      src/bin/autfilt.cc: are_isomorphic now uses canonicalize. It returns a
      bool, because the mapping cannot be deduced easily from the
      canonicalized automaton.
      * src/graph/graph.hh: Add equality operator to trans_storage_t
      for easy comparison of transition vectors.
      * src/tgba/tgbagraph.hh: Add equality operator to tgba_graph_trans_data
      and to tgba_digraph.
      * src/tgbaalgos/canonicalize.cc, src/tgbaalgos/canonicalize.hh:
      New files.
      * src/tgbaalgos/Makefile.am: Add them.
      * src/tgbatest/isomorph.test: Test them.
      1995602d
    • Alexandre Duret-Lutz's avatar
      autfilt: %w shows an accepting word · b83d6d7f
      Alexandre Duret-Lutz authored
      * src/bin/autfilt.cc: Support %w.
      * src/tgbatest/readsave.test: Test it.
      b83d6d7f
    • Alexandre Duret-Lutz's avatar
      autfilt: --instut, --destut, --is-empty · a626a32d
      Alexandre Duret-Lutz authored
      * src/bin/autfilt.cc: Add these new options.
      * src/tgbaalgos/stutterize.cc, src/tgbaalgos/stutterize.hh: Make it
      possible to call sl() and sl2() without passing the set of atomic
      propositions.
      * src/tgbatest/stutter.test: New file.
      * src/tgbatest/Makefile.am: Add it.
      a626a32d
    • Alexandre Duret-Lutz's avatar
      merge transitions: also merge transitions with same conditions · 8e9c4317
      Alexandre Duret-Lutz authored
      * src/tgba/tgbagraph.cc (merge_transition): Do it.
      * src/tgbatest/readsave.test: Test it.
      * src/bin/autfilt.cc: Fix statistics about the original
      automaton when using --stats or --name.
      8e9c4317
  4. 16 Dec, 2014 3 commits
  5. 15 Dec, 2014 2 commits
    • Alexandre Duret-Lutz's avatar
      autfilt: --count · 0d710f96
      Alexandre Duret-Lutz authored
      * src/bin/autfilt.cc: Add a --count option.
      * src/tgbatest/randaut.test: Test autfilt's --count and --states.
      0d710f96
    • Alexandre Duret-Lutz's avatar
      autfilt: --states=RANGE · cad4d94c
      Alexandre Duret-Lutz authored
      * src/bin/autfilt.cc: Add a --states=RANGE option.
      * src/bin/common_range.cc, src/bin/common_range.hh: Generalize
      range_parse to allow an optional upper bound.
      cad4d94c
  6. 11 Dec, 2014 7 commits
  7. 10 Dec, 2014 7 commits
    • Alexandre Duret-Lutz's avatar
      hoaparse: also accept LBTT input · 6eb2b06f
      Alexandre Duret-Lutz authored
      This is probably the worse grammar I wrote: the LBTT format is designed
      to be scanned with scanf, and very inconvenient to parse with
      bison/flex.  Here the scanner basically has to emulate a parser to
      classify the different INTs as tokens with different types.
      
      * src/hoaparse/hoaparse.yy, src/hoaparse/hoascan.ll: Add rules for LBTT.
      * src/hoaparse/parsedecl.hh: Add a way to reset the parser between each
      automata.
      * src/tgbatest/hoaparse.test, src/tgbatest/lbttparse.test: Add more
      tests.
      6eb2b06f
    • Alexandre Duret-Lutz's avatar
      tgbaparse, lbttparse: do not pass an environment for acceptance sets · e4158c21
      Alexandre Duret-Lutz authored
      * src/priv/accmap.hh, src/tgbaalgos/lbtt.cc, src/tgbaalgos/lbtt.hh,
      src/tgbaparse/public.hh, src/tgbaparse/tgbaparse.yy,
      src/tgbatest/ltl2tgba.cc, src/tgbatest/tgbaread.cc: Do not pass any
      environment parameter to parse acceptance sets.  This is not used
      anymore since we moved to int-labeled acceptance sets.
      e4158c21
    • Alexandre Duret-Lutz's avatar
      are-isomorphic: small simplifications · be57ec29
      Alexandre Duret-Lutz authored
      * src/tgbaalgos/are_isomorphic.cc (is_isomorphism): Do not copy
      trans_storage_t elements as they contain more than what we use.
      Remap the states of a1 before the sort, not during the sort.
      (are_trivially_different): Also catch the case where the
      number of acceptance sets are different.
      * src/tgbaalgos/are_isomorphic.hh: Improve doxygen.
      be57ec29
    • Alexandre Duret-Lutz's avatar
      autfilt: some cleanup around --are-isomorphic · ff4dca48
      Alexandre Duret-Lutz authored
      * src/bin/autfilt.cc: Do not use -I for --are-isomorphic.
      Fix --help.
      * src/tgbatest/isomorph.test: Adjust to use --are-isomorphic, and speed
      it up 5-fold.
      ff4dca48
    • Thibaud Michaud's avatar
      are_isomorphic: do not try to map initial state to a non-initial state · d033633b
      Thibaud Michaud authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/tgbaalgos/are_isomorphic.cc: Here.
      d033633b
    • Thibaud Michaud's avatar
      autfilt: rename --isomorph to --are-isomorphic · 099d3d72
      Thibaud Michaud authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/bin/autfilt.cc: Here.
      099d3d72
    • Thibaud Michaud's avatar
      autfilt: return with exit code 1 if there is no match · b54fe4c0
      Thibaud Michaud authored and Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz committed
      * src/bin/autfilt.cc: Return with exit code 1 if no match found.
      * src/tgbaalgos/are_isomorphic.cc,src/tgbatest/degenlskip.test
      src/tgbatest/explpro2.test,src/tgbatest/explpro3.test
      src/tgbatest/explpro4.test,src/tgbatest/explprod.test
      src/tgbatest/neverclaimread.test, src/tgbatest/readsave.test
      src/tgbatest/tripprod.test: Use exit status to check for output
      emptiness instead of 'test -n'.
      * src/tgbatest/isomorph.test: Simplify test.
      b54fe4c0