Posts tagged ‘information flow’

May 29, 2011

More on Channel Theory

by Jacob Lee

In my last post I introduced a couple of concepts from the channel theory of Jeremy Seligman and Jon Barwise. In this post I would like to continue that introduction.

To review, channel theory is intended to help us understand information flows of the following sort: a‘s being F carries the information that b is G. For example, we might want a general framework in which understand how a piece of fruit’s bitterness may carry the information that it is toxic, or how a mountain side’s having a particular distribution of flora can carry information about the local micro-climate, or how a war leader’s generous gift-giving may carry information about the success of a recent campaign, or the sighting of a gull can carry the information that land is near. In a previous post, we asked how position of various participants in a fono might forecast information about the political events of the day. One would hope that such a framework may even illuminate how an incident in which a person gets sick and dies may be perceived to carry the information that there is a sorcerer who is responsible for this misfortune.

In my last post, I introduced a simple sort of data structure called a classification. A classification simply links particulars to types. But as my examples above were intended to show, classifications are not only intended to model  ‘categorical’ data, as usually construed.

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

One might remark that a classification is not much more than a table whose attributes have only two possible value, a sort of degenerate relational database. However, unlike a record/row in a relational database, channel theory treats each token as a first-class object. Relational databases require keys to guarantee that each tuple is unique, and key constraints to model relationships between records in tables. By treating tokens as first class objects, we may model relationships using an infomorphism:

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

An infomorphism is more general than an isomorphism between classifications, i.e. an isomorphism is a special case of an infomorphism. For example, an infomorphism f : A \rightleftarrows B between classifications A and B might map a single type \beta in B onto two or more types in A, provided that from B’s point of view the two types are indistinguishable, or more precisely that for all tokens b in B and all types \alpha in A, f^{\vee}(b) \vDash_{A} \alpha if and only if f^{\vee}(b) \vDash_{B} \alpha^{\prime}. Note that this requirement does not mean that those types in A are not distinguishable in A (or more technically, are not co-extensional in A). There may be tokens in A outside the range of f^{\vee} for which, for example, a \vDash_{A} \alpha but not a \vDash_{A} \alpha^{\prime}. A dual observation may be made about the tokens of B. Two tokens of B may be mapped onto the same token in A, provided that those tokens in B are indistinguishable with respect to the set of types \beta in B for which there exists some \alpha such that f^{\wedge}(\alpha) = \beta). Again, this does not mean these same tokens in B are wholly indistinguishable in B. For example, there may be types outside the range of  f^{\wedge} classifying them differently. Thus, an infomorphism may be thought of as a kind of view or filter into the other classification.

It is actually rather difficult to find infomorphisms between arbitrary classifications. In many cases there will be none. If it were too easy, then the morphism would not be particularly meaningful. Too stringent and then it would not be very applicable. However, two classifications may be joined in a fairly standard way.For example, we can add them together:

Def 3. Given two classifications A and B, the sum of A and B is the classification A+B such that:

1.      tok(A + B)=tok(A)\times tok(B),

2.     typ(A + B) is the disjoint union of typ(A) and typ(B) given by \langle 0,\alpha \rangle for each type \alpha \in typ(A) and\langle 1,\beta \rangle for each type \beta \in typ(B) , such that

3.      for each token \langle a,b\rangle \in tok(A+B) \langle a,b\rangle {{\vDash }_{A+B}}\langle 0,\alpha \rangle \text{ iff a}{{\vDash }_{A}}\alpha and \langle a,b\rangle {{\vDash }_{A+B}}\langle 1,\beta \rangle \text{ iff b}{{\vDash }_{B}}\beta .

Remark. For any two classifications A and B there exist infomorphisms {{\varepsilon }_{A}} : A \rightleftarrows A+B and {{\varepsilon }_{B}}:B\rightleftarrows A+B defined such that {{\varepsilon }_{A}}^{\wedge }(\alpha )=\langle 0,A\rangle and {{\varepsilon }_{B}}^{\wedge }(\beta )=\langle 1,B\rangle for all types \alpha \in typ(A) and \beta \in typ(B) {{\varepsilon }_{B}}^{\vee }(\langle a,b\rangle )=b and {{\varepsilon }_{A}}^{\vee }(\langle a,b\rangle )=a for each token \langle a,b\rangle \in tok(A+B).

