Functional Representation and Program Debugging
Abstract
In this paper, we propose a method for representing and debugging computer programs that combines the best features of two streams of research in AI. The representation adopted here combines features normally found in only in plan representations with features normally found only an device representations. Not only does this combined approach solve problems that have not been solved by strictly plan-based or proof-based debuggers, but the formal nature of the programming domain has helped us to clarify the semantics of functional representations. We then introduce the notion of a context-rich semantics that we call the functional semantics of a program, and show how reasoning with the functional semantics has certain advantages over reasoning with traditional programming language semantics.