Summary: Testing by Narrowing
Sergio Antoy and Dick Hamlet
Portland State University
Department of Computer Science
Portland, OR 97207
Testing and debugging a program P may require
computing an input I such that the execution of P
on input I goes through some given path T of P .
We describe how to compute such an input for pro-
grams coded in a simple imperative language with
generic expressions including user-dened abstract
For example, consider the following program
which computes iteratively a preorder traversal of a
tree. Stack and tree are user-dened types.
declare s : stack; t : tree;