## Slicing as a Program Transformation (2007)

Venue: | ACM Transactions On Programming Languages and Systems |

Citations: | 11 - 2 self |

### BibTeX

@ARTICLE{Ward07slicingas,

author = {Martin Ward and Hussein Zedan},

title = {Slicing as a Program Transformation},

journal = {ACM Transactions On Programming Languages and Systems},

year = {2007},

volume = {29},

pages = {2007}

}

### OpenURL

### Abstract

The aim of this paper is to provide a unified mathematical framework for program slicing which places all slicing work, for sequential programs, on a sound theoretical foundation. The main advantage to a mathematical approach is that it is not tied to a particular representation. In fact the mathematics provides a sound basis for any particular representation. We use the WSL (Wide Spectrum Language) program transformation theory as our framework. Within this framework we define a new semantic relation, semi-refinement which lies between semantic equivalence and semantic refinement. Combining this semantic relation, a syntactic relation (called reduction) and WSL’s remove statement, we can give mathematical definitions for backwards slicing, conditioned slicing, static and dynamic slicing and semantic slicing as program transformations in the WSL transformation theory. A novel technique of “encoding ” operational semantics within a denotational semantics allows the framework to handle “operational slicing”. The theory also enables the concept of slicing to be applied to nondeterministic programs. These transformations are implemented in the industry-strength FermaT transformation system.