Mathematics, things, objects and brains

This is about my understanding of the post Mathematics and the Real by Louis Kauffman.

I start from this quote:

One might hypothesize that any mathematical system will find natural realizations. This is not the same as saying that the mathematics itself is realized. The point of an abstraction is that it is not, as an abstraction, realized. The set { { }, { { } } } has 2 elements, but it is not the number 2. The number 2 is nowhere “in the world”.

Recall that there are things and objects. Objects are real, things are discussions. Mathematics is made of things. In Kauffman’s example the number 2 is a thing and the set { { }, { { } } } is an object of that thing.

Because an object is a reification of a thing. It is therefore real, but less interesting than the thing, because it is obtained by forgetting (much of) the discussion about it.

Reification is not a forgetful functor, though. There are interactions in both directions, from things to objects and from objects to things.

Indeed, in the rhino thing story, a living rhinoceros is brought in Europe. The  sight of it was new. There were remnants of ancient discussions about this creature.

At the beginning that rhinoceros was not an object, not a thing. For us it is a thing though, and what I am writing about it is part of that thing.

From the discussion about that rhinoceros, a new thing emerged. A rhinoceros is an armoured beast which has a horn on its back which is used for killing elephants.

The rhino thing induced a wave of reifications:  nearby the place where that rhino was seen for the first time in Portugal, the Manueline Belém Tower  was under construction at that moment. “The tower was later decorated with gargoyles shaped as rhinoceros heads under its corbels.[11]” [wiki dixit]

Durer’s rhino, another reification of that discussion. And a vector of propagation of the discussion-thing. Yet another real effect, another  object which was created by the rhino thing is “Rinoceronte vestido con puntillas (1956) by Salvador Dalí in Puerto Banús, Marbella, Spain” [wiki dixit].

Let’s take another example. A discussion about the reglementations of the sizes of cucumbers and carrots to be sold in EU is a thing. This will produce a lot of reifications, in particular lots of correct size cucumbers and carrots and also algorithms for selecting them. And thrash, and algorithms for dispensing of that trash. And another discussions-things, like is it moral to dump the unfit carrots to the trash instead of using them to feed somebody who’s in need? or like the algorithm which states that when you go to the market, if you want to find the least poisoned vegetables then you have to pick them among those which are not the right size.

The same with the number 2, is a thing. One of it’s reifications is the set { { }, { { } } }. Once you start to discuss about sets, though, you are back in the world of things.

And so on.

I argue that one should understand from the outset that mathematics is distinct from the physical. Then it is possible to get on with the remarkable task of finding how mathematics fits with the physical, from the fact that we can represent numbers by rows of marks |  , ||, |||, ||||, |||||, ||||||, … (and note that whenever you do something concrete like this it only works for a while and then gets away from the abstraction living on as clear as ever, while the marks get hard to organize and count) to the intricate relationships of the representations of the symmetric groups with particle physics (bringing us back ’round to Littlewood and the Littlewood Richardson rule that appears to be the right abstraction behind elementary particle interactions).

However, note that   “the marks get hard to organize and count” shows only a limitation of the mark algorithm as an object, and there are two aspects of this:

  • to stir a discussion about this algorithm, thus to create a new thing
  • to recognize that such limitations are in fact limitations of our brains in isolation.

Because, I argue, brains (and their working) are real.  Thoughts are objects, in the sense used in this post! When we think about the number 2, there is a reification of out thinking about the number 2 in the brain.

Because brains, and thoughts, are made of an immensely big number of chemical reactions and electromagnetic  interactions, there is no ghost in these machines.

Most of our brain working is “low level”, that is we find hard to account even for the existence of it, we have problems to find the meaning of it, we are very limited into contemplating it in whole, like a self-reflecting mirror. We have to discuss about it, to make it into a thing and to contemplate instead derivative objects from this discussion.

However, following the path of this discussion, it may very well be that brains working thing can be understood as structure processing, with no need for external, high level, semantic, information based meaning.

After all, chemistry is structure processing.

A proof of principle argument for this is Distributed GLC.

The best part, in my opinion, of Kauffman’s post is, as it should, the end of it:

The key is in the seeing of the pattern, not in the mechanical work of the computation. The work of the computation occurs in physicality. The seeing of the pattern, the understanding of its generality occurs in the conceptual domain.

… which says, to my mind at least, that computation (in the usual input-output-with-bits-in-between sense) is just one of the derivative objects of the discussion about how brains (and anything) work.

Closer to the brain working thing, including the understanding of those thoughts about mathematics, is the discussion about “computation” as structure processing.

UPDATE: A discussion started in this G+ post.


Clocks, guns, propagators and distributors

Playing a bit with chemlambda, let’s define:

  • multipliers
  • propagators
  • two types of distributors

described in the first figure.


The blue arrows are compositions of moves from chemlambda. For instance, referring to  the picture from above,  a graph (or molecule) A is a multiplier if there is a definite finite sequence of moves in chemlambda which transforms the LHS of the first row into the RHS of the first row, and so on.

