  In this paper we propose a logic-based, framework inspired by artificial
intelligence, but scaled down for practical database and programming
applications. Computation in the framework is viewed as the task of generating
a sequence of state transitions, with the purpose of making an agent's goals
all true. States are represented by sets of atomic sentences (or facts),
representing the values of program variables, tuples in a coordination
language, facts in relational databases, or Herbrand models.
  In the model-theoretic semantics, the entire sequence of states and events
are combined into a single model-theoretic structure, by associating timestamps
with facts and events. But in the operational semantics, facts are updated
destructively, without timestamps. We show that the model generated by
destructive updates is identical to the model generated by reasoning with facts
containing timestamps. We also extend the model with intentional predicates and
composite event predicates defined by logic programs containing conditions in
first-order logic, which query the current state.
