This paper reports on a new software platform called Vaucanson and dedicated to the computation with automata and transducers. Its main feature is the capacity of dealing with automata whose labels may belong to various algebraic structures.
The paper successively shows how Vaucanson allows to program algorithms on automata in a way which is very close to the mathematical expression of the algorithm, describes some features of the Vaucanson platform, including the fact that the very rich data structure used to implement automata does not weigh too much on the performance and finally explains the main choices of the programming design that enable to achieve both genericity and efficiency.
KeywordsDesign Pattern Rational Language External Library Iterator Concept Standard Template Library
Unable to display preview. Download preview PDF.
- J.H. Conway, Regular algebra and finite machines, Chapman and Hall, 1971.Google Scholar
- J. Darbon, T. Géraud, and A. Duret-Lutz, Generic implementation of morphological image operators, Int. Symp. on Mathematical Morphology VI (ISMM’2002), April 2002, pp. 175–184.Google Scholar
- A. Duret-Lutz, T. Géraud, and A. Demaille, Design patterns for generic programming in C++, Proc. of the 6th USENIX Conf. on Object-Oriented Technologies and Systems (COOTS’01), USENIX Association, 2001, pp. 189–202.Google Scholar
- A. Fabri, G.-J. Giezeman, L. Kettner, S. Schirra, and S. Schönherr, On the design of CGAL, the computational geometry algorithms library, Tech. Report 3407, INRIA, April 1998.Google Scholar
- E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design patterns: Abstraction and reuse of object-oriented design, LNCS 707 (1993), 406–431.Google Scholar
- J. Hopcroft and J. Ullman, Introduction to automata theory, languages and computation, Addison-Wesley, 1979.Google Scholar
- S. Lombardy, On the construction of reversible automata for reversible languages, Proc. of ICALP’02, LNCS 2380 (2002), 170–182.Google Scholar
- S. Lombardy and J. Sakarovitch, Star height of reversible languages and universal automata, Proc. of LATIN’02, LNCS 2286 (2002), 76–89.Google Scholar
- S. Lombardy and J. Sakarovitch, Vaucanson-G, A package for drawing automata and graphs, http://www.liafa.jussieu.fr/~lombardy/Vaucanson-G/, 2002.
- S. Lombardy and J. Sakarovitch, On the star height of rational languages, a new presentation for two old results, World Scientific (to appear).Google Scholar
- V. Le Maout, Cursors, Proc. of CIAA 2000, LNCS 2088 (2001), 195–207.Google Scholar
- O. Matz, A. Miller, A. Potthoff, W. Thomas, E. Valkema, The Program AMoRE, http://www-i7.informatik.rwth-aachen.de/d/research/amore.html, RWTH Aachen, 1995.
- O. Matz and A. Potthoff, Computing small nondeterministic finite automata, proc. of TACAS’95, BRICS Notes Series, 1995, pp. 74–88.Google Scholar
- M. Mohri, F. C.N. Pereira, and M. Riley, General-purpose Finite-State Machine Software Tools, http://www.research.att.com/sw/tools/fsm/, AT&T Labs — Research, 1997.
- G. van Noord, Finite State Automata Utilities, http://odur.let.rug.nl/~vannoord/Fsa/, 2000.
- J. Sakarovitch, Éléments de théorie des automates, Vuibert, 2003.Google Scholar