For example:

  • any combinator (molecule from chemlambda) is a multiplier; I proved this for the BCKW system in this post,
  • the bit is a propagator
  • the application node is a distributor of the first kind, because of the first DIST move in chemlambda
  • the abstraction node is a distributor of the second kind, because of the second DIST move in chemlambda.

Starting from those, we can build a lot of others.

If A \rightarrow  is  a multiplier and \rightarrow B \rightarrow  is a propagator then A \rightarrow B \rightarrow is a multiplier. That’s easy.

From a multiplier and a distributor of the first kind we can make a propagator, look:


From a distributor of the second kind we can make a multiplier.


We can make as well guns, which shoot graphs, like the guns from the Game of Life.  Here are two examples:


We can make clocks (which are also shooting like guns):


Funny! Possibilities are endless.


Tibit game with two players: trickster and webster

Here is a version of the tibit game with two players, called “trickster” and “webster”.

The webster is the first player. The trickster is the second player.

The webster manipulates (i.e. modifies) a “web”, which is a

  • trivalent graph
  • with oriented arrows
  • with a cyclic orientation of arrows around any node (i.e. locally planar)
  • it may have free arrows, i.e. ones with free tail or free tip.

Tokens.   The webster  has one type of token, called a “termination token”.  The trickster has two types of tokens, one yellow, another magenta.

Moves.  When his turn comes,  any player can do one of the moves listed further, or he may choose to pass.


Some of the webster moves are “reversible”, meaning that the webster may do them in both direction. Let’s say that the “+” direction is the one from left to right in the graphical moves and also means that the webster may put a termination token (but not take one). The “-” direction is from right to left in the graphical moves and also means that the webster may take a termination token (but not put one).


The loop rule.  It is possible that, after a move by one of the players, the web is no longer a trivalent graph, because a loop (an arrow which closes itself, without any node or token on it) appears. In such a case the loop is erased before the next move.


This is a collaborative game.

There are two webs, with tokens on them, the first called the “datum” and the second called the “goal”.

The players have to modify the datum into the goal, by playing collaboratively, in the following way.

The game has two parts.

Preparation.     The players start from a given web with given tokens placed on it (called the “datum”).  Further,   the webster builds a web which contains the datum and the trickster places tokens on it, but nowhere in the datum .

Eventually they obtain a larger web which contains the datum.

Alternatively, the players may  choose an initial   web, with tokens on it, which contains the datum.

Play.   Now the webster can do only the “+” moves and the trickster can’t put any token on the web.  The players try to obtain a web, with tokens on it, which contains the goal by using their other moves.


Peer-review, is good or bad?

I shall state my belief about this, along with my advice for you to make your own, informed, opinion:

  • Peer-review as a bottleneck on the road to legacy publication is BAD
  • Peer-review as an authority argument (I read the article because is published in a peer-reviewed journal) is UNSCIENTIFIC
  • Open, perpetual peer-review offers a huge potential for scientific communication, thus is GOOD.
  • It is though the option of the author to choose to submit the article to public attention, this should not be mandatory.
  • Moreover, smart editors should jump on the possibility to exploit open peer-review instead of
  • the old way to throw to the wastebasket the peer-reviews, once the article is accepted or rejected, which is BAD.
  • Finally, there is NO OBLIGATION for youngsters to peer-review, contrary to the folklore that it is somehow their duty to the community to do this. No, this is only a perverse way to keep the legacy publishing going, as long as the publishers use them only as an anonymous filter. On the contrary, youngsters, everybody honest in fact, should be encouraged to use rewarded for using any of the abundant new means of communication for the benefit of research.

This post is motivated by the Mike Taylor’s Why peer-review may be worth persisting with, despite everything and by comments at the post Two pieces of all too obvious propaganda.

See also the post Journal of uncalled advices (and links therein).

An experiment in open writing and open peer-review

I shall try the following experiment in open writing/open peer-review which uses only available soft and tools.

No technical  knowledge is needed to do this.

No new platform is needed for this.

The idea is the following. I take an article (written by me) and I copy-paste it as text + figures in a publicly shared google document with comments allowed.

On top of the document I mention the source (where is the article from) , then I add a CC-BY licence.

This is all. If anybody wishes to comment the article, it can be done precisely, by pointing to the controversial paragraphs.

In the comments are allowed links, of course, therefore there is no limit to the quantity of data which can be put in such a comment.

There could be comment replies.

In conclusion, this is a very cheap way to do both a (limited) way of open writing and to allow open peer-review.

For the moment I started not with articles directly, but with edited content from this open notebook.  I made until now two “archives”

Even better would be to make a copy of the doc and put it in the figshare, to get a DOI. Then you stick the DOI  link in the doc.

Is there an uncanny valley between reality and computing?

A very deep one, maybe.

I was looking for news about UD and euclideon. I found this pair of videos [source], the first by BetterReality and the second by The Farm 51 .

