The Axiomatization of Override and Update

J. Berendsen, D. Jansen, J. Schmaltz, and F.W. Vaandrager. The Axiomatization of Override and Update. Journal of Applied Logic 8:141-150, 2010. ISSN 1570-8683, DOI: 10.1016/j.jal.2009.11.001.

Abstract

There are only very few natural ways in which arbitrary functions can be combined.
One composition operator is *override:* for arbitrary functions *f* and *g*, *f* ▻ *g* is
the function with domain dom(*f*) ∪ dom(*g*) that behaves like *f* on dom(*f*) and like *g*
on dom(*g*) \ dom(*f*).
Another composition operator is *update:* *f*[*g*] has the same domain as *f*, behaves like
*f* on dom(*f*) \ dom(*g*), and like *g* on dom(*f*) ∩ dom(*g*).
These operators are fundamental and widely used, especially within computer science,
where for instance *f*[*g*] may denote the new state that results when in state *f*
the updates given as *g* are applied.
It is therefore surprising that thus far no axiomatization of these operators has
been proposed in the literature.
As an auxiliary operator we consider the *minus* operator: *f* – *g* is the restriction
of *f* to the domain dom(*f*) \ dom(*g*).
The update operator is then defined in terms of override and minus.
We present five equations that together constitute a sound and complete
axiomatization of override and minus.
As part of our completeness proof, we infer a large number of useful
derived laws using the proof assistent Isabelle.
With the help of the SMT solver Yices, we establish
independence of the axioms. Thus, our axiomatization is also minimal.
Finally, we establish that override and minus are functionally complete in the sense that
any operation on general functions that corresponds to a valid colouring of a Venn diagram
can be described using just these two operations.

Local copy of paper

DOI http://dx.doi.org/10.1016/j.jal.2009.11.001

Isabelle sources of derivations of derived laws

More Isabelle files

Human readable proofs of derived laws

Yices sources for independence proofs