ABSTRACT

This chapter describes construct precisely such a model for the logic programming language Prolog, based upon a notational extension of logic programming's traditional AND/OR trees. It describes fine-grained view of Prolog execution in detail, and argues that this fine-grained view can readily be integrated into a coarse-grained model such as that required for understanding the execution of very large programs. The chapter provides the details of the graphical AORTA notation which serves as the basis for fine-grained account of Prolog execution, and also provides an overview of a teaching curriculum based almost entirely on this fine-grained account. For a Prolog execution notation to be of practical use when dealing with real Prolog applications, it must be capable of scaling up to deal with a large amount of information while still being able to show the close-up detail.