Now, suppose that we scanned the whole world (or a part of it) and we put the data in the cloud. Do we have a mirror of reality now on the cloud? No! Why not, the data, according to mainstream CS ideology, is the same: coordinates and tags (color, texture, etc) in the cloud, the same in reality.

Think about the IoT, we do have the objects, lots of them, in potentially unlimited detail. But there is still this uncanny valley between reality and computation.

We can’t use the data, because:

  • there is too much data (for our sequential machines? for our dice and slice ideology,  a manifestation of the cartesian disease ? )
  • there is not enough time (because we ask the impossible: to do, on one very limited PC, the work  done by huge parts of reality? or because the data is useful only together with the methodology (based on  absolute, God’s eye view of reality, based on passive space as a receptacle), and the methodology is what stops us?)

I think that we can use the data (after reformatting it) and we can pass the uncanny valley between reality and computing. A way to do this supposes that:

  • we get rid of the absolute, passive space and time, get rid of global views (not because these don’t exist, but because this is a hypothesis we don’t need!)
  • we go beyond Turing Machine and Von Neumann architecture, and we seriously include P2P asynchronous, local, decentralized way of thinking into the model of computation (like CSP, or Actor Model or why not Distributed GLC?)

This is fully compatible with  the response given by Neil Gershenfeld to the question


(Thank you Stephen P. King for the G+ post which made me aware of that!)

Public shared chemlambda archive

Let’s try this experiment.  I prepared and shared publicly the

Chemlambda archive

which is an all-in-one document about the building of chemlambda (or the chemical concrete machine), from the vague beginnings to the moment when the work on Distributed GLC started.

The sources are from this open notebook.

I hope it makes an interesting reading, but what I hope more is that you shall comment on it and

  • help to make it better
  • identify new ideas which have potential
  • improve the presentation
  • ask questions!


No extensionality, no semantics

Extensionality, seen as eta reduction, or eta conversion, is a move which can be described in GLC, but it is global, not local.

See this post for the description of the move. The move is called “ext1”. I borrow from that post the description of the move.

Move ext1.  If there is no oriented path from “2″ to “1″ outside the left hand side picture then one may replace this picture by an arrow. Conversely, if there is no oriented path connecting “2″ with “1″ then one may replace the arrow with the graph from the left hand side of the following picture:


Why is this move global? Because of the condition “there is no oriented path from “2″ to “1″ outside the left hand side picture”.  This condition involves an unbounded number of nodes and arrows, therefore it is global.

Further I shall make the usual comments:

  • the move ext1, by itself,  can be applied to any GLC graph, not only to those graphs which represent lambda terms. In this respect the move ext1 is treated like the graphic beta move, which, in GLC, can be applied to any graph (for example to graphs which are used to encode knot diagrams, or other examples of graphs which are outside the lambda calculus sector of GLC, but nevertheless are interesting),
  • if we restrict the move ext1 to lambda graphs then we have another problem: the condition “is a lambda graph” is global.

That is why the move ext1 is not considered to be part of GLC, nor will be used in distributed GLC.

You may remark that   GLOBAL FAN-OUT is a global move, which is part of GLC.  The answer to the implicit question is that chemlambda, which is a purely local graph rewriting system, solves this. Even if chemlambda and GLC are different formalisms, when it comes to universality, then they behave the same on lambda graphs, with the bonus on the chemlambda side of being able to prove that we can replace the use of the GLOBAL FAN-OUT with a succession of moves from chemlambda.

This can’t be done for the move ext1.

And this is actually good, because it opens a very intriguing research path: how far can we go by using only locality?

That means in particular: how far can we go without semantics?


  • extensionality brings functions
  • functions bring types
  • types bring the type police
  • the type police brings semantics.

It looks that life (basic works of real lifeforms) goes very well:

  • without semantics
  • with self-duplication instead of GLOBAL FAN-OUT (or even instead recursion).

In this respects distributed GLC is even more life-like than it looks at first sight.

This one looks like a bit, but wait, what’s the other one, a hobbit?

I shall use chemlambda in this post. To make it more readable for those who are used with GLC, I shall change the notations  from chemlambda, as described in the first figure.


The node \phi  is the fan-in node, which replaces the dilation node from GLC.

There is a particular small graph which behaves like a bit, a bit. Look:


The (composite) move PROP has been used before. Let me recall that PROP is needed for making the graph of the combinator W to self-replicate. There is a whole discussion about whether is reasonable to have all moves reversible. The conclusion, for chemlambda, is that if we want chemlambda to be Turing universal, then we need only the “+” moves, supplemented by the PROP+ move. Of course that chemlambda is TURING universal if we can use all moves, but using PROP+ instead of using FAN-IN-  seems like a reasonable idea.

In this second figure we see that the “bit” from the left of the first graph, when grafted to the “in” arrow of a fan-out node, comes out by the out arrows of the fan-out node. Behaves like a bit, only that there is only an appearance of a “signal” which circulates through the “wires” (i.e. arrows).

