I have used FSM in Digital sequential Circuit designs. But I am unfamiliar with Finite Automata. Can somebody help me in understanding 'basic' difference between the two ?
4 Answers
As far as I understand, both have "states", and "actions" that make the machine move from one state to another upon an input signal. Thus the conceptual ideas are the same. There is some difference in the details.
In FSM for circuit designs the input signal is mostly assumed to be a bit (binary), whereas in finite state automata one can have a general "abstract" alphabet of input symbols. Second, a FSM also generates an output, associated to the state reached, also binary. In automata terminology this 'extension' is called a Moore machine. Automata however have final (or accepting) states, that signal a favourable input read. Finally, FSM are mostly deterministic, i.e., for each input in a certain state there is one next state. In automata theory one also considers the nondeterministic variant where one might have choice in where to move.
- 31,459
- 1
- 54
- 109
Based on my experience as well as the Wikipedia article, there are several kinds of finite state machines, including
Some of the notions flying around differ mostly in motivation; some arose from language and/or computability theory, others from computer architecture.
Note that you can also change several paradigms to get automata that are, arguably, still finite-state automata, for instance
As you can see, vanilla finite automata as taught in TCS 101 is but one flavor of many, each with their own (more or less formal) definition.
- 73,212
- 30
- 182
- 400
Although the main idea on which they both rely on is same. Both use finite states and jump to another state as the input feed. However, FSM being a machine, like Full adder or SR flipflop has bits as input and output. Yeah, FSA also has bit output, 0 for non terminating state and 1 for terminating state, but it is an abstract mechanism and not seen. There is difference in the digraphs that is drawn to represent them. Beside that FSA is a logical and computation device while FSM is a digital logic device.
- 31
- 2
Based on the book, Introduction to Languages and the Theory of Computation , they are interchangeable terms.
... These are examples of a type of language acceptor called a finite automaton (FA), or finite-state machine.
- 175
- 9