## Have Hammer Need Nail

In the past month or two here on Dead Voles the notions of instance and of type have come up in several times (not always in the same place). I have become more keenly aware of this distinction, particularly in certain discussions of cultural anthropology, but also endemically in discussions of programming. More precisely, I have become more keenly aware of how often we slip between talking about the world in the language of types and in the language of tokens, without really being aware that we are doing it, and how difficult and fruitful it can be to discipline ourselves to maintain the distinction, especially when we are trying to analyze the social world.

The history of situation theory’s struggle to arrive at an adequate notion of information flow is perhaps a testament to the tendency to neglect one or the other. In particular, situation theory was introduced with just such a distinction in mind, with a division between situations, as concrete parts of the world, and infons as items of information (or types). And yet, for some quite defensible reasons, situation theorists chose to model situations as the sets of infons made factual by that situation, treating two situations as being identical (i.e., the same situation) whenever they supported precisely the same information. This move reintroduced an ambiguity between tokens and types so that it becomes difficult sometimes to know whether situation theorists are talking about infons or the concrete situations themselves.

But it may also be evident in how we go about interpreting human artifacts in terms of some presumed system of meaning and ignore the brute actuality of the artifact itself (which is why a sacred object can still be used as a paper-weight). It is not enough, as John McCreery tells us, to look for meanings behind the objects; instead we may well ask, why do the gods looks like that?

I have already mentioned the theory of information flow (called channel theory) of Jon Barwise and Jeremy Seligman in their book [1]. Here I would like to briefly introduce two of its main concepts, since not only does it take the distinction between tokens and types as fundamental, but it provides an interesting model of the flow of information.

It is also the hammer, with which I have been looking for a nail.

Let us first define a sort of data structure, that in some ways is not very remarkable. It is merely a kind of attribute table, and is somewhat similar to a formal context in formal concept analysis discussed here. The structure consists of a set of tokens, a set of types classifying those tokens, and a binary classification relation between them.

Def 1. A classification A is a triple $A = \langle tok(A), type(A), : \rangle$ such that for every token $a \in tok(A)$, and every type $\alpha\in typ(A)$, $a:\alpha$  if and only if  $a$ is of type $\alpha$.

The classification distinguishes itself from other similar data structures (and relations in general) by making both types and tokens first class objects of the theory. This allows an interesting morphism between classifications, called an infomorphism (also called a Chu morphism), which we define presently:

Def 2. Let $A$ and $B$ be two classifications. An infomorphism $f : A \rightleftarrows B$ is a pair of contravariant maps $f = \lbrace f^{\wedge}, f^{\vee} \rbrace$ such that $f ^{\wedge} : typ(A) \rightarrow typ(B)$ and $f^{\vee}: tok(B) \rightarrow tok(A)$ satisfying the fundamental property that for every type $\alpha$ in A and every token b in B, $b : f^{\wedge}(\alpha)$ if and only if $f^{\vee}(b) : \alpha$

The infomorphism defines a curious part-whole relationship that can be used to represent a number of interesting relationships, for example, between points of view or perspectives, between map and terrain, between the parts of distributed systems, and between concepts.

An elaboration must wait for a future post, since I have run out of time.

[1] Barwise, Jon, and Jerry Seligman. 1997. Information Flow: The Logic of Distributed Systems. Cambridge tracts in theoretical computer science 44. Cambridge: Cambridge University Press.

### 6 Responses to “Have Hammer Need Nail”

1. I look forward to the elaborations. For the moment, just one question. Am I right that these formulas assume that both types and tokens are discrete?

2. They needn’t be discrete, no, although I tend to think in the discrete case by default out of habit (computer scientists deal with discrete mathematics much more often than they do the mathematics of the reals). Classifications place no constraints on whether types or tokens are countably or uncountably many. For example, we might classify a countable class of dials that can be set to a real value between 0 and 1 by the real values they are set to (but mine go to eleven). Conversely, we might classify the points on the real number line by the intervals on the number line in which they occur. The set of types or tokens can be mixed too.

A state space, such as those used in dynamical systems theory, is a kind of classification, except that in a state space, the tokens are usually left implicit. Given a state space we can construct a classification by creating tokens for it in various ways. Also in state spaces (at least deterministic ones) the system has one state at a time, whereas a classification a token can have many types at any one time. It turns out that one is the special case of the other, and that one can move between state spaces and classifications. There is thus a strong parallel between dynamical systems theory and channel theory.

3. I am wondering about genuinely ambiguous instances, e.g., colors where the spectrum fades from one hue into another. Not saying you can’t arbitrarily assign one label or another, just thinking that there may be an assumption here than the only way to think is types and tokens, which sounds an awful lot like Aristotle’s logic and raises the sorts of issues Simmel on Rembrandt explores.

4. Very few restrictions are placed upon how tokens may be classified. For example, it needn’t be the case that a classification of monochromatic objects by colors like red, blue, green, yellow, and orange, cannot classify any particular token as having more than one color. The constraint, if there is such a constraint, that any monochromatic object can be classified by one and only one color would be imposed externally on the classification (or on the classifier).

There are two sorts of vagueness. One sort is the kind where two fixed perspectives classify the same tokens differently using the same types. I might call it blue at one time, and then call it purple another; I might call it long and you might call it medium. The other sort of vagueness is within some fixed perspective, in which certain cases are only ambiguously classified.

There are few responses. One is to introduce a fuzzy-logic like measure of the degree to which a token has a particular type (this has been done, but the citation escapes me at the moment.) Also, Jon Barwise and Jeremy Seligman’s book spends a whole chapter (chapter 18) on vagueness. They show a way in which one can then create a theory that bridges the two classifications, so that for example, if you know that if x is short and y is medium according to A and x is tall according to B then y is also tall according to B. Unfortunately, in order to explain how their idea works in any detail requires that I go into the details of channels, local logics, and logic infomorphisms. I will try to return to this later.

5. I suppose that it is no excuse, but at least it is an explanation for my tardiness in giving a fuller account, not on just this occasion, but on others. It is namely this: writing mathematical notation is a slow business, and much of what I have written is written using MathType, rather than LaTeX, and the variant that WordPress.com uses. Translation between the two is possible, but can be slow. Also, the graduate office of my university has asked that if I post anything that will in one way or another make it into my thesis it must be cited. I find this thoroughly annoying, since in some respects what I write here and on my blog at jacoblee.net is intended as a means of working out my half-formed ideas. Rather than committing myself to egregious self-citation, I have abstained from further writing about my thesis topic, excepting this post.