Difference between revisions of "Vcsn"
From LRDE
Line 35: | Line 35: | ||
Vcsn benefits from the expertise the LRDE gained from our |
Vcsn benefits from the expertise the LRDE gained from our |
||
intensive work on high performance generic programming for Olena. On |
intensive work on high performance generic programming for Olena. On |
||
− | the other hand, its theoretical well-foundedness |
+ | the other hand, its theoretical well-foundedness was ensured by Jacques |
Sakarovitch, at Télécom ParisTech, and with Sylvain Lombardy at the |
Sakarovitch, at Télécom ParisTech, and with Sylvain Lombardy at the |
||
Laboratoire Bordelais de Recherche en Informatique. |
Laboratoire Bordelais de Recherche en Informatique. |
Revision as of 22:19, 19 February 2016

Try it | Download | Python doc | C++ doc |
Vcsn is a platform dedicated to the computation of, and with, finite state machines. It provides an efficient C++ library, a Python interface, and a graphical user interface on top of IPython.
Here finite state machines is to be understood in the broadest possible sense: finite automata with multiple tapes — often called transducers then — or even more generally finite automata with multiplicity, that is, automata that not only accept sequences of symbols but compute for such sequence a "value" that is associated with it and which can be taken in any semiring.
Indeed, our framework is the set of automata with multiplicity over any semiring: a general algorithm is written just once and can be instantiated to any particular kind of automaton. As a result, we obtain efficient code from algorithms written in an abstract way.
Vcsn benefits from the expertise the LRDE gained from our intensive work on high performance generic programming for Olena. On the other hand, its theoretical well-foundedness was ensured by Jacques Sakarovitch, at Télécom ParisTech, and with Sylvain Lombardy at the Laboratoire Bordelais de Recherche en Informatique.
Latest News (more...)
- May 8th, 2018: Vcsn 2.8 is released!
- March 15th, 2018: Vcsn 2.7 is released!
- November 13th, 2017: Vcsn 2.6 is released!
- January 28th, 2017: Vcsn 2.5 is released!
- November 16th, 2016: Vcsn 2.4 is released!
- July 8th, 2016: Vcsn 2.3 is released!
- February 19th, 2016: Vcsn 2.2 is released!
- October 11th, 2015: Vcsn 2.1 is released!
- October 1st, 2015: Vcsn's git repository moved.
- Run git remote set-url origin git@gitlab.lrde.epita.fr:vcsn/vcsn in your old repository to retarget it.
- July 25th, 2014: Vaucanson 2.0 is released.
- May 20th, 2014: A Type System for Weighted Automata and Rational Expressions was accepted to CIAA'14.
Information, Documentation
- Documentation of the Python interface
- The News files (Latest release or Current working version) contains many examples
- The C++ Reference Manual is poor, but exists
- Trouble Shooting some problems with building or using Vcsn
- Papers related to Vcsn
- People behind Vcsn, and more generally contributors
Resources
- Download: All the releases of Vcsn (and Vaucanson)
- V2 Repository: Browsable git repository of Vcsn (https://gitlab.lrde.epita.fr/vcsn/vcsn for anonymous access, or git@gitlab.lrde.epita.fr:vcsn/vcsn for registered contributors)
- V1 Repository: Browsable git repository of Vaucanson 1
- FSMXML: Our proposal of an XML representation for (weighted) automata and rational expressions.
Development
The following resources are the group's main means of discussion:
- Vaucanson: General questions, discussions and announcements
- Vaucanson bugs: Bug reports about the library
- Vaucanson patches: Patches and related discussions
- Trac: (obsolete) issue tracker for Vaucanson 1
Contact
Send any question or comments to vaucanson@lrde.epita.fr.
Send bug reports to vaucanson-bugs@lrde.epita.fr.