Unifying Theories of Programming - Relations

Relations

The most basic UTP theory is the alphabetised predicate calculus, which has no alphabet restrictions or healthiness conditions. The theory of relations is slightly more specialised, since a relation's alphabet may consist of only:

  • undecorated variables, modelling an observation of the program at the start of its execution; and
  • primed variables, modelling an observation of the program at a later stage of its execution.

Some common language constructs can be defined in the theory of relations as follows:

  • The skip statement, which does not alter the program state in any way, is modelled as the relational identity:

  • The assignment of value to a variable is modelled as setting to and keeping all other variables (denoted by ) constant:

  • The sequential composition of two programs is just relational composition of intermediate state:

  • Non-deterministic choice between programs is their greatest lower bound:

  • Conditional choice between programs is written using infix notation:

  • A semantics for recursion is given by the least fixed point of a monotonic predicate transformer :

Read more about this topic:  Unifying Theories Of Programming

Famous quotes containing the word relations:

    Think of the many different relations of form and content. E.g., the many pairs of trousers and what’s in them.
    Mason Cooley (b. 1927)

    I only desire sincere relations with the worthiest of my acquaintance, that they may give me an opportunity once in a year to speak the truth.
    Henry David Thoreau (1817–1862)

    It is commonplace that a problem stated is well on its way to solution, for statement of the nature of a problem signifies that the underlying quality is being transformed into determinate distinctions of terms and relations or has become an object of articulate thought.
    John Dewey (1859–1952)