This post continues from A simple explanation with types of the hexagonal moves of projective spaces . Here I put together all the story of projective conical spaces, seen as a graph rewriting system, in the same style as (the emergent algebra sector of) the graphic lambda calculus.
What you see here is part of the effort to show that there is no fundamental difference between geometry and computation.
Moreover, this graph rewriting system can be used, along the same lines as GLC and chemlambda, for:
- artificial chemistry
- a model for distributed computing
- or for thinking about an “ethereal” spatial substrate of the Internet of Things, realized as a very low level (in terms of resources needs) decentralized computation,
simply by adapting the Distributed GLC model for this graph rewriting system, thus transforming the moves (like the hexagonal moves) into interactions between actors.
All in all, this post (and the next one) completes the following list:
- Dictionary from emergent algebra to graphic lambda calculus (I)
- Dictionary from emergent algebra to graphic lambda calculus (II)
- Dictionary from emergent algebra to graphic lambda calculus (III)
- Towards qubits: graphic lambda calculus over conical groups and the barycentric move
- Axioms for projective conical spaces (towards qubits II)
- A beautiful move in projective spaces
- A simple explanation with types of the hexagonal moves of projective spaces
1. The set of “projective graphs” PROJGRAPH. These graphs are made by a finite number of nodes and arrows, obtained by assembling:
- 4 valent nodes called (projective) dilations (nodes), with 3 arrows pointing to the node and one arrow pointing from the node. The set of 4 arrows is divided into
4 = 3+1
with 1 incoming arrow and the remaining 3 (two incoming and 1 outcoming) . Moreover, there is a cyclical order on those 3 arrows.
- Each dilation node is decorated by a Greek letter like , which denotes an element of a commutative group . The group operation of is denoted multiplicatively. Usual choices for are the real numbers with addition, or the integers with addition, or the positive numbers with multiplication. But any commutative group will do.
- arrows which don’t point to, or which don’t come from any nodes are accepted
- as well as loops with no node.
- there are also 3 valent nodes, called “fanout nodes”, with one incoming arrow and two outcoming arrows, along with a cyclic order of the arrows (thus we know which is the outcoming left arrow and which is the outcoming right arrow).
- moreover, there is a 1-valent termination node, with only 1 incoming arrow.
Sounds like a mouthful? Let’s think like this: we can colour the arrows of the 4 valent dilation nodes with two colours, such that
- both colours are used
- there are 2 more incoming arrows coloured like the outcoming arrow.
I shall call this colours “O” and “X”, think about them as being types, if you want. What matters is when two colours are equal or different, and not which colour is “O” and which is “X”.
From this collection of graphs we shall choose a sub-collection, called PROJGRAPH, of “projective graphs”, with the property that we can colour all the arrows of such a graphs, such that:
- the 3 arrows of a fanout node are always coloured with the same colour (no matter which, “O” or “X”)
- the 4 arrows of a 4 valent dilation node are coloured such that the special 1 incoming arrow is coloured differently than the other 3 arrows.
With the colour indications, we can simplify the drawing of the 4 valent nodes, like indicated in the examples from this figure.
Thus, the condition that a graph (made of 4 valent and 3 valent nodes) is in PROJGRAPH is global. That means that there is no a priori upper bound on the number of nodes and arrows which have to be checked by an algorithm which determines if the graph is in PROJGRAPH.
In the next post we shall see the moves, which are all local.