Universals and not Models
Michael Heather, University of Northumbria at Newcastle NE1 8ST, UK
Nick Rossiter, Computing Science, Newcastle University NE1 7RU
Cybernetic principles are general and independent of local reference frames. Yet a scientific model is always based on some view and any modelling language by its very nature distorts reality. Category theory on the other hand because of its universal character does not have the same limitations. This is because category theory is based not on the set as a fundamental but on the concept of a morphism, generally thought of as an arrow and represented by ®. The arrow represents any dynamic operation or static condition and can cope therefore with descriptive/ prescriptive equivalent views. For example, the arrow is a generalization of mathematical symbols like =,Î,Ì,<=,f(x),... with the usual respective meaning of equality, membership, partition, comparison, functional image, etc.
A B C D
A’ B’ C’ D’
Figure 1: Functors compare Categories
The arrow can never be free-standing: it must have some source and target, often conveniently named domain (dom) and codomain (cod) respectively. A category is a collection of arrows.
There are four basic constructs of category theory as found in standard texts. Conventionally (with names denoted in bold upper-case) a category is a collection of arrows between objects which may be named. Below we show a category C with two arrows f and g.
f : A ® B; g : C ® D
A functor relates one category to another: it is a mapping between categories. Figure 1 shows functor arrows K, L between categories A and C containing objects A, B, C, ... interrelated by arrows f, g, .... In Figure 1, K assigns from the source object A the target object K(A) to C and from a source arrow f the target arrow K(f) to g. Components of an information system may be represented by categories A, B, C, ....
An arrow between functors is termed a natural transformation as shown in Figure 2 where there is a natural transformation a from K to L, written:
a: K ® L
A B C D
A’ B’ C’ D’
Figure 2: Natural Transformations compare Functors
In this case natural means universal. It can be seen from Figure 2 that a maps a mapping (of the mapping of A to B on to C to D) on to a mapping (of the mapping of A’ to B’ on to C’ to D’). That is, starting at an object A we end up at an arrow g’. This mapping of objects to arrows is very powerful for knowledge discovery which in general moves from some object to find a related link elsewhere.
Category theory is able to unify many recent mathematical ideas which are needed in computer science [Barr & Wells 1990] particularly in knowledge engineering context. One important concept from sheaf theory is the pullback or fibred product where a product is restricted over some object or category. If C and S both have arrows to some common G as f: C ® G and t: S ® G, then the subproduct of C and S over G written as C CG S may be represented by the diagram shown in Figure 3 where f(C) correspond to t(S) and f(C}), t(S) are both objects of G.
C CG S G
Figure 3: Pullback of t along f
This diagram commutes in that
f o f*(t) = t o Îf(t)
f*(t) is described as the pullback of t along f. The product C CG S is an example of the universal limit. It seems in general that the discovery of knowledge is always the pullback of an arrow along another arrow over some category. The pullback limit is technically left-exactness [Freyd & Scedrov 1990]. This is the formal counterpart to the sense of exact knowledge in the real world as the term is discussed and used in the example in this paper.
M.Barr & C.Wells, Category Theory for Computing Science, Prentice-Hall (1990).
P.J.Freyd & A.Scedrov, Categories, Allegories, North-Holland Mathematical Library 39 (1990).