AMORE The AMORE system is a program for the computation of finite automata, syntactic monoids of regular languages, and (possibly star-free) regular expressions. The system is implemented in C under Unix or DOS. A graphical component generates state graphs of finite automata on the screen from given transition tables (under Unix only).
AUTOMATA (Milan
)
From the COLOS project at the University of Milan.
AUTOMATA is a tool for modelling automata and experimenting with
grammars. The environment deals with: finite state automata (FSA, both
deterministic and non deterministic), push-down automata - PDA (both
deterministic and non deterministic), finite state transducers (Moore
and Mealy machines), grammars, regular expressions, pattern matching It
provides the visualisation of some important algorithms, such as the
transformation of non deterministic automata into deterministic ones or
the minimisation. The automata are defined by entering their state
diagram in a graphic editor or by giving a grammar.
AUTOMATA (Pittsburgh) automata is a Mathematica based package that manipulates finites state machines and their syntactic semigroups. A number of operations on 1-dim cellular automata are also available. All the algorithms are implemented in Mathematica, and a good number of them is also implemented externally in a C++ library (e.g., power automaton construction, minimization using Hopcroft's algorithm, D-class decomposition). The C++ code can be used directly or, via MathLink, from within Mathematica. On a standard workstation, the external code allows one to generate machines and/or semigroups with several 10000 elements.
AUTOMATES By M. Champarnaud.
Busy Beaver This story starts around 1960. Tibor Rado, a professor at the Ohio State Univers ity, thought of a simple non-computable function besides the standard halting problem for Turing machines. Given a fixed finite number of symbols and states, select those Turing machine programs which eventually halt when run with a blank tape. Among these programs find the maximum number of non-blank symbols left on the tape when they halt. Alternative ly, find the maximum number of time steps before halting. This function is well-defined but r apidly becomes un-computable for even small number of states and symbols.
DICIO project Applies finite automata to process large vocabularies. Researchers are Tomasz Kowaltowski, Claudio Leonardo Lucchesi, and Jorge Stolfi.
FANCY Hardware Verification Tool. FANCY is a BDD-based tool for formal hardware verification. It's a collection of new and known FSM equivalence and inclusion check algorithms with a graphical user interface.
FASTUS Text Understanding System. FASTUS is a (slightly permuted) acronym for Finite State Automaton Text Understanding System. It is a system for extracting information from free text in English, and potentially other languages as well, for entry into a database, and potentially for other applications. It works essentially as a set of cascaded, nondeterministic finite state automata.
Finite-State Utilities - a set of programs and scripts for creation and use of FSAs for natural language processing, including morphological analysis, spelling correction, restoration of diacritics, perfect hashing, acquisition of new words into morphological dictionaries. The automata are acyclic.
Fire Lite Bruce Watson's C++ toolkit for finite-state machines.
FLAP (Formal Languages and Automata Package), a tool for designing, and simulating several variations of finite automata, pushdown automata, and Turing machines. Using FLAP, one can draw a picture (transition diagram) of a nondeterministic automaton. Once the picture is complete, the user enters an input string and then controls a step-by-step simulation showing multiple stacks, one for each possible configuration. Additional features of FLAP include a fast simulation mode, and retracing part or all of a simulation. FLAP is currently used worldwide in teaching automata theory. See also LLparse and LRParse.
FSA Utilities in Prolog
by Gertjan van Noord.
A few months ago there was some discussion whether or not finite state
automaton operations (intersection, determinization, minimalization,
intersection..) could be efficiently implemented in Prolog. I implemented
a few of these things to see what can be done (and mostly as an exercise
for myself). The package is implemented in SICStus Prolog, but it should
not be too difficult to adapt it to other Prologs. Upon installation of
the package a Prolog saved state is built that can be used either as an
interactive shell (as usual) or as a Unix filter.
GASP project
The goal of the Groups Automata and Semigroups Project is to facilitate
interaction among people interested in computational aspects of
geometric group theory including applications of formal languages and
automata theory.
Grail+ Our C++ toolkit for finite-state machines and regular expressions.
Graphical Statecharts Editor
This report describes an editor I wrote for the Statecharts graphical
language, which uses a hierarchy of interacting finite-state machines.
The edito r is written using the [incr Tcl] add-on to the Tcl/Tk
language. The editor keeps transitions attached,
and allows for multiple, consistent views of the database.
LIBERO
Are you a programmer? Do you sincerely want to write better programs?
Then take a look at Libero, a free software tool from iMatix.
How do I use Libero? 1. Design your program visually as a state diagram;
2. Choose your programming language;
3. Generate a framework for your program;
4. Fill-in the framework to get from rapid prototype to working program;
5. Repeat until your program is perfect.
Mona Project
The Mona project devises new practical means of describing finite-state
systems in formal logic. Our applications include types and semantics
for pointers in programming languages; temporal logic; verification of
distributed systems and parameterized hardware; user interfaces for
regular expressions; and design architectures for object-oriented
programming languages.
Natural Language Software Registry
Contains pointers to a large number fo software projects having
to do with natural language processing, including
data sets, text processing, multicomponent systems, knowledge
representation systems, generation systems, speech signal analysis,
morphological analysis, semantic and pragmatic analysis, and
formalisms.
REACTO Verification System. The REACTO system supports formal verification of reactive systems specified as hierarchical finite state machines. Reacto has been used to specify DES code machines, interactive electronic technical manuals for aircraft maintenance, and other reactive systems.
Ragel Ragel compiles finite state machines from regular languages into runnable C code. It allows the programmer to embed actions at any point in a regular language and to control non-determinism in the resulting machines. It understands concatenation, union, kleene star, subtraction, and intersection, as well as some helpers such as negation. Ragel's finite state machines are closed under all of its operators. This property allows for arbitrary regular lanuages to be described. It can be used to create a parser for any language that is regular.
The Automaton Standard Template Library by Vincent Le Maout (under supervision of Dominique Revuz).
The Finite State Machine Explorer - a Java program for manipulation of finite-state automata.
The Liege Automata-Based Symbolic Handler (LASH) is a tool set for representing infinite sets and exploring infinite state spaces. It is based on finite-state representations, which rely on finite-state automata for representing and manipulating infinite sets of values with respect to various data domains.
Turing's World Introduced by Alan Turing in 1936, Turing machines are one of the key abstractions used in modern computability theory, the study of what computers can and cannot do. A Turing machine is a particularl... In Turing's World the tape is represented by a narrow window that sits at the bottom of the screen. Here is what the tape looks like with a series of A's and B's written on it, and with the read/write... A Turing machine has a finite number of states and is in exactly one of these states at any given time. Associated with these states are instructions telling the machine what action to perform if it i... Here, for example, is a state diagram of a Turing machine with two states
Unitex Unitex is a corpus processing system, based on automata-oriented technology. With this tool, you can handle electronic resources such as eletronic dictionaries and grammars and apply them. You can work at the levels of morphology, the lexicon and syntax. The main functions are
VIS (Verification Interacting with Synthesis) is a system for formal verification, synthesis, and simulation of finite state systems. It has been developed jointly at the University of California at Berkeley and the University of Colorado at Boulder.
Vista Products Vista's three main products are: State Vision High powered state machine editor. Supports concurrent and hierarchical state machines. Design Vision Event/Action thread editor. Graphical way of specifying arbitrary behavior. Vista Model Creator Table editor for combinational and state machine models. Convenient spreadsheet-like interface creates optimized models from function and state tables. Vista also markets: MCM Design Services Utilizing some advanced technology Vista has developed, we are currently offering an MCM design service.
WFST Library by Arnaud Adant, built on top of (see above) ASTL.
Xerox Lexical Technology XLT products perform tokenization (word breaking), morphological analysis and generation, part-of-speech tagging and sophisticated text compression. They are building blocks for virtually any natural-language processing application, including: sophisticated spell checking, generalized dictionary look-up, syntactic parsing, grammar checking, question answering, abstracting, fact extraction, and machine translation of natural languages.
BONeS FSM Editor
The BONeS Finite State Machine Editor is
an optional tool which enhances and complements BONeS DESIGNER's powerful toolset for even
more demanding and complex modeling tasks. With the BONeS Finite Machine Editor, you can
quickly model and analyze proprietary and emerging protocols and other system behavior. Finite
State Machine Editor Features: *Simplifies complexity of simulation models, particularly network
protocols, control, and system behavior *Substantially enhances and complements DESIGNER's
powerful, hierarchical, block-diagram, data-flow modeling paradigm.