PROCESS ALGEBRA A computer process is a program or section of a program (such as a function) in execution. It may be in one of the following states: ready, running, waiting, or terminated. A process algebra is a concise language for describing the possible execution steps of computer processes. It has a set of operators and syntactic rules for specifying a process using simple, atomic components. It is usually not a logic-based language. Central to process algebras is the notion of equivalence, which is used to show that two processes have the same behavior | Real-Time Systems Scheduling Analysis and Verification. Albert M. K. Cheng Copyright 2002 John Wiley Sons Inc. ISBN 0-471-18406-3 CHAPTER 9 PROCESS ALGEBRA A computer process is a program or section of a program such as a function in execution. It may be in one of the following states ready running waiting or terminated. A process algebra is a concise language for describing the possible execution steps of computer processes. It has a set of operators and syntactic rules for specifying a process using simple atomic components. It is usually not a logic-based language. Central to process algebras is the notion of equivalence which is used to show that two processes have the same behavior. Well-established process algebras such as Hoare s Communicating Sequential Processes CSP Hoare 1978 Hoare 1985 Milner s Calculus of Communicating Systems CCS Milner 1980 Milner 1989 and Bergstra and Klop s Algebra of Communicating Processes ACP Bergstra and Klop 1985 have been used to specify and analyze concurrent processes with interprocess communication. These are untimed algebras since they allow one to only reason about the relative ordering of the execution steps and events. To use a process algebra or a process-algebraic approach to specify and analyze a system we write the requirements specification of the system as an abstract process and the design specification as a detailed process. We then show that these two processes are equivalent thus showing the design specification is correct with respect to the requirements specification. Here the requirements specification may include the desired safety properties. UNTIMED PROCESS ALGEBRAS A process algebra has four basic components 1 a concise language to specify a system as a process or set of processes 2 an unambiguous semantics to provide 237 238 PROCESS ALGEBRA precise meanings for the behavior of the specified processes showing the possible execution steps of these processes 3 an equivalence or preorder relation to .