consists of a finite set S of states, a finite input alphabet I, a finite
output alphabet O, a transition function f that assigns to each state and input pair a new state, an output
function g that assigns to each state and input pair an output, and an initial state s0.