Research Article

Combining Slicing and Constraint Solving for Better Debugging: The CONBAS Approach

Algorithm 1

RELEVANTSLICE ( , , , ).
Require: An execution trace , a variable of interest , and a certain line
     number of the execution trace .
Ensure: A relevant slice.
 Compute the execution trace ETG using the dependence relations , , and .
 Mark the node in the ETG, where and there is no other
   statement , , in the ETG.
 Mark all test nodes between and , which evaluate to the boolean value and where
    .
 Traverse the ETG from the marked nodes in the reverse direction of the arcs until no
    new nodes can be marked.
 Let be the set of all marked nodes.
 Return the set as result.