...

/

Finite State Machines

Finite State Machines

Learn about transition graphs, and look at a few examples of finite state machines.

Transition graphs

We design our computations to only consider one symbol at a time, making decisions based only on the current “state” and the current input symbol. Consider the language LL:

L={λ,aa,ab,ba,bb,aaaa,aaab,aaba,aabb,abaa,}L=\{ \lambda, aa, ab, ba, bb, aaaa, aaab, aaba, aabb, abaa,\cdots \}

For this language, we only need to know whether or not the number of symbols consumed at any point is even.

Since integers are either even or odd, we have only two states (evenness vs. oddness) to consider. The transition graph in the figure below depicts a two-state, abstract machine that will solve our problem; we have only to observe whether or not an input string causes the machine to halt in the “even” state, EE.

Press + to interact
A transition graph for a machine that accepts the language L
A transition graph for a machine that accepts the language L

The start state is EE, indicated by an incoming arrow from “out of nowhere.” The edges between states E ...