Formal Verification of a Distributed Computer System

  • Authors:
  • M. Merritt;A. Orda;S. R. Sachs

  • Affiliations:
  • AT&/T Bell Labs, Murray Hill, NJ 07974, USA/ E-mail: mischu@research.att.com;Dept. of Elec. Eng., Technion, Haifa 32000, Israel/ E-mail: ariel@ee.technion.ac.il;Dept. of Elec. Eng. and CS, U.C. Berkeley, Berkeley, CA 94720, USA/ E-mail: ssachs@eclair.berkeley.edu

  • Venue:
  • Formal Methods in System Design
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Modeling distributed computer systems is known to be a challenging enterprise. Typically, distributed systems are comprised of large numbers of components whose coordination may require complexinteractions. Modeling such systemsmore often than not leads to the nominal intractability of the resulting state space.Various formal methods have been proposed to address the modeling of coordination among distributed systems components. For the most part, however, these methods do not support formal verificationmechanisms.By way of contrast, the {\em L-automata/L-processes} model supports formal verification mechanisms which in many examples cansuccessfully circumvent state spaceexplosion problems, and allow verification proofs to be extended to anarbitrary number of components.After reviewing L-automata/L-processes formalisms, we present here the formal specification ofa fault-tolerant algorithm for a distributed computer system.We also expose the L-automata/L-processesverification of the distributed system, demonstrating how various techniques such ashomomorphic reduction, induction, and linearization, can be used to overcomevarious problems which surface as one models large, complex systems.