Abstract
An algebraic specification is given of an algorithm for recovery from catastrophe by a deterministic process. A second version of the algorithm also includes check-points. The algorithms are formulated in the notations of Communicating Sequential Processes (Hoare 1985) and the proofs of correctness are conducted wholly by application of algebraic laws (together with the unique fixed point theorem).
Similar content being viewed by others
References
Backus J (1978) Can programming be liberated from the von Neuman style? Commun ACM 21 (8):613–641
Baeten JCM, Bergstra JA, Klop JW (1983), Syntax and defining equations for an interrupt mechanism in process algebra. Report CS-R8503. Centre for Mathematics and Computer Science, Amsterdam, The Netherlands
Burstall RM, Darlington J (1977) A transformation system for developing recursive programs. J ACM 24 (1):44–67
Goguen JA, Thatcher JW Wagner EG (1978) An initial algebra approach to the specification, correctness and implementation of abstract data types. Current Trends in Programming Methodology, Vol IV. Data Structurin Yeh RT (ed), Prentice-Hall, Englewood Cliffs, pp 80–149
Guttag JV, Horning JJ (1978) The algebraic specification of abstract data type. Acta Inf 10 (1):27–52
Hoare CAR (1985) Communicating sequential processes. Prentice Hall International Series in Computer Science
Hoare CAR, Zhou C. C. (1981) Partial correctness of communicating sequential processes. Proc Internat Conf on Distributed Computing
INMOS Ltd (1984) The occam programming manual. Prentice-Hall
Lamport L (1978) Time, clocks and the ordering of events in a distributed system. Commun ACM 21 (7):558–565
Prasad KVS (1984) Specification and proof of a simple fault tolerant system in CCS. Internat report CSR-178-84, University of Edinburgh
Author information
Authors and Affiliations
Additional information
He Jifeng received the B.S. degree in mathematics from Fudan University, Shanghai (China), in 1965. Then he taught in the department of mathematics, Shanghai Normal University. In 1972 he moved to East China Normal University where he was a lecturer of computer science. Since September 1986 he has been a professor of computer science at East China Normal University. He is currently working at Oxford University Computing Laboratory. His major research interests are programming language semantics, software engineering and distributed computing.
Tony Hoare is Professor of Computation at the University of Oxford. He received his MA from Oxford in Classical Languages, Literature, History and Philosophy. He worked for eight years as programmer, manager and research scientist with a small computer manufacturer. He is the recipient of several honours for his contributions to the study of computer programming languages, and is generally famed for Hoare's Law: inside every large program there is a small program trying to get out.
Rights and permissions
About this article
Cite this article
Jifeng, H., Hoare, C.A.R. Algebraic specification and proof of a distributed recovery algorithm. Distrib Comput 2, 1–12 (1987). https://doi.org/10.1007/BF01786251
Issue Date:
DOI: https://doi.org/10.1007/BF01786251