Skip to main content
Log in

Using the causal domain to specify and verify distributed programs

  • Published:
Acta Informatica Aims and scope Submit manuscript

Abstract.

A system for specification and proof of distributed programs is presented. The method is based directly on the partial order of local states (poset) and avoids the notions of time and simultaneity. Programs are specified by documenting the relationship between local states which are adjacent to each other in the poset. Program properties are defined by stating properties of the poset. Many program properties can be expressed succinctly and elegantly using this method because poset properties inherently account for varying processor execution speeds. The system utilizes a proof technique which uses induction on the complement of the causally precedes relation and is shown to be useful in proving poset properties. We demonstrate the system on three example algorithms: vector clocks, mutual exclusion, and direct dependency clocks.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Author information

Authors and Affiliations

Authors

Additional information

Received 25 July 1995 / 16 September 1996

Rights and permissions

Reprints and permissions

About this article

Cite this article

Garg, V., Tomlinson, A. Using the causal domain to specify and verify distributed programs. Acta Informatica 34, 667–686 (1997). https://doi.org/10.1007/s002360050102

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s002360050102

Keywords

Navigation