Friday, May 18, 2007

Mealy machine

A Mealy machine is a finite state machine that generates an output based on its current state and an input. This means that the state diagram will include both an input and output signal for each transition edge. In contrast, the output of a Moore finite state machine depends only on the machine's current state; transitions have no input attached. However, for each Mealy machine there is an equivalent Moore machine whose states are the union of the Mealy machine's states and the Cartesian product of the Mealy machine's states and the input alphabet.

The name Mealy machine comes from that of the concept's promoter, G. H. Mealy, a state-machine lead the way who wrote "A Method for Synthesizing Sequential Circuits" in 1955.

Mealy machines provide a basic mathematical model for cipher machines. Considering the input and output alphabet the Latin alphabet, for example, then a Mealy machine can be designed that given a string of letters can process it into a ciphered string. However, although you could probably use a Mealy model to describe Enigma, the state diagram would be too complex to provide feasible means of designing complex ciphering machines.

No comments: