The objective of my research program is to advance the theory and practice of program augmentation, including automatic differentiation, by both developing new algorithms and creating programming tools that enable the convenient application of augmentation techniques.

A secondary objective for my research program is to construct useful scientific problem solving environments, especially for facilitating the effective use of high performance computing. I believe that program augmentation will be a big part of such environments.