Virtual Finite Automaton

This simulator is based on Paul Ming's Virtual Turing Machine, which has been modified to simulate deterministic finite automata. Examples are available.

Consider the language of all words over the alphabet {a, b} that do not begin with the symbol b (i.e. where each word begins with symbol a, or the word has no symbols at all).

This language can also be written as {w : w  in {a, b}*, w does not begin with b}. For example, the following words are in the language: a, ab, aaaaaaa, abbbbbb.
The following words are not in the language: ba, aba, bbbba.

The finite automaton below will output "#ACCEPT" if it gets a word in the language and will output "#REJECT" if it gets a valid input that is not in the language.

Valid inputs to the finite automaton are words containing a symbols and b symbols, in any order, but no other symbols. Spaces are ignored.


This virtual finite automaton is used as part of Thomas Naughton's introductory computer theory lectures, for example, Maynooth University Department of Computer Science module CS605.