There is another reason to call it a bit, namely that the same pair fan-out node — application node appears in the Church encoding of the naturals, as seen in GLC or chemlambda. More precisely, the natural 3, for example, has 3 such pairs, the natural n (when n is not 0) has n such pairs.  (see Figure 22, p. 14, arXiv:1312.4333)

This “bit” circulates as well through an application node, as explained in the following figure:


A strange thing happens if we graft it to the right out arrow of a lambda abstraction node.


Wait! What’s that at the left out arrow … of the fan-out node? A co-bit? A hobbit?

First, let us notice that this time we used only “+” moves, that’s very good. Then, it looks like that we lost the lambda node, which transformed magically into a fan-out node, and the bit transformed into the hobbit.

Hobbit, or better co-bit? The next figure show that a hobbit and a bit annihilate and produce a loop.

propagator_4Is the hobbit a co-bit?


Laws of Form and Parmenides

This is a notebook about relations between Spencer-Brown book Laws of Form and Plato dialogue Parmenides.

It will be repeatedly updated and maybe, if productive, will transform into a page.

The motivation of starting it comes from Louis Kauffman post    Is mathematics real? .


1.  one is infinitely many (Parmenides, source used) vs using the empty set to construct all numbers.

Introduction (142b—c) 
b Shall we return to the hypothesis and go over it again from the beginning, to see if some other result may appear? 

By all means. 

Then if unity is, we say, the consequences that follow for it must be agreed to, whatever they happen to be? Not so? 


Then examine from the beginning. If unity is, can it be, but not have a share of being? 

It cannot. 

Then the being of unity would not be the same as unity; otherwise, it would not be the being of it, nor would unity have a share of being; rather, to say that unity is would be like saying that unity is one. But as it is, the hypothesis is not what must follow if unity is 
unity, but what must follow if unity is. Not so? 


Because "is" signifies something other than "one"? 


So when someone says in short that unity is, that would mean that unity has a share of being? 

Of course. 

Then let us again state what will follow, if unity is. Consider: must not this hypothesis signify that unity, if it is of this sort, has parts? 

 How so? 

For the following reason: if being is said of unity, since it is, and if unity is said of being, since it is one, and if being and unity are not the same, but belong to that same thing we have hypothesized, namely, the unity which is, must it not, since it is one, be a whole of 
which its unity and its being become parts? 


Then shall we call each of those parts only a part, or must part be called part of whole? 

Part of whole. 

So what is one is a whole and has a part. 

Of course. 

What about each of the parts of the one which is, namely, its unity and its being? Would unity be lacking to the part which is, or being to the part which is one? 


So once again, each of the parts contains unity and being, and the least part also turns out to consist of two parts, and the same account is ever true: whatever becomes a part ever contains the two parts. For unity ever contains being, and being unity; so that they are ever necessarily becoming two and are never one.

Quite so. 

Then the unity which is would thus be unlimited in multitude? 

It seems so. 

Consider the matter still further. 

In what way? 

We say that unity has a share of being, because it is. 


And for this reason unity, since it is, appeared many. 


Then what about this: if in the mind we take unity itself, which we say has a share of being, just alone by itself, without that of which we say it has a share, will it appear to be only one, or will that very thing appear many as well? 
One, I should think. 

Let us see. Since unity is not being, but, as one, gets a share of being, the being of it must be one thing, and it must be another. 


Now, if its being is one thing and unity is another, unity is not different from its being by virtue of being one, nor is its being other than unity by virtue of being; but they are different from each other by virtue of the different and other. 

Of course. 

So difference is not the same as unity or being. 

Well then, if we were to pick out, say, being and difference, or being and unity, or unity and difference, would we not in each selection pick out some pair that is rightly called "both"? 

What do you mean? 

This: it is possible to mention being? 


And again to mention unity? 


Then each of two has been mentioned? 


But when I mention being and unity, do I not mention both? 

Yes, certainly. 

Again, if I mention being and difference, or difference and unity, and so generally, I in each case mean both? 


But for whatever is rightly called both, is it possible that they should be both but not two? 

It is not. 

But for whatever is two, is there any device by which each of two is not one? 


So since together they are pairs, each would also be one? 

It appears so. 

But if each of them is one, then when any one whatever is added to any couple whatever, does not the sum become three? 


Three is odd, and two even? 


What about this? If there are two things, must there not also be twice, and if three things, thrice, since it pertains to two to be twice 
one, and three, thrice one? 


But if there are two things and twice, must there not be twice two, and if three things and thrice, thrice three? 

Of course. 

What about this: if there are three things and twice, and two things and thrice, must there not also be twice three and thrice two? 

Yes, necessarily. 

So there will be even-times even numbers, odd-times odd numbers, even-times odd numbers, and odd-times even numbers. 


Then if this is so, do you think there is any number left which must not necessarily be? 

None whatever. 

So if unity is, number must also be. 


Computation with GLC actors: pure syntax, no semantics

