1. Introduction
Program slicing is a widely used method for understanding and detecting the impact of changes to software. The idea is fairly simple; given a variable and the location of that variable in a program, tell me what other parts of the program are affected by this variable. Unfortunately, there are not any open-source slicing tools available that are scalable to large systems. While some free versions of commercial tools are available for academic use they are limited on the size of code base that can be analyzed. For example, the free version of CodeSurfer will not slice programs over 200KLOC.