| | |
Summary: Correctness of Practical Slicing for Modern Program Structures
Torben Amtoft
Department of Computing and Information Sciences
Kansas State University, Manhattan KS 66506, USA
tamtoft at ksu dot edu
Abstract
Slicing is a program transformation technique with nu-
merous applications, since it allows the user to focus on the
parts of a given program that are relevant for a given pur-
pose. Ideally, the sliced program should have the same ter-
mination properties as the original program, but to achieve
this, the slicing algorithm must include in the slice all com-
mands that influence the guards of potential loops. For
practical purposes, so as to keep the slices manageable, it
might be better to slice away loops that do not affect the
values of relevant variables.
This paper presents foundational work that accom-
plishes this goal for arbitrary control flow graphs, whereas
previous approaches have assumed the presence of a unique
end node; therefore, the proposed approach is able to han-
|