ABSTRACT

A finite-state machine is a mathematical logic. It is essentially a computer program: it represents a sequence of instructions to be executed, each depending on a current state of the machine and the current stimulus. More formally, a finite-state machine is a 5-tuple

M = (Q, τ, ρ, s, o)

where Q is a finite set, the set of states, τ is a finite set, the set of input symbols, ρ is a finite set, the set of output symbols, s : Q × τ → Q is the next state function, and o : Q × τ → ρ is the next output function.