To see how this is useful, we turn now to Barwise and Seligman’s notion of an information channel.

Def 4. A channel C  is an indexed family of infomorphisms \{ f_{i} : A_{i} \rightleftarrows C \} _{i \in I} each having co-domain in a classification C called the core of the channel.

As it turns out, in a result known as the Universal Mapping Property of Sums, given a binary channel C = \{ f : A \rightleftarrows C, g : B \rightleftarrows C \}, and infomorphisms {{\varepsilon }_{A}} : A \rightleftarrows A+B and {{\varepsilon }_{B}}:B\rightleftarrows A+B, the following diagram commutes:

The result is general and can be applied to arbitrary channels and sums.

I still haven’t exactly shown how this is useful. To do that we introduce some inference rule that can be used to reason from the periphery to the core and back again in the channel.

A sequent \langle \Gamma ,\Delta \rangle is a pair of sets of types. A sequent \langle \Gamma ,\Delta \rangle is a sequent of a classification A if all the types in  \Gamma and \Delta are in typ(A).

Def 5. Given a classification A, a token a\in tok(A) is said to satisfy a sequent \langle \Gamma ,\Delta \rangle of A, if a{{\vDash }_{A}}\alpha for every type \alpha \in \Gamma and a{{\vDash }_{A}}\alpha for some type \alpha \in \Delta . If every a\in tok(A) satisfies \langle \Gamma ,\Delta \rangle , then we say that \Gamma entails \Delta in A, written \Gamma {{\vdash }_{A}}\Delta and \langle \Gamma ,\Delta \rangle is called a constraint of A.

Barwise and Seligman introduce two inference rules: f-Intro and f-Elim. Given an infomorphism from a classification A to a classification C, f:A\rightleftarrows C:

f\text{-Intro: }\frac{{{\Gamma }^{-f}}{{\vdash }_{A}}{{\Delta }^{-f}}}{\Gamma {{\vdash }_{C}}\Delta }

f\text{-Elim: }\frac{{{\Gamma }^{f}}{{\vdash }_{C}}{{\Delta }^{f}}}{\Gamma {{\vdash }_{A}}\Delta }

The two rules have different properties.  f-Intro preserves validity, ­f-Elim does not preserve validity; f-Intro fails to preserve invalidity, but f-Elim fails to preserve invalidity. f-Elim is however valid precisely for those tokens in A for which there is a token b of B mapping onto A by the infomorphism f.

Suppose then that we have a channel. At the core is a classification of flashlights, and and at the periphery are classifications of bulbs and switches. We can take a sum of the classifications of bulbs and switches. We know that there are infomorphisms from these classifications to the sum (and so this too makes up a channel), and using f-Intro, we know that any sequents of the classifications of bulbs and switches will still hold in the sum classifications: bulbs + switches. But note that the classification bulbs + switches, since it connects every bulb and switch token, any sequents that might properly hold between bulbs and switches will not hold in the sum classification. Similarly, all the sequents holding in the classification bulbs + switches will hold in the core of the flashlight channel. However, there will be constraints in the core (namely those holding between bulbs and switches) not holding in the sum classification bulbs + switches.

In brief: suppose that we know that a particular switch is in the On position, and that it is a constraint of switches that a switch being in the On position precludes it being in the Off position. We can project this constraint into the core of the flashlight channel reliably. But in the channel additional constraints hold (the ones we are interested in). Suppose that in the core of the channel, there is a constraint that if a switch is On in a flashlight then the bulb is Lit in the flashlight We would like to know that because *this* switch is in the On position, that a particular bulb will be Lit. How can we do it? Using f-Elim we can pull back the constraint of the core to the sum classification. But note, that this constraint is *not valid* in the sum-classification. But it is not valid for precisely those bulbs that are not connected in the channel. In this way, we can reason from local information to a distant component of a system, but in so doing, we lose the guarantee that our reasoning is valid, and we lose the guarantee that it is sound.

