This document describes the application of formal methods to concurrent software systems, specifically communication protocols. The chosen formal method is Milner\u27s process algebra called the Calculus of Communicating Systems (CCS). We applied CCS to the specification and verification of the Open Systems Interconnection (OSI) Session Layer (SL). We modeled the Session Layer service and Session Layer protocol in CCS, and verified it using CCS\u27s automated model checker, the Edinburgh Concurrency Workbench (CWB). We verified that the protocol specification satisfies the service specification. We also formally embedded CCS in the first-order formal language Larch, using the automated theorem prover Penelope. We tested the embedding by spe...
Process calculi are expressive specification languages for concurrency. They have been very successf...
Process calculi are expressive specification languages for concurrency. They have been very successf...
It is important to reason about a number of desirable protocol properties to ensure correctness of a...
This report was originally written to fulfill in part the requirements of the author\u27s WPE examin...
AbstractAssume a communication network, consisting of switching nodes which make connections (like t...
In order to verify program correctness one needs an appropriate programming language, a specificatio...
The Concurrency Workbench is an automated tool for analyzing networks of finite-state processes expr...
The Concurrency Workbench is an automated tool for analyzing networks of finite-state processes expr...
This thesis develops two Calculi for Higher Order Communicating Systems. Both calculi consider sendi...
Process algebras are a set of mathematically rigorous languages with well defined semantics that per...
AbstractHigh-level specification of patterns of communications such as protocols can be modeled eleg...
A concurrent system is a computer system with components that run in parallel and interact with each...
A concurrent system is a computer system with components that run in parallel and interact with each...
We describe the application of three formal design tools to a case study in the design of a distribu...
A concurrent system is a computer system with components that run in parallel and interact with each...
Process calculi are expressive specification languages for concurrency. They have been very successf...
Process calculi are expressive specification languages for concurrency. They have been very successf...
It is important to reason about a number of desirable protocol properties to ensure correctness of a...
This report was originally written to fulfill in part the requirements of the author\u27s WPE examin...
AbstractAssume a communication network, consisting of switching nodes which make connections (like t...
In order to verify program correctness one needs an appropriate programming language, a specificatio...
The Concurrency Workbench is an automated tool for analyzing networks of finite-state processes expr...
The Concurrency Workbench is an automated tool for analyzing networks of finite-state processes expr...
This thesis develops two Calculi for Higher Order Communicating Systems. Both calculi consider sendi...
Process algebras are a set of mathematically rigorous languages with well defined semantics that per...
AbstractHigh-level specification of patterns of communications such as protocols can be modeled eleg...
A concurrent system is a computer system with components that run in parallel and interact with each...
A concurrent system is a computer system with components that run in parallel and interact with each...
We describe the application of three formal design tools to a case study in the design of a distribu...
A concurrent system is a computer system with components that run in parallel and interact with each...
Process calculi are expressive specification languages for concurrency. They have been very successf...
Process calculi are expressive specification languages for concurrency. They have been very successf...
It is important to reason about a number of desirable protocol properties to ensure correctness of a...