Finite Automata Game

Learn how finite automata and regular expressions are connected.
Make your way through levels of increasing difficulty,
building finite automata to match the target regular expression.

LEVEL 1
Your browser does not support the HTML5 canvas tag.

Stuck?

Check these skill cards for the skills you have learnt so far...
Basic Toolbar Usage - Creation

Add states by clicking the 'add state' toolbar button.
Add connections by clicking on the connections button then the 'from' and 'to' states.
Change a state to be final by right clicking on it.

Basic Toolbar Usage - Deletion

Use the bin tool to remove states (click on the state) or connections (click on the specific letter).

Basic Automata Building

Follow the regular expression (target) and create diagrams to match the target.
Right click to toggle final state.

Alphabet Skills

Left click on the letter of a connection to change the letter.

Kleene Star ( * )

Kleene star ( * ) means you need to allow "zero or more" of whatever precedes the star in a regular expression.

Advanced Automata Building

For more complicated Finite Automata, you could build the parts separately then put them together.

OR operator ( | )


The OR operator ( | ) means you have to allow for either letter to be chosen at this point in a word; so two connections with different letters coming from one state.

Advanced Kleene Star

Sometimes more than one letter will precede Kleene Star. In this case, you must allow "zero or more" of the preceding pattern to be used in a word.

Created by Freya Johnson
freya02@hotmail.co.uk
2016