Imagine a robot that is executing a program on-line, and, insofar as it is reasonable to do so, it wishes to continue with this on-line program execution, no matter what exogenous events occur in the world. Execution monitoring is the robot's process of observing the world for discrepancies between the actual world and its internal representation of it, and recovering from such discrepancies. We provide a situation calculus-based account of such on-line program executions, with monitoring. This ...