“…Program modelling is just one of several motivations for this work however. Domain and range are already transparently natural features of both relations and functions, and the modelling of these via unary operations can be traced back at least to the work of Menger [30], through the work of Schweizer and Sklar [35,36,37, 38], Trokhimenko [39], Bredikhin [6] and Schein [34] and into the work of the authors and their collaborators [19,22,23,24] as well as in the category-theoretic work of Cockett, Lack, Guo, Hofstra, Manes amongst others [8,9,10,11]. Yet another motivation comes from the structural theory of semigroups, where many authors have enriched the usual associative binary multiplication by the addition of unary operations that map onto idempotent elements; see for example Fountain [16,17], 1 To the best of the authors' knowledge, the earliest reference to demons in this context may be in Broy, Gnatz and Wirsing [7], where Dijkstra [15] is cited as an instance of demonic modelling of nondeterminancy.…”