Modeling Complex Systems in the Situation Calculus: A Case Study Using the Dagstuhl Steam Boiler Problem

We take advantage of the results of (Rei96) to show that the situation calculus is a powerful and practical modeling language. The paper provides a brief overview of the concurrent temporal situation calculus and how it is used to specify physical behavior. It then presents the Dagstuhl steam boiler problem as an example of a complex physical system of interest in the real world. The problem was the focus of the Dagstuhl meeting, "Methods for Semantics and Specification", whose goal was to develop criteria by which to compare advantages and drawbacks of formal methods for practical applications. The paper presents the situation calculus specification of the focus of the problem, the steam boiler controller. It then discusses the theoretical foundation of a PROLOG technology simulator, which, together with the specification, form an implementation of the controller. The paper concludes with an evaluation of the situation calculus solution to the problem, using the criteria which emanated from the Dagstuhl meeting.