A Tutorial Introduction to CSP in Unifying Theories of Programming

  • Ana Cavalcanti
  • Jim Woodcock
Conference paper

DOI: 10.1007/11889229_6

Volume 3167 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Cavalcanti A., Woodcock J. (2006) A Tutorial Introduction to CSP in Unifying Theories of Programming. In: Cavalcanti A., Sampaio A., Woodcock J. (eds) Refinement Techniques in Software Engineering. PSSE 2004. Lecture Notes in Computer Science, vol 3167. Springer, Berlin, Heidelberg

Abstract

In their Unifying Theories of Programming (UTP), Hoare & He use the alphabetised relational calculus to give denotational semantics to a wide variety of constructs taken from different programming paradigms. In this chapter, we give a tutorial introduction to the semantics of CSP processes, as presented in Chapter 3. We start with a summarised introduction of the alphabetised relational calculus and the theory of designs, which are pre-post specifications in the style of specification statements. Afterwards, we present in detail a theory for reactive processes. Later, we combine the theories of designs and reactive processes to provide the model for CSP processes. Finally, we compare this new model with the standard failures-divergences model for CSP.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Ana Cavalcanti
    • 1
  • Jim Woodcock
    • 1
  1. 1.Department of Computer ScienceUniversity of YorkYorkUK