Automatic Verification of Pointer Data-Structure Systems for All Numbers of Processes

  • Authors:
  • Farn Wang

  • Affiliations:
  • -

  • Venue:
  • FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume I - Volume I
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

Real-world concurrent software may be implemented with any number of processes which are linked together to form complex and dynamic network configurations. We formally model such concurrent software as processes running algorithms on data-structures with pointers. We show that the verification problem of such algorithms is undecidable. A new automatic approximation method is then proposed to safely verify such algorithms. The central idea is to construct a finite collective image set (CIS) which collapses reachable state representations for all implementations of all numbers of processes. Our collapsing scheme filters out unimportant information of system behaviors and results in CIS's with manageable space requirements. Analysis shows our method can automatically generate a CIS of size 1619 to verify that a version of Mellor-Crummy & Scott's algorithm preserves mutual exclusion for all numbers of processes.