- 23 Nov, 2015 6 commits
-
-
Sébastien Piat authored
Do not try is_equivalent on automata with expressionset weightset. * tests/bin/test.py: Here.
-
Akim Demaille authored
* python/vcsn/automaton.py, python/vcsn/conjunction.py, * python/vcsn/d3Widget.py, python/vcsn/demangle.py, * python/vcsn/dot.py, python/vcsn/expression.py, * python/vcsn/ipython.py, python/vcsn/polynomial.py, * python/vcsn/score.py, python/vcsn/tools.py, python/vcsn/weight.py: Here.
-
Akim Demaille authored
* vcsn/alphabets/char.hh: We need to escape `'` and `\`. * tests/python/automaton.dir/lal_char_b.daut, * tests/python/automaton.dir/lal_char_b.in.gv, * tests/python/automaton.dir/lal_char_b.out.gv, * tests/python/automaton.dir/lal_char_b.tex, * tests/python/automaton.dir/lal_char_b.tex.gv, * tests/python/automaton.py: Test more special characters.
-
Akim Demaille authored
* tests/unit/test.hh: Display the failures in a more natural fashion. * vcsn/alphabets/setalpha.hh, vcsn/misc/format.hh: Comment changes.
-
Akim Demaille authored
This fixes a long standing bug: we improprely display the generators when they contains `(`, `-` or `)`. Be sure to escape them. * vcsn/misc/escape.hh, lib/vcsn/misc/escape.cc: Provide a means to specify chars to escape. No longer escape `"` by default. Beware of signedness issues. * vcsn/misc/format.hh, lib/vcsn/misc/format.cc (generators): New format. * vcsn/alphabets/char.hh, vcsn/alphabets/string.hh, * vcsn/labelset/nullableset.hh: Add support for it. vcsn/alphabets/setalpha.hh (print_set): Use this format to escape `(`, `-`, and `)`. * vcsn/algos/dot.hh: Now that the generators are no longer overquoted, Reenable escaping. * tests/unit/label.cc, tests/python/context.py: Adjust expectations.
-
* vcsn/alphabets/setalpha.hh: Here. * vcsn/algos/dot.hh: So no longer escape `"` and `\` here. * tests/python/context.py, tests/python/trie.py, * tests/unit/label.cc: Update tests.
-
- 20 Nov, 2015 16 commits
-
-
Sébastien Piat authored
We have to clear the error state flag of cerr after giving it the rdbuf of an empty file. * lib/vcsn/dyn/translate.cc: Here.
-
Sébastien Piat authored
* vcsn/algos/lightest-path.hh: Here. * vcsn/algos/lightest-automaton.hh: Handle tags here. * vcsn/algos/lightest.hh: Use automatic tag dispatch here.
-
Sébastien Piat authored
* vcsn/algos/lightest-automaton.hh: From here... * vcsn/algos/lightest-path.hh: to here. * vcsn/algos/lightest.hh: Change use here.
-
Sébastien Piat authored
In case of a.lightest() or a.lightest(1) call lightest_automaton algorithm for better performances. Use dijkstra as auto in lightest-automaton. Lightest Specialized 0.99 0.90 a.lightest() # a = std([a-z]?{300}), c = [a-e] -> ZMIN * vcsn/algos/lightest.hh: Here. * libexec/vcsn-score: Add score for num = 1 here. * vcsn/algos/lightest-automaton.hh: Change auto algorithm here.
-
Sébastien Piat authored
* vcsn/algos/lightest.hh: Here.
-
Sébastien Piat authored
* doc/notebooks/Algorithms.ipynb: Here. * doc/notebooks/local.mk: Here.
-
* doc/notebooks/automaton.minimize.ipynb: Here. * NEWS.txt: Here.
-
* doc/notebooks/automaton.lightest_automaton.ipynb: Here. * doc/notebooks/automaton.lightest.ipynb: Mention here.
-
`weight_series` does not end in certain conditions, state its preconditions. * doc/notebooks/automaton.weight_series.ipynb: Here.
-
* doc/notebooks/automaton.has_negative_cycle.ipynb: Here.
-
* doc/notebooks/automaton.sum.ipynb: Here.
-
* doc/notebooks/automaton.star.ipynb: Here.
-
* doc/notebooks/automaton.multiply.ipynb: Here.
-
* vcsn/algos/distance.hh: Here.
-
Akim Demaille authored
* tests/python/trie.py: Check weird input.
-
Akim Demaille authored
* NEWS.txt, doc/notebooks/context.cotrie.ipynb, * doc/notebooks/context.trie.ipynb: Update.
-
- 19 Nov, 2015 6 commits
-
-
Akim Demaille authored
* python/vcsn_cxx.cc: here. * tests/python/trie.py: Check it.
-
Akim Demaille authored
In law_char, when reading the monomial `a|b` (yes, `|` is not escaped), we loop for ever: the `a` is read by setalpha::get_word, then it returns, and then polynomialset::conv_label repeatedly calls get_word on `|b`, which endlessly returns the empty word, refusing to pass the `|`. * vcsn/weightset/polynomialset.hh (conv_label): Make the empty string an error. * tests/python/trie.py: check it.
-
Akim Demaille authored
Currently if we build a trie from a file, them the lines of the file are read as if each line were a monomial. So for instance `<` is considered introducing a weight. We need an argument stating the syntax of the stream. Currently, in addition to `"monomials"` (which was the previous implicit value), we add `"words"` which means that each line must be understood as a raw string up (and excluding) to end-of-line. This allows to read safely /usr/share/dict/words for instance. * vcsn/algos/trie.hh (trie_builder::add_words, trie_builder::add_monomials): New. (trie, cotrie): Now accept a format argument. * vcsn/dyn/algos.hh: Likewise. * python/vcsn_cxx.cc: Adjust.
-
Akim Demaille authored
* tests/python/trie.py (trie, check): New. Use them.
-
Akim Demaille authored
* vcsn/algos/trie.hh, vcsn/labelset/wordset.hh, * vcsn/weightset/polynomialset.hh: comment and spaces changes. * vcsn/misc/raise.hh (require): Accept convertible to bool. * vcsn/weightset/polynomialset.hh: Adjust. Add missing check.
-
Akim Demaille authored
* vcsn/algos/dot.hh: Be sure to escape the special characters in the context.
-
- 18 Nov, 2015 4 commits
-
-
Sébastien Piat authored
* vcsn/algos/minimize-hopcroft.hh: Here.
-
Sébastien Piat authored
Performances unchanged. * vcsn/algos/minimize-hopcroft.hh: Here.
-
Sébastien Piat authored
Add make_polynomialset. * vcsn/misc/wet.hh (operator-), (operator&), (operator<): Here. * vcsn/weightset/polynomialset.hh (make_polynomialset): Here.
-
Sébastien Piat authored
* vcsn/algos/determinize.hh: Move previous definition from here... * vcsn/labelset/stateset.hh: to here.
-
- 17 Nov, 2015 3 commits
-
-
Sébastien Piat authored
Use find_first and find_next. No difference in performances. * vcsn/algos/minimize-hopcroft.hh: Here.
-
Sébastien Piat authored
Set Bitset 1.75 0.37 a.minimize("hopcroft") # a = std([a-g]{300}), c = [a-k] -> B 13.83 3.32 a.minimize("hopcroft") # a = std([a-g]{800}), c = [a-k] -> B * vcsn/algos/minimize-hopcroft.hh: Here.
-
Sébastien Piat authored
New implementation of minimize with hopcroft algorithm. Only accepts free labelsets. * vcsn/algos/minimize-hopcroft.hh: Here. * vcsn/algos/minimize.hh: Use it. * tests/python/minimize.py: Test it.
-
- 15 Nov, 2015 5 commits
-
-
Akim Demaille authored
-
Akim Demaille authored
* vcsn/algos/union.hh: Remove, merged into... * vcsn/algos/sum.hh: here. Adjust dependencies.
-
Akim Demaille authored
* vcsn/algos/sum.hh: Prefer auto. Avoid nested if's. * vcsn/algos/copy.hh, vcsn/algos/star.hh: Style and comment changes.
-
* vcsn/algos/multiply.hh: Here. * vcsn/algos/standard.hh (make_tag_automaton): Allow dispatch.
-
Use `make_tag_automaton` to dispatch. Change occurences of `make_multiply_automaton` in multiply. * vcsn/algos/star.hh: Here. * vcsn/algos/multiply.hh: Here. * vcsn/algos/standard.hh: Here.
-