[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.

May 4, 2011

Have Hammer Need Nail

by Jacob Lee

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.

February 15, 2011

Some information flows in the Samoan fono

by Jacob Lee
Idealized spatial organization of the fono

Idealized spatial organization of the fono

The fono, politics and space

A fono is a political meeting in the Western Somoan village. The fono is a spatially organized event: high ranking orators are seated in the front, low ranking orators and other low status and low rank persons in the back. High status chiefs and special guests are seated on the sides (tala).

A person’s location with respect to these three areas during an event may signal a variety of informational contents, some of them stereotypical and some of it sensitive to the particular situational context of the event. Within each area, the position of individuals can also signal various informational contents, particularly as relating to status. The precise boundaries between these three areas may not be well defined, and seating in an ambiguously defined location may itself convey interesting information.

What enables these sorts of information to be conveyed?

Cognitive Schema of the fono

Alessandro Duranti answers this by positing a cultural cognitive schema defining an idealized fono seating arrangement spatially organized in terms of various socially relevant classes of persons:

By matching the ideal plan for a particular occasion with the actual titleholders who occupied various positions in the house, one could obtain a first reading of the political situation and make a few predictions about the way in which the discussion might unfold. Thus, according to the kind of fono that was being held, a particular set of orators would be expected to sit in the front row. In such a system, every slight variation from what is considered the ideal plan is potentially significant. For this reason, as suggested above, the ideal plan acts as a cognitive schema that provides a key for the participants to interpret the contingencies of the day. The relationship between the ideal seating arrangement and the actual one gives a first approximation of the potential conflicts, tensions, and issues of the day. (Duranti p. 65)

This schema indicates various sorts of stereotypical information. If a person p is seated in the front F then one conventional item of informational content indicated by this fact is that p is a high-ranking orator.  Other informational contents are indicated too, of course. More interesting are occasions when an actual fono deviates (or is believed to deviate) from this schema. Subtle variations in seating arrangement, in conjunction with knowledge of the political situation, can indicate various interesting sorts of information. Throughout Duranti’s analysis, he draws us to the subtle political dimensions of the relative positions taken up in the political theater of the fono:

Samoans are in this respect true masters of spatial finesse, as demonstrated by the poisition occupied by the matai (JL: chief) who shares the title with Savea Sione, namely Savea Savelio. He sits in a position that is similar to Savea Sione’s but slightly “farther back.” This he explained to me as a sign of restraint: He should not take a foregrounded role in the fono proceedings given that the actions of the one we might call his alter ego, Savea Sione, were under severe scrutiny by members of the assembly. (Duranti p. 68)

and how an intimate understanding of this space provides informational cues for contextually relevant political positioning and interaction.

An understanding of the locally engendered meaning of the seating arrangement for the day suggests that Moe’ono, as well as the other matai in the fono house, had ways of expecting, ahead of time, Tafili’s attack and her role at the meeting. If she is present and has chosen to sit in the front row, the place reserved for the more active members of the assembly, everyone knows that Tafili has come ready to speak and, most likely, to argue. Thus, even before a word is exchanged, Tafili’s spatial claim provided Moe’ono with clues about the forthcoming discussion and gave him some time to prepare himself for it. In this case, the regionalization of the interactional space available to participants can communicate just as much as words. (Duranti p. 72)

Information Flows

Jon Barwise and Jeremy Seligman argue that information flow crucially depends on regularities within distributed systems. Such information flows are present, but they will not necessarily be available to any particular cognitive agent nearby. Such agents must be attuned to those regularities to translate information about the occurrence of an event of one type into information about the occurrence of an event (possibly the same) of another type. This becomes particularly evident when one is displaced into natural and cultural environments outside our own experience and knowledge. One might not know, for example, that an increase in the number of insects indicates water nearby; a certain discoloration of the skin may indicate that a patient has a certain inflammatory skin disease, but only to a person attuned to the constraints between this kind of skin discoloration and the presence of that particular disease. Duranti describes his first encounter with the fono:

The first time I entered the fono house, I only saw people sitting around the eges of the house and noticed that some portions were unoccupied whereas other portions seemed crammed with people. (Duranti p. 64)

It was only after mapping many different fono events, and matching seating with titles and other relevant information, that Duranti was able to appreciate how much information about the political  events of the day was present in the seating locations of its participants. Standing back from this, we must recognize that every participant in a fono is thus situated, having their own information, and being attuned to some constraints active in the situation, and not others, and so on. This is particularly easily seen when on one occasion, Duranti intentionally seated himself  in a low status position in the fono, when as a guest he was usually accorded a high status position. In this case Duranti sat in the back of the fono (low status position) with low status men, and women. He was was served food last by young servers, and didn’t get any fish, until one of the high status chiefs noticed and directed the servers to bring some of his fish to Duranti:

My experiment was over. I had been able to show the relevance of the locally defined spatial distinctions (front vs. back region) for establishing the status of a participant in a public event. At the same time, I had proven to myself that the system was flexible. Different “parts,” namely the servers versus the matai, or the kids versus my adult friends, were acting on different premises. For the kids who brought in the trays with the food and for the untitled adults who were preparing the portions, it was safer to follow the basic spatial distinctions. They had no way of knowing the details about who was doing what on a particular occasion. The spatial arrangement in the house constituted a first key to know how to operate with a minimum assurance of appropriateness…In most cases, the seating plan works very efficiently to convey a first sense of order. Whether or not that order conforms to the relative statuses of the participants as displayed on other occasions is not something that low-status people must be concerned with. Their socialization teaches them that any hierarchy must adapt to contingencies, must fit their task…It is up to the more knowledgeable members in the gathering to complement or rectify the reading provided by the bare layout of the human bodies in space…The distribution of knowledge about how to act on any given situation is thus functional to the distribution of power within the community. On the one hand, the lower-status people act on more general and hence more easily amendable models, that is, models that need additional information in order to operate appropriately. Higher-status people, on the other hand, not only have access to more specific information about the nature of the activity and the expected and expectable actions, they also control this more specific knowledge by putting it to use when they choose to do so. (Duranti p.59-60)

The fono is a distributed system, with many different parts. Information about one part of the fono can give us information about other parts of the fono. But the information flows in this distributed system are relative to to the cognitive schemas by which the fono is conventionally understood by each of the participants. The information flows to which any participant is attuned depends on their assessments of how others are attuned to informational flows in the event. Duranti is able to assess the reasons for his not receiving any fish from the servers because his position in the fono conventionally indicated a low rank and status, and because the servers were not sensitive to other information relevant to interpreting Duranti’s behavior in any other way*.

In order to see Duranti’s choice of seating as an exception to the idealized arrangement presumes not only knowledge about the idealized arrangement, but crucially requires additional information that is inconsistent with that idealized arrangement. In this case, the fact that at one other such occasions Duranti had been seated toward the front. Like Duranti when he first began to participate in the fono, any stranger encountering the scene for the first time, especially one who was not familiar with the dynamics of agency and signification in the fono, would not know ‘what was going on’. That Duranti was unusually seated likely would not have impressed itself on such an observer as a fact worth pondering further. But the intelligent and culturally and situationally literate observer would have seen Duranti’s position as unusual, and possibly interesting, if noticed. The seating of any actual fono is set against the idealized arrangement given by the cognitive schema; the difference between them is a scaffold for signification.

Since deviation from the ideal is not infrequent, and is often interpreted this way or that, we might very well suppose that some deviations from the ideal are in fact conventional and well understood. Others may be less well-understood. When Savea Savelio sits slightly back from Savea Sione, Savea Savelio, and presumably many of the other participants understood, though Duranti may not have seen the reason until later. Yet,  while there may have been some conventional interpretation of Duranti’s sitting in the back, it is safe to say that that interpretation of his seating misunderstood Duranti’s unconventional objective. We may well doubt that anyone besides Duranti, or anyone he let in on it beforehand, correctly understood that his sitting in the back was  a behavioral experiment.

*It is also possible that the servers speculated on the reasons, but did presume to act on those speculations.


A. Duranti, From Grammar to Politics: Linguistic Anthropology in a Western Samoan Village, Berkeley: University of California Press, 1994.

January 24, 2011

Lattice Model of Information Flow

by Jacob Lee

I am caught in a maelstrom of work and so I decide to play.

I have an excellent textbook on discrete mathematics on my shelf  from a course I took as a student a few years ago [1]. Its always useful to review such books to remind oneself of certain foundational principles used in computer science [2]. My thesis work concerns, among other things, the study of information flow and in the course of my work I found myself consulting this book to review the mathematical concept of a lattice [3]. Looking through the index of this text I found an entry reading ‘Information flow, lattice model of, 525’. Naturally, I was intrigued.

Funnily enough, the three paragraph section on the lattice model of information flow is only of tangential relevance to my thesis work; yet it was interesting enough. It discussed the uses of lattices to model security policies of information dissemination. Rosen presented a simple model of a multi-level security policy in which a collection data (the authors use the word information) is assigned an authority level A, and a category C. The security class of a collection of data is modeled as the pair (A,C). Rosen defines a partial order on security classes as follows: (A_{1},C_{1})\preceq (A_{2},C_{2}) if and only if A_{1} \leq A_{2} and S_{1} \subseteq S_{2}. This is easily illustrated by an example.

Let A = \{A_{1}, A_{2}\} where A_{1} \leq A_{2} and A_{1} is the authority level secret and A_{2} is the authority level top secret. Let S=\{diplomacy, combat ops \} [4][5]. This forms the lattice depicted in figure 1.

Figure 1: example security classification lattice

Figure 1

The objective of such a security policy is to govern flows of sensitive information. Thus, if we assign individuals security clearances in the same way that information is assigned security classes, then we can set up a policy such that an item of information i assigned a security class (A_{1},C_{1}) can only be disseminated to an individual a having security clearance (A_{2},C_{2}) if and only if (A_{1},C_{1})\preceq (A_{2},C_{2}).

Without looking at the literature [6], it seems that the obvious next step is to embed this into a network model. Supposing that one has a network model in which each node is classified by a security clearance there are a variety of useful and potentially interesting questions that can be asked. For example, one might want to look for connected components where every node in the connected component has a security clearance (A,C) such that (A,C)\succeq (A_{j},C_{k}) for some j and k. Or if one were interested in simulating the propagation of information in that social network such that the probability of a node communicating certain security classes of information to another node is a function of the security class of the information and the security clearances of those two nodes.

So far this discussion has limited itself to information flow as dissemination of information vehicles, contrary to the direction I suggested in my last post should be pursued. One easy remedy might be to have minimally cognitive nodes with knowledge bases and primitive inference rules by which new knowledge can be inferred from existing or newly received items of information. This would have several consequences. Relevant items of novel information might disseminate through the network (and global knowledge grows), and items of information not originally disseminated, for example because it is top secret, may yet be guessed or inferred from existing information by nodes with security clearances too low to have received it normally.

Moving away from issues of security policy, we can generalize this to classify nodes in social networks in other systematic ways. In particular, we may be interested in epistemic communities. We might classify beliefs and/or knowledge using formal tools like formal concept analysis, as I believe Camille Roth has been doing (e.g. see his paper Towards concise representation for taxonomies of epistemic communities).

Fun stuff.

[1] Rosen, Kenneth H. Discrete mathematics and its applications. 5th edition. McGraw Hill. 2003.

[2] Some undergraduates joked that if they mastered everything in Rosen’s book, they would pretty much have mastered the foundations of computer science. An exaggeration, but not far off.

[3] A lattice is a partially ordered set (poset) such that for any pair of elements of that set there exists a least upper bound and a greatest lower bound.

[4] According to Wikipedia such the US uses classifications like the following:

1.4(a) military plans, weapons systems, or operations;

1.4(b) foreign government information;

1.4(c ) intelligence activities, sources, or methods, or cryptology;

1.4(d) foreign relations or foreign activities of the United States, including confidential sources;

1.4(e) scientific, technological or economic matters relating to national security; which includes defense against transnational terrorism;

1.4(f)USG programs for safeguarding nuclear materials or facilities;

1.4(g) vulnerabilities or capabilities of systems, installations, infrastructures, projects or plans, or protection services relating to the national security, which includes defense against transnational terrorism; and

1.4(h) weapons of mass destruction.

[5] An interesting category of information is information about who has what security clearance.

[6] Where fun and often good ideas go to die.