CSP is used for the description and representation of concurrent systems, how it is used in practice (theoretically and programmatically)?

What are the application areas (other than concurrent and parallel systems) where it is used?


One of the most celebrated applications of CSP and was the use of the CSP tool FDR in the analysis of the Needham-Schroeder protocol. It has had other applications in analyzing protocols and software design.

Breaking and fixing the Needham-Schroeder Public-Key Protocol using FDR, Gavin Lowe, TACAS 1996

Using CSP to detect errors in the TMN protocol , Gavin Lowe , Bill Roscoe, IEEE Transactions on Software Engineering 1997

Model-Checking CSP-Z: Strategy, Tool Support and Industrial Application, Science of Computer Programming 2001

Practical Application of CSP and FDR to Software Design, Jonathan Lawrence, Communicating Sequential Processes. The First 25 Years, 2005


CSP is the formal basis of the programming language Occam which compiled to INMOS Transputers. Transputers appeared in all sorts of devices, such as set-top boxes for satellite TV. Eventually, however, the company doing all of this work failed to achieve commercial success, and was eventually absorbed by another company.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.