A Deterministic Finite

Automata (

DFA for short) is a computational

device that will either

accept or

reject a given string. Each

state in a DFA

determines the next state, which can only be accessed if the next

symbol to be processed lies on the

edge connecting the

current state to the

next state.

In books on

computational theory, a DFA is written as a

tuple, where each item in the tuple denotes the set of states, the set of symbols the DFA works with (usually a couple letters or numbers to illustrate the concept), a transition function, and the start and accept states.