It has been argued that some sort of control must be introduced in order to perform update operations in deductive databases. Indeed, many approaches rely on a procedural semantics of rule based languages and often perform updates as side-effects. Depending on the evaluation procedure, updates are generally performed in the body (top-down evaluation) or in the head of rules (bottom-up evaluation). We demonstrate that updates can be specified in a purely declarative manner using standard model based semantics without relying on procedural aspects of program evaluation. The key idea is to incorporate states as first-class objects into the language. This is the source of the additional expressiveness needed to define updates. We introduce the update language Statelog+-, discuss various domains of application and outline how to implement computation of the perfect model semantics for Statelog+- programs.
Additional information:
Das Dokument wird vom Publikationsserver der Universitätsbibliothek Mannheim bereitgestellt.