CSP Implementation Techniques - A Critical Analysis

2012 Declaration This work has not been previously accepted in substance for any degree and is not being concurrently submitted in candidature for any degree. This thesis is the result of my own investigations, except where otherwise stated. Other sources are acknowledged by footnotes giving explicit references. A bibliography is appended. I hereby give my consent for my thesis, if accepted, to be available for photocopying and for inter-library loan, and for the title and summary to be made available to outside organisations. Acknowledgements I would like to thank Dr. Markus Roggenbach for providing me with the opportunity to undertake this project. For his vast knowledge, which helped the thesis to get back on track when progress faltered, and for his continued patience throughout the project. I would like to thank Dr. Arnold Beckmann, whose encouragement and good will in my undergraduate third year allowed me to pursue this degree. I would like to thank Dr. Liam O'Reilly for his constant technical support in formatting this thesis and preparing the software used in this project. I would like to thank Phillip James and Nga Nguyen for their help in proof reading this thesis and providing helpful corrections and suggestions. I would like to thank my mum and dad for their moral support and Joanne Grey for her moral support and for keeping me going through the rough patches. Finally I would like to thank Erwin R. Catesbeiana Jr. for being a continued source of inspiration throughout the project.

[1]  Steve A. Schneider,et al.  Concurrent and Real-time Systems: The CSP Approach , 1999 .

[2]  Leslie Lamport,et al.  The Byzantine Generals Problem , 1982, TOPL.

[3]  Bettina Buth,et al.  Formal Methods for the International Space Station ISS , 1999, Correct System Design.

[4]  Pierre Marzin,et al.  Understanding Formal Methods , 2003, Springer London.

[5]  Neil R. Storey,et al.  Safety-critical computer systems , 1996 .

[6]  Mahesh H. Dodani Formal Methods for Software Engineering , 1994, CSEE.

[7]  W. B. Gardner,et al.  Synthesis of C++ software from verifiable CSPm specifications , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

[8]  Leslie Lamport,et al.  Reaching Agreement in the Presence of Faults , 1980, JACM.

[9]  A. W. Roscoe Understanding Concurrent Systems , 2010, Texts in Computer Science.

[10]  Jean-François Monin Understanding formal methods , 2003 .

[11]  William B. Gardner CSP++: How Faithful to CSPm? , 2005, CPA.

[12]  M. F.,et al.  Bibliography , 1985, Experimental Gerontology.

[13]  Peter H. Welch,et al.  Process Oriented Design for Java: Concurrency for All , 2002, International Conference on Computational Science.

[14]  M. Serra,et al.  Csp++: an object-oriented application framework for software synthesis from csp specifications , 2000 .

[15]  Markus Roggenbach,et al.  CSP-Prover - A proof tool for the verification of scalable concurrent systems , 2008 .

[16]  Donald E. Knuth,et al.  The Art of Computer Programming: Volume 3: Sorting and Searching , 1998 .

[17]  S. Lakshmivarahan,et al.  Parallel Sorting Algorithms , 1984, Adv. Comput..

[18]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[19]  Jeremy M. R. Martin,et al.  Formal Analysis of Concurrent Java Systems , 2000 .

[20]  Aristides Dasso,et al.  Formal Methods in Software Engineering , 2005, Encyclopedia of Information Science and Technology.

[21]  J. Bryan Scattergood The semantics and implementation of machine-readable CSP , 1998 .

[22]  Neil Brown,et al.  Integrating and Extending JCSP , 2007 .