Difference between revisions of "Communicating finite-state machine"
Karl Jones (Talk | contribs) (→External links) |
Karl Jones (Talk | contribs) |
||
Line 1: | Line 1: | ||
− | In [[computer science]], a '''communicating finite-state machine''' is a [[finite state machine]] labeled with "receive" and "send" operations over some alphabet of channels. | + | In [[computer science]], a '''communicating finite-state machine''' is a [[finite-state machine]] labeled with "receive" and "send" operations over some alphabet of channels. |
== Description == | == Description == | ||
Line 11: | Line 11: | ||
== See also == | == See also == | ||
+ | * [[Finite-state machine]] | ||
* [[Petri net]] | * [[Petri net]] | ||
Latest revision as of 02:06, 14 June 2016
In computer science, a communicating finite-state machine is a finite-state machine labeled with "receive" and "send" operations over some alphabet of channels.
Description
They were introduced by Brand and Zafiropulo, and can be used as a model of concurrent processes like Petri nets.
Communicating finite state machines are used frequently for modeling a communication protocol since they make it possible to detect major protocol design errors, including boundedness, deadlocks, and unspecified receptions.
The advantage of communicating finite state machines is that they make it possible to decide many properties in communication protocols, beyond the level of just detecting such properties. This advantage rules out the need for human assistance or restriction in generality.
See also
External links
- Communicating finite-state machine @ Wikipedia