The notion of computation from   Distributed GLC has the following properties:

  • distributed
  • asynchronous
  • done by processing structure to structure (via graph rewrites)
  • purely local
  • uses an analogy with molecules and chemical reactions, but the spatial relations between the interacting molecules are replaced by actors interactions in a variant of the Actor Model.


  • the model is not sequential, although it may do sequential computation, if constrained; however, the model does not need the idea of a sequential computation,
  •  synchronization is not needed for the model, in fact any synchronization hypothesis would only cripple the power of the model,
  • this model of computation does not need or use any  evaluation procedure, nor in particular evaluation strategies; the model does not rely on signals passing through gates, nor on the sender-receiver setting of Information Theory.  No names of variables, no values are used. Because the eta reduction is not part of the model,  no functions are used, needed, or make sense.
  • this model of computation is not based on a  global picture. There is no global state, no global space,  no global time, no semantics.

More details:

The nodes of the distributed computation are the actors. The connectivity between the actors is not externally controlled or imposed. Instead the connectivity is the result, and changes because of the actors interactions.

Actors are not controlled externally, they are autonomous. The interactions between actors are purely local.

Any interaction with an external device, database, or program is done via a GLC actor.


The front end visual system performs like a distributed GLC computation

In this post I want to explain why the Distributed GLC  model of computation can be seen as a proof of principle that it is possible to describe rigorously some complex functioning of the brain as computation.

If you are not aware about this as being a problem, then please learn that the matter whether what brains do is computation is very controversial. On one side there are rigorous notions of computation (expressed in terms of Turing Machines, or in terms of lambda calculus, for example) which are used with full competence in CS. On the other side, in (some parts of) neuroscience the word “computation” is used in a non-rigorous sense, not because the neuroscience specialists are incapable of understanding computation in the rigorous CS sense, but because in real brains the matters are far more complex to make sense than in regards to paper  computers. Nevertheless, (some) CS specialists believe (without much real evidence) that brains compute in the CS sense, and (some) neuroscience specialists believe that their vague notions of computation deserve to bear this name, even it does not look like computation in CS rigorous sense.

OK, I shall concentrate on a particular example which I think it is extremely interesting.

In the article by Kappers, A.M.L.; Koenderink, J.J.; Doorn, A.J. van, Basic Research Series (1992), pp. 1 – 23,

Local Operations: The Embodiment of Geometry

the authors introduce the notion of  the  “Front End Visual System” . From section 1, quotes indexed by me with (1), (2), (3).

(1) Vision […]  is sustained by a dense, hierarchically nested and heterarchically juxtaposed tangle of cyclical processes.”

(2) In this chapter we focus upon the interface between the light field and those parts of the brain nearest to the transduction stage. We call this the “visual front end”.

(3) Of course, the exact limits of the interface are essentially arbitrary, but nevertheless the notion of such an interface
is valuable.


  • (2) is the definition of the front end
  • (3) is a guard against a possible entry path of the homunculus in the brain
  • (1)  has these very nice expression “dense tangle of cyclical processes”, will come back to this!

Let’s pass to the main part of interest: what does the front end?  Quotes from the section 1, indexed by me with (a), … (e):

  • (a) the front end is a “machine” in the sense of a syntactical transformer (or “signal processor”)
  • (b) there is no semantics (reference to the environment of the agent). The front end merely processes structure
  • (c) the front end is precategorical,  thus – in a way – the front end does not compute anything
  • (d) the front end operates in a bottom up fashion. Top down commands based upon semantical interpretations are not considered to be part of the front end proper
  • (e) the front end is a deterministic machine […]  all output depends causally on the (total) input from the immediate past.

Comments and reformulations, indexed by (I), … (IV)

  • (I) the front end is a syntactical transformer, it processes structure [from (a), (b)]
  • (II) there is no semantics [from (b)]; semantical interpretations are not part of the front end [from (d)]
  • (III) the front end does not compute, in the sense that there is no categorical like chasing diagrams type of computing [not formulated in terms of signals processed by gates?] [from (d)]
  • (IV) there is a clear mechanism, based on something like a “dense tangle of cyclical processes” which processes the total input (from the light field) from the immediate past [from (e) and (1)]

These (I)-(IV) are exactly the specifications of a distributed computation with GLC actors, namely:

  • a distributed, asynchronous, rigorously defined computation
  • based on local graph rewrites which are purely syntactic transformers,  a correspondent of both “dense tangle of cyclical processes” and also of “processes structure”
  • there is no semantics,  because there are no names or values which decorate the arrows of the GLC graphs, nor they travel through the nodes of such graphs. There is no evaluation procedure needed for the computation with GLC actors
  • the computation with GLC actors is done starting from an initial graph (structure) , which may use also external constructs (the cores are equivalents of the light field which triggers chemical reaction in the retina, which are then processed by the front end)

This is no coincidence! One of the reasons of building GLC was exactly the one of making sense of the front end visual system.

In conclusion:

  • yes, there is a way to rigorously describe what the front end does as computation in the CS sense, although
  • this notion of computation has some unique features: no evaluation, graph reduction based asynchronous, distributed, purely local. No semantics needed, no global notions or global controllers, neither in space, nor in time.

Graphic lambda calculus published, and some questions

The  first article on graphic lambda calculus (GLC) arXiv:1305.5786  was published: the reference is M. Buliga, Graphic lambda calculus. Complex Systems 22, 4 (2013), 311-360.

This is good news for the dissemination of the article.

You know my opinions about publishing… I wish there would be open, perpetual, peer-reviews which in fact develop as discussions (maybe as creative as the articles) around research subjects.

Still don’t know if to send to publication the article Chemical concrete machine arXiv:1309.6914 , where chemlambda is introduced.  I tried to see what happens if I put it on figshare too, here is it with a doi.

There is the most recent article on the subject

M. Buliga, L. H. Kauffman, GLC actors, artificial chemical connectomes, topological issues and knots

We welcome an open peer-review and discussion about this game-changing model of distributed computing here:

Open peer-review call for arXiv:1312.4333

What do you think about this?

Should we publish? Should we try to go completely open?


Notes for “Internet of things not Internet of objects”

1.   Kevin Ashton  That ‘Internet of things’ thing

Conventional diagrams of the Internet include servers and routers and so on, but they leave out the most numerous and important routers of all: people.
The problem is, people have limited time, attention and accuracy—all of which means they are not very good at capturing data about things in the real world.
  • not things, objects!  Ashton writes about objects.
  • people are not good at capturing data, so let’s filter (i.e. introduce a bottleneck) the data for them, thank you!
  • however, people arrive to gather around  ideas and to discuss  despite the fact that “conventional diagrams of the Net leave out people”.
  • By having public discussions around an “idea” people arrive to filter creatively the information dump without resorting to artificial bottlenecks.  Non-human bottleneck stifle discussions!

Replaced further:

  • things by objects
  • ideas by things.
We’re physical, and so is our environment. Our economy, society and survival aren’t based on things or information—they’re based on objects. You can’t eat bits, burn them to stay warm or put them in your gas tank. Things and information are important, but objects matter much more. Yet today’s information technology is so dependent on data originated by people that our computers know more about things  than objects.
This looks like the credo of the Internet of Objects!
Do we want this?
2.     What are, for people, things and objects?

Here is a depiction of a thing [source]:


A thing  was the governing assembly  made up of the free people of the community, meeting in a place called a thingstead.
(“thing” in Germanic societies,  “res” for Romans, etc.)
Heidegger (The Thing):

Near to us are what we usually call things. The jug is a thing. What is a jug? We say: a vessel.  As a jug, the vessel is something self-sustained,  self-supporting, or independent.

An independent, self-supporting thing may become an object if we place it before us.

An object is a reification of a thing.
[Kenneth Olwig: “Heidegger, Latour and The Reification of Things:The Inversion and Spatial Enclosure of the Substantive Landscape of Things – the Lake District Case”, Geografiska Annaler: Series B 2013 Swedish Society for Anthropology and Geography]
An object is therefore real,  but all about thing and thingstead is lost.
Reification generally refers to making something real…
Reification (computer science), making a data model for a previously abstract concept.
3.  An example of a thing and some of it’s reifications:
Quotes  and images from here:
On 20 May 1515, an Indian rhinoceros arrived in Lisbon from the Far East.
After a relatively fast voyage of 120 days, the rhinoceros was finally unloaded in Portugal, near the site where the Manueline Belém Tower was under construction. The tower was later decorated with gargoyles shaped as rhinoceros heads under its corbels.[11]
A rhinoceros had not been seen in Europe since Roman times: it had become something of a mythical beast, occasionally conflated in bestiaries with the “monoceros” (unicorn), so the arrival of a living example created a sensation.
The animal was examined by scholars and the curious, and letters describing the fantastic creature were sent to correspondents throughout Europe. The earliest known image of the animal illustrates a poemetto by Florentine Giovanni Giacomo Penni, published in Rome on 13 July 1515, fewer than eight weeks after its arrival in Lisbon.

Valentim Fernandes, , saw the rhinoceros in Lisbon shortly after it arrived and wrote a letter describing it to a friend in Nuremberg in June 1515.  A second letter of unknown authorship was sent from Lisbon to Nuremberg at around the same time, enclosing a sketch by an unknown artist. Dürer saw the second letter and sketch in Nuremberg. Without ever seeing the rhinoceros himself, Dürer made two pen and ink drawings,[23] and then a woodcut was carved from the second drawing, the process making the print a reversed reflection of the drawing.[19][24]

The German inscription on the woodcut, drawing largely from Pliny’s account,[13] reads:

On the first of May in the year 1513 AD [sic], the powerful King of Portugal, Manuel of Lisbon, brought such a living animal from India, called the rhinoceros. This is an accurate representation. It is the colour of a speckled tortoise,[25] and is almost entirely covered with thick scales. It is the size of an elephant but has shorter legs and is almost invulnerable. It has a strong pointed horn on the tip of its nose, which it sharpens on stones. It is the mortal enemy of the elephant. The elephant is afraid of the rhinoceros, for, when they meet, the rhinoceros charges with its head between its front legs and rips open the elephant’s stomach, against which the elephant is unable to defend itself. The rhinoceros is so well-armed that the elephant cannot harm it. It is said that the rhinoceros is fast, impetuous and cunning.[26]
Comment: you can see here a thing taking shape.
Despite its errors, the image remained very popular,[5] and was taken to be an accurate representation of a rhinoceros until the late 18th century.
The pre-eminent position of Dürer’s image and its derivatives declined from the mid-to-late-18th century, when more live rhinoceroses were transported to Europe, shown to the curious public, and depicted in more accurate representations.
Until the late 1930s, Dürer’s image appeared in school textbooks in Germany as a faithful image of the rhinoceros;[6] in German the Indian rhinoceros is still called the Panzernashorn, or “armoured rhinoceros”. It remains a powerful artistic influence, and was the inspiration for Salvador Dalí‘s 1956 sculpture, Rinoceronte vestido con puntillas (Rhinoceros dressed in lace), which has been displayed at Puerto Banús, in Marbella, since 2004.
Comment: that is an object! You can stick an RFID to it and it has clear GPS coordinates.
4.     Bruno Latour (From Realpolitik to Dingpolitik, or How to Make Things Public), writing about “object-oriented democracy”:

Who is to be concerned? What is to be considered? How to represent the sites where people meet to discuss their matters of concern?

How does the Internet of Objects respond to these questions about things and thingsteads?

People are going to use the Internet of Objects as an Internet of Things. How can we help them (us!) by designing a thing-friendly Internet of Things?

My guess and proposal is to try to put space (i.e. thingstead) into the IoT.  By design.
5.   Not the RFID space.  Not the GPS space.  This may be useful for the goal of inhuman optimization, but will not promote by itself the conversation needed to have around things and their reifications, the objects.
People are going to divert the ways of the IoT, designed with  this lack of appetite for human communication, as they succeeded previously!
For understanding why RFID and GPS  are not sufficient, let’s imagine, like Borges, that the world is a library.
  • RFID – name of the book
  • GPS – place on the shelf
Is this enough for me, reader, who wants to retrieve (and discuss with other readers about) a book without knowing it’s title, nor it’s position on a shelf?
No!  I have to call a librarian (the bottleneck), an inhuman and very efficient one, true,  who will give me a list of possible titles and who will fetch the book from the right shelf. I don’t have direct access to the library, nor my friends which may have different ideas about the possible titles and shelves where the book might be.
The librarian will optimize the book-searching and book-fetching, will optimize all this not for me, or for you, or for our friends, but for a bayesian individual in a bayesian society. (see Bayesian society)
What I would like is to have access to my library (in the big Universal Library) and to be able to share my spatial competences of using my library with my friends. That means a solution for the following problem, which  Mark Changizi  mentions in relation to e-books (but I think is relevant instead for the human IoT)

The Problem With the Web and E-Books Is That There’s No Space for Them

My personal library serves as extension of my brain. I may have read all my books, but I don’t remember most of the information. What I remember is where in my library my knowledge sits, and I can look it up when I need it. But I can only look it up because my books are geographically arranged in a fixed spatial organization, with visual landmarks. I need to take the integral of an arctangent? Then I need my Table of Integrals book, and that’s in the left bookshelf, upper middle, adjacent to the large, colorful Intro Calculus book.

6.  What else?  These notes are already rich enough, therefore please be free to stop reading, if you feel like.
Actually, this is a technical problem: how to create space where there is none, without using arbitrary names (RFID) or global (but arbitrary) coordinates (GPS)?
It is the same problem which we encounter in neuroscience: how the brain makes sense of space without using any external geometrical expertise? how to explain the “brain as a geometry engine” (as Koenderink) when there is no rigorous  model of computation for this brain behaviour?
There may be a point in holding that many of the better-known brain processes are most easily understood in terms of differential geometrical calculations running on massively parallel processor arrays whose nodes can be understood quite directly in terms of multilinear operators (vectors, tensors, etc).
In this view brain processes in fact are space.
I have two proposals for this, which go far beyond explanations which may fit into a post.  I put them  here only for the sake of giving an explanation of the motivations I have, and maybe for inviting the interested people to gather for discussing about these things.
It is about “computing with space”, which is the middle name of this blog.  The first name, chorasimilarity, is made by gluing Plato’s notion of space “chora” with  (self-)”similarity”, which is, I believe the essence of transforming space from a “vessel” into a self-sustaining, self-supporting thingstead.
The first proposal is to concentrate on completely asynchronous, purely local  models of distributing computing as a low-level basis for the architecture of a true IoT.
For example: mesh networks. (Thank you Peter Waaben.)
I know of only one model of computation which satisfy the previously mentioned demands and also  solves the problem of putting space into the Net:
It is based on actors which gather in an agora to discuss things that matter.  Literally!
But there is long way to  arrive to a proof of principle, at least, for such a space-rich IoT, which brings me to the second proposal, which (may) be too technical for this post, alluded here: A me for space.

What’s a GLC actor?

A GLC actor it’s an entity which has some data and 5 possible behaviours. See section 3 from

GLC actors, artificial chemical connectomes, topological issues and knots

for details and examples.

Data.  Every actor has a name. The notation used is that the actor :a is the name of the actor a.  Every actor has also, as data, a GLC graph which has some of his half-arrows decorated with names of other actors.

You can use these decorations in order to assembly a big GLC graph from the pieces which reside in all actors data, by gluing the half arrows along the given decorations.

But mind you that the behaviours of actors are not a consequence of the existence of this global object, the big GLC graph.

Behaviours. The main idea is that the graph rewrites of the big GLC graph can be done asynchronously, by purely local interactions between the actors which have the small pieces of the big GLC graph.

There are two types of graph rewrites, which are treated differently.

  • the graphic beta move (and the FAN-IN move if we use chemlambda instead of GLC) which is performed between two actors, as a form of interaction between those. This is behaviour 1.
  • FAN-OUT and pruning moves, which are performed internally in one actor. This is behaviour 3.

Besides this, we have:

Behaviour 2: name change. An actor can pass one node to another actor. It has to be an actor which he knows, i.e. one which has an address which appears on one of the half-arrows of the mentioned node.

Behaviour 4: new actors. An actor can split into two, thus he can create a new actor, provided it’s piece of GLC graph has two disconnected parts.

Behaviour 5: interaction with cores. Suppose you use external IT constructs, like databases, counters or other. Call this  “cores”.  You make an actor from such a core by connecting it to a “mask” (which is  GLC graph) and by defining moves which are performed between the mask and the core. Basically such a move means a translation from external format into GLC graphs. This can be always done, because GLC is Turing universal. In the paper is given the example of a counter as a core.


Some of the behaviours of a GLC actors resemble with those of a Hewitt Actor, like creation of new actors. Is not clear though if GLC actors are actors in the sense of Hewitt.

What is clear is that the distributed computing with GLC actors is kind of like a play.


Doing my homework: Heidegger, Latour on things

Heidegger The Thing, quotes:

All distances in time and space are shrinking. […] Man […] now receives instant information […] of events which he formerly learned about only years later, if at all.

Yet the frantic abolition of all distances brings no nearness; for the nearness does not consist in shortness of distance. […] Short distance is not in itself nearness. Nor is great distance remoteness.

What is this uniformity in which everything is neither far nor near — is, as it were, without distance?

Everything gets lumped together into uniform distancelessness. How? Is not this merging of everything into the distanceless more unearthy than everything bursting apart?

Near to us are what we usually call things. The jug is a thing. What is a jug? We say: a vessel […] As a jug, the vessel is something self-sustained […] self-supporting, or independent.

An independent, self-supporting thing may become an object if we place it before us.

Bruno Latour, From Realpolitik to Dingpolitik, or How to Make Things Public, quotes:

[…] an object-oriented democracy tries […] to bring tohether two different meanings of the word representation that have been kept separate in theory although they have remained always mixed in practice.

The first one […] designates the ways to gather the legitimate people around some issue.

The second one […] presents, or rather represents what is the object of concern to the eyes and ears of those who have been assembled around it.

Who is to be concerned?

What is to be considered?

How to represent the sites where people meet to discuss their matters of concern?

The short history of the rhino thing

Do you remember the story of the six blind men and the elephant?

It was six men of Indostan
To learning much inclined,
Who went to see the Elephant
(Though all of them were blind),
That each by observation
Might satisfy his mind.

Each blind man generalizes from his local perception to the whole elephant.


They don’t arrive to a consensus about what the elephant is.

And so these men of Indostan
Disputed loud and long,
Each in his own opinion
Exceeding stiff and strong,
Though each was partly in the right,
And all were in the wrong!

Why? Probably because their blindness means a lack of geometrical expertise. Coupled with their unwillingness for conversation, they don’t succeed into transforming the elephant into a thing.

But what is a thing? It is not an object, it is a conversation, and in the same time is the conversation about something.

An object is a  reification of a thing. Reality is made by objects, by consequence. For more along this line of thinking (inspired  by Kenneth Olwig) see Internet of things not internet of objects.

But this is only a story, right?

This  is the real history about the rhino thing. I am not talking about living rhinoceros, I am talking about how it went about the appearance of the rhino thing.

You may see this  history as an evolved version of the story of the six blind men and the elephant, where the six blind men arrive to have a conversation about the elephant and they succeed into transforming the elephant into a thing (i.e. they agree about the qualities, shape, location and uses of the elephant, as they felt it).

Only it is not about an elephant, but about a rhinoceros. Details, if you missed the link, HERE.


Later on, the rhino thing becomes an object, in fact many objects, among them a emblem used by an Italian duke


and a  real, 3D sculpture made by a Spanish artist (which you can feel and locate using GPS coordinates).