Predicate-Based Dynamic Slicing of Message Passing Programs

  • Authors:
  • Juergen Rilling;Hon F. Li;Dhrubajyoti Goswami

  • Affiliations:
  • -;-;-

  • Venue:
  • SCAM '02 Proceedings of the Second IEEE International Workshop on Source Code Analysis and Manipulation
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Program Slicing is a well-known decomposition technique that transforms a large program into a smaller one that contains only statements relevant to the computation of a selected function. In this paper, we present a novel predicate-based dynamic slicing algorithm for messagepassing programs. Unlike the more traditional slicing criteria that focus only on the parts of the program that influence a variable of interest at a specific position in the program, a predicate focuses on those parts of the program that influence the predicate. The dynamic predicate slice captures some global requirements or suspected error properties of a distributed program and computes all statements that are relevant. This article presents an algorithm and a sample computation to illustrate how the predicate slice can be computed. Additionally, we introduce a predicate trace to classify the relevance of statement executions based on the predicate slice. A compressed predicate trace can be used to reveal those instances of statement execution that turn the global predicate true, among others.