Electronic News Journal on Reasoning about Actions and Change
   Published as a Note in the News Journal; click for more information.

The Situation Calculus Ontology

by Ray Reiter

I like Erik's proposal for lots of reasons, but mostly because he wants to keep the discussion technical. No vague claims, and amen to that.

Here's what I want to say:

1. Erik's notion of an ontology seems odd to me, mainly because it requires "that the "frame assumption" or assumption of persistence must be built into the ontology". I would have thought that the frame assumption is epistemological or, as the philosophers like to say, "metaphysical". My own understanding of "ontology" is that it is determined by the {\em language} one uses in formulating one's theories. In any case, I think that Erik {\em is} making an important foundational point, namely, that there are two rather different ways to address the frame problem, one more fundamental than the other:

a. Solve it axiomatically by including in one's domain axioms suitable sentences capturing the frame assumption. Whether or not these axioms are parsimonious, or how one arrives at them, is largely irrelevant. The problem is seen simply as writing down an intuitively correct collection of axioms. This is the "classical" approach in AI. It seems to be what McCarthy and Hayes had in mind in their original formulation of the problem. In other words, this is the axiom-hacking approach. I admit to being guilty of this sin in almost all my past work on actions.

b. The second approach -- which I believe Erik is advocating -- is much more principled and fundamental. It requires that one's ontological assumptions (in Erik's use of the term) be formalized {\em semantically}, i.e. as a class of structures in the logician's sense of that word. Of course, this must be a class of structures for some logical {\em language}. So one's ontological assumptions (in my sense of the term) have first to be expressed in a choice of language, but that having been done, one can then define the class of structures that capture one's intuitions about persistence. Alas, a lot more remains to be done after this. Next, you have to figure out what {\em sentences} of the language characterize the above class of structures, and finally, prove a representation theorem stating that the models of these sentences are all and only the structures in the class. I take it that much of Erik's work is of this kind, as is also the work on the A-families of languages of Gelfond and Lifschitz. Circumscriptive approaches seem to lie somewhat between the axiom-hacking and semantic methodologies.

I have no quarrel with the second approach. I think that methodologically, it's the right way to go. However, most of my work, and that of my colleagues at Toronto, is motivated by quite different considerations, namely, given a (perhaps not completely general, perhaps not methodologically solid) solution to the frame problem, what can we do with it? We have been very busy answering this question during the past few years, and this has led to the GOLOG family of programming languages, as well as various extensions of the sitcalc ontology and of our solution to the frame problem to accommodate this extended ontology.

Which brings me to:

2. The extended ontology of the sitcalc for which the basic solution to the FP is sufficient.

  • Concurrency.
  • Time (discrete, continuous, linear, circular, whatever you want).
  • Natural actions (e.g. falling objects, balls colliding, bus schedules).
  • Continuous actions.
  • Sensing actions and knowledge.
  • Complex actions, programs, concurrent programs, interrupts, reactive behavior (GOLOG, Temporal GOLOG, RGOLOG, CONGOLOG).

I think that Erik is right in focusing on ontologies in this panel, so let me say a little bit about the sitcalc ontology, how it differs from other approaches to actions, and why these differences matter.

3. The central ontological ingredient of the sitcalc is the situation. Even at this late stage in AI, many people still don't understand what a situation is, so here's the secret: A situation is a finite sequence of actions. Period. It's not a state, it's not a snapshot, it's a history. Moreover, situations are first class objects in the sitcalc -- you can quantify over them.

These features have lots of consequences:

(a) Planning is done deductively, not abductively as in linear time logics like the event calculus or the features and fluents approach.

(b) Because they are just action sequences, plans are situations; they are terms in the language and can therefore be inspected by suitable predicates and reasoned about. Our experience has been that this is an essential feature of the sitcalc. See Fangzhen Lin's paper at this IJCAI for an elaboration and application of this idea.

(c) The GOLOG family of languages depends crucially on the fact that histories are first class objects in the sitcalc. The result of executing a GOLOG program is a situation representing its execution trace.

(d) The space of situations is the set of all finite sequences and therefore it is a tree rooted at [], the empty sequence. This means that the sitcalc provides branching futures. In addition, the sitcalc ontology includes a predicate for subsequence. This, together with the ability to quantify over situations means that one can express almost all the modalities that temporal logics provide like in (some, all) futures, past, next, etc.

(e) Since it supports branching futures, the sitcalc is well suited to hypothetical and counterfactual reasoning.

(f) Because situations are terms, they can function as surrogates for the possible worlds much beloved of modal logicians. This means, as Bob Moore showed years ago, and as Hector Levesque has elaborated, we can axiomatize accessibility relations on situations, and embed logics of knowledge directly into the sitcalc. As John Mccarthy likes to put it: Modalities si, modal logic no! Using this, Levesque has formulated an elegant treatment of sensing actions, knowledge and a solution to the frame problem for knowledge within the sitcalc.

4. Relationship of the sitcalc to other ontologies. (I'm flying a bit by the seat of my pants here. Corrections welcome.)

Sitcal              A-languages          Linear temporal approaches
                                         (e.g. event calculus, F&F)

actions are terms     same?                  same

histories are
first class           state-based            no histories
citizens              no histories

branching futures     branching              linear

first order           propositional          first order

supports sensing
actions and knowledge  possible, but                 
without explicit       not yet done.         not likely
5. Finally, I'd like to say a few words about relationships to another approach to dynamical systems, namely classical discrete event control theory. The central component of DECT is an automaton, whose transitions are defined by actions, and whose states are what we normally think of as world states, i.e. tuples of fluent truth values. The work on A-languages comes very close to this view semantically and one can view this work as the logicization of DECT. There are lots of advantages to this logicization, not least, that sentences in a language provide a compact representation for the exponentially large state spaces that control theorists have to deal with. Also, sentences allow for incomplete information about the initial state, a serious and difficult problem for control theory. While this connection to DECT is pretty direct for the sitcalc and A-languages, it's not so straightforward for the linear temporal logics. I think the sitcalc has lots of advantages for establishing these connections: (a) It's first order and therefore generalizes the essentially propositional automata of DECT. (DECT can be interpreted as a version of the monadic sitcalc.) (b) The family of GOLOG languages can be used to write controllers. (c) Because it's all in logic, one can prove properties of these controllers (safety, fairness, etc). (d) With its expanded ontology for continuous actions and time, the sitcalc is suitable for modeling and controlling so-called "hybrid" systems, a hot topic these days in the control theory world.

Editor: Erik Sandewall, Linköping University, Sweden.
This debate contribution can be cited as resident at the following URL: