Finite-state machines are of two types- deterministic finite-state machines and non-deterministic finite-state machines. An FSM is defined by a list of its states, its initial state, and the inputs that trigger each transition. The FSM can change from one state to another in response to some inputs the change from one state to another is called a transition. It is an abstract machine that can be in exactly one of a finite number of states at any given time. (Clicking on each layer gets an article on that subject)Ī finite-state machine ( FSM) or finite-state automaton ( FSA, plural: automata), finite automaton, or simply a state machine, is a mathematical model of computation.