Jukka Paakki
Department of Computer Science
P.O.Box 26,
FIN-00014 University of Helsinki, Finland
email: paakki@cs.helsinki.fi
A technique for static slicing of logic programs is presented. The method applies techniques originally developed for attribute grammars to automatically infer and analyze the data flow pattern of a subject program.
When mapping the general data flow pattern into a specific proof tree, a slice with respect to indicated arguments in the tree can be extracted. The main application area of the method is algorithmic debugging where the produced slice can substantially improve the debugger's performance by excluding those parts of the proof tree that have no effect on the computation of erroneous output values. Improved variants of the basic technique are also presented.