The Knuckleheads’ Club: “Google’s Web Cache Is An Essential Facility”

The fact that Google’s web cache is an essential facility for humanity blows my mind. Is so true.

This is an awesome idea. More than awesome: it is correct. Read about it at the Knucleheads’ Club site “Google’s Got a Secret“.

They give solid arguments that Google has a natural monopoly on search. It is impossible to compete with Google. This is because Google was the first to crawl the whole www (when it was much smaller than today). After that they advanced like a good chess player. Now, according to the Knucleheads’ Clug explanation, only Google is really allowed to crawl the web, as a composite effect of the mass adoption of their great search service and the much higher demands on a competitor today.

Google had a great idea and a perfect execution. Mathematically, it has now a monopoly. Here’s where the things get really interesting.

Google should give access to its cache of web crawl data. Because today Google’s web cache is an essential facillity.

It’s only natural, it’s fair and so right.

And it’s the same wrong which has to be made right, exactly like the situation of scientific communication. Previously the scientific publishers were useful, now they are a nuissance. What was many years ago designed to advance the knowledge is now used to limit the access to scientific knowledge.

And, the most important, Google’s web cache is a cache of things we humans made, just like scientific research is made by researchers, irrespective to the place where the results are reported.

Please go read the whole case. [HN discussion.]

And also visit the wonderful Common Crawl effort. And the Internet Archive Scholar.

Asemantic computing

Added 2025: Cite as: Marius Buliga, Asemantic computing. In DOI chemlambda. (2022). chemlambda/molecular: Molecular computers which are based on graph rewriting systems like chemlambda, chemSKI or Interaction Combinators (v1.0.0). Zenodo.

[First version] [First version pdf] [Github]

True distributed computing which also has a global meaning (semantic) is not possible. People still stubbornly try to do it in stupid ways. They are fond of semantics.

However Nature is a true distributed computation which does not have the kind of meaning sought by humans (and programmers in particular). As concerns the biological realm, all is chemistry. Therefore we can be sure that it is possible to have the most amazing distributed computing.

What about asemantic computing?

Turing machines are asemantic. No matter what stack of programs you use to produce the initial string written on your tape, from that point on a TM works locally in time and space, without any need for global control or meaning. But a network of TM cannot work without a global component (hence semantics) because you have many heads writing on the same tape, which lead to well known problems. As TM can be translated into headless TM, which they cound be converted into graph rewrite systems, a network of TM can’t be turned into a confluent graph rewrite system.

Lafont’ Interaction Combinators is a graph rewriting system (a chemistry) which can be used for true distributed computing. Lafont proves that IC is Turing universal because it can implement any Turing machine.

IC is confluent, meaning that of we have an IC graph which can be rewritten into one without any further possible rewrites, then this final state is unique (and therefore it can be attained no matter how we split and distribute the graph to the participants at the computation, nor does it matter which protocol use the participants to transfer pieces of graphs). Confluence does not say anything about graphs which don’t have a final state. Confluence is undesirable for life like distributed computations, where final states are to be interpreted as death and they have to be recycled somehow by anoher mechanisms. Chemlambda is an alternative.

IC and chemlambda are good for true distributed computation only as long as they are not used for implementing a sufficiently powerful term rewrite system, like lambda calculus. That is because it is not possible to have only local computations with a term rewrite system. This is simply because a term rewrite system is non-local by definition. [Lambda calculus in particular is mostly alpha-conversion, as made visible by the passage to (global) de Bruijn indices, see λs calculus.]

So if we want a true distributed computing system then we have to make it asemantic (because otherwise is not local), we have to use graph rewrite systems and not term rewrite systems (because term rewrite systems are non local) and the meaning we can extract from the system can be only local as well (therefore there is no point to try to extract from the system precise global measures of agreement, syncronization).

In conclusion such a system is, as for now, unclear how to program it or how to use it (as long as we want to program it in the old ways and to use it for communication in the old ways).

But we can try to use it as if it is a living ecosystem, an extension of the meatspace. For this we have to go even more extreme and to renounce at confluence.

Such a system would be certainly useful for protecting, evolving and sadly challenging the life on Earth.

Since it is possible, it has to be tried, though.

Pure See mnemonics

Fo those who follow Pure See, until I get the vaccines and update the pages, here is a useful table.

This is only partially compatible with the draft, because there are two variants of from, see, as, and only one variant is used in the draft. Although in various sections the other variant is used and many statement are theorems (which need proof). For example if you look at the Commands section, the functional form column uses the last 3 rows from the table and the command column uses the first 3 rows.

The draft is messy, still, that is why is it a draft. But the competent one can see through, and by using the rest of the material in colin.pdf and in chemlambda.github.io, can make it until the connection with linear logic.

Mind that the rational functions in square brackets are just mnemonics.

Interesting details about some Sci-Hub proxies

There is a new interview with Elbakyan: “Cognition, communism, and theft” or [archived version]. The end of the interview is very interesting: it is about a new phenomenon of sites which serve as proxies for Sci-Hub as a kind of an effort to stiffle the speech which is associated with the Sci-Hub project. [This is my interpretation, it may be wrong, so go read the interview and make your own opinion about it.]

I reproduce this last part of the interview here, but you better use the links to read the whole interview.

[Question:] “In September of 2020 the http://sci-hub.tw domain was blocked under a Website Infringement Complaints lawsuit by Elsevier using legal representation from Beijing. Can you explain the reasons behind this worldwide block and the suspicious follow-up appearance of fake look-alike Sci-Hub domains?”

[Elbakyan answers:]”I have doubts about the real reason for the Elsevier lawsuit. Why? Well, I bought the .tw domain a few years ago from one Russian Internet company and since then, sci-hub.tw was never blocked, while other domains (Sci-Hub had a lot of them) did not live long, a couple of months or so. But the .tw domain was miraculously resilient to this. I was thinking, perhaps Chinese government (back then I did not know about the conflict between mainland China and Taiwan) was silently supporting Sci-Hub because of communist ideas?… What prevented Elsevier from seizing the .tw domain, just like they did with all other domains? (Another resilient domain is .se but Pirate Party in Sweden is backing it up).

When sci-hub.tw suddenly got blocked in September, I contacted that Russian company asking them what happened, because I had no letters from the domain registrar in my mailbox that are usually sent before the domain gets blocked. They took a long pause and then responded that they had asked the company where the .tw domain was registered, but they were silent and did not reply. I asked whether I can ask them myself, and they gave me an email. I sent a letter on 29 September, but then already I felt something was not clear here. The company responded the next day, very shortly, ‘we have sent you the document, please check, thanks’ I asked whether they could send me the document again because I received nothing! After 10 days, they finally responded with a document, explaining that there was a lawsuit filed by Elsevier (I posted that on Sci-Hub Twitter).

Then it popped up. sci-hub.tw was a very popular domain, it popped up first in Google search results, 45% of Sci-Hub users were coming from Google and other search engines (now percentage of search traffic is only 22%) but after it got blocked, it disappeared and instead, some suspicious ‘Sci-Hub’ websites started to appear first in Google (I also posted about that on Twitter)

By suspicious ‘Sci-Hub’ websites I mean scihub.wikicn.top, sci-hub.tf, sci-hub.ren, sci-hub.shop, and sci-hub.scihubtw.tw. These websites are actually the same, and they worked as a proxy to Sci-Hub, so they receive request from the users, redirect it to real Sci-Hub website (using some non-blocked Sci-Hub address) and give user the response, hiding/masking the address of real Sci-Hub. Actually, such websites can, in theory, have good goals, just to unblock Sci-Hub in those places where access to real Sci-Hub is blocked, for example, scihub.unblockit.top or scihub.unblockit.lat work the same way – but we can easily see these as generic services to unblock various blocked websites.

In the case of the websites mentioned above, the first time I encountered this was when one of the Sci-Hub domains was blocked in Russia. In such cases I usually add a new Sci-Hub domain for Russian users to work. After .se was blocked in Russia back in 2019, I quickly added sci-hub.st (if I remember correctly) as a replacement but then I noticed, that surprisingly, instead of this new domain published by me, people promoted some ‘sci-hub.ltd’ website. I opened it and it worked as a proxy, and I really did not like that, also because .ltd domain means ‘limited’ and Sci-Hub should not be limited. I found their IP address and configured Sci-Hub, so that when Sci-Hub is accessed though sci-hub.ltd proxy, it shows the REAL Sci-Hub addresses that people can use instead.

After I did that, the sci-hub.ltd author contacted me, and instead of providing some good reason for his .ltd website, such as “we want to provide access to Sci-Hub where real addresses are blocked” mumbled something about promoting Sci-Hub through this domain!

Then coronavirus happened and I forgot about this, but this September it all resurfaced as a replacement for the .tw website worldwide. These websites are adding advertisements while real Sci-Hub has no advertisements. They use suspicious domains such as ‘shop’ or ‘tf’ which reads as ‘thief’. Just like previously, I replaced their content with real Sci-Hub addresses (.st .se and .do) and they were aggressively fighting it! They tried using multiple proxies to hide their IP, they were desperately replacing and removing real Sci-Hub addresses from my message, they changed my email (!) on my About page (sci-hub.do/alexandra) to some another email registered at 163.com, and later they removed link to my page completely. If they had good intentions, just to unblock Sci-Hub, they could SIMPLY provide real Sci-Hub addresses in the left menu, with an explanation that they are only a proxy to help people when Sci-Hub is inaccessible by real addresses. They did nothing, instead they started to redirect to some Sci-Hub database mirror instead, and for new articles they put a completely fake “proxy search” page, while in fact it does not search anything, is just an imitation of the real Sci-Hub.

I really suspect that these websites are kind of man-in-the-middle attack from publishers (or somebody else!), who are providing fake Sci-Hub websites instead of the real one, to manipulate or control Sci-Hub’s image. But they could not do this with the.tw domain live, they needed to block it in order to replace Sci-Hub with their fake Sci-Hub they can control. This happened soon after I posted “About me” information on Sci-Hub for everyone to read. See? Somebody might want to prevent such information from being posted, so they need a controlled Sci-Hub, so there will be no “About me” or “about Sci-Hub” pages that can provide true facts about Sci-Hub. Media is controlled, but I could post my story on Sci-Hub, and everyone respects Sci-Hub… they want to block this opportunity. Additionally, simple advertisements already create a negative impression of Sci-Hub as some shady website, while real Sci-Hub does not rely on advertisements.”

BBC advertorial for Sci-hub

According to BBC “Police warn students to avoid science website” [archived version] the “science website” Sci-Hub “offers open access to more than 85 million scientific papers and claims that copyright laws should be abolished and that such material should be “knowledge to all”.

It describes itself as “the first pirate website in the world to provide mass and public access to tens of millions of research papers”.”

Mass and public access to more than 84 million scientific papers!

But!

“But Max Bruce, the City of London Police’s cyber protection officer, has urged universities to block the website on their network because of the “threat posed by Sci-Hub to both the university and its students”.”If you’re tricked into revealing your log-in credentials, whether it’s through the use of fake emails or malware, we know that Sci-Hub will then use those details to compromise your university’s computer network in order to steal research papers,” he said.”

This is an article which makes me ask lots of question.

Why does one have to steal credentials in order to provide mass and public access to millions of research papers?

Are the authors of the research those who keep them hidden?

Why would the students go to Sci-Hub in order to educate themselves? The universities managers are very generous and they spend a lot of money to buy the access to these articles. Students benefit via their university credentials.

But even so, apparently students are attracted by Sci-Hub.

This has to be an advertorial for Sci-Hub, written with a british dry humour.

Two years from discovery to explanation, what can be done

As in others posts, I can offer proof. In Jan 12, 2019 I posted Kaleidoscope, information about a new project, with the proposed logo:

“Kaleidoscope” means sight of a beautiful image and everybody knows that a kaleidoscope toy involves 3 mirrors; the resulting image has the symmetry of the permutations of 3 elements group, etc. There was enough information in the name 🙂

In 24 June, 2019 I find that I posted somewhere here this image

which is an almost correct, but not correct version of the (nodes associated with) commands in Pure See. This pure see construction was announced in Nov 2019 in this post. This is still at a draft level, because one has to explain exactly how the formalism self updates to “anharmonic”, without having at the start anything anharmonic manifestly. So Pure See is still not well explained online, but you can feel there is a connection with “kaleidoscope”.

The direct connection is instead with the 13 March, 2021 post Entropic relation generates duplication, which contains the fresh image

You may say that these are only images, but in program form this is used in the tool to find correct duplication rewrites. The program, like others I wrote, is rather heavily annotated, but still not obvious to understand.

So in conclusion, there is a 2 years delay from the on paper discovery to online explanation.

I find this very annoying. This is not on purpose.

As said before, this is roughly the delay between what I have on paper and what I have online.

I wonder from time to time what can I do to speed up the process and what are the reasons for these delays.

If you have any advice then I’d be happy to hear it.

And I’d be more than glad to be able to have a more streamlined process of going from “on paper” to “published”. Sometimes I despair but I have to find one.

Entropic relation generates duplication: explanation

There is a third kind of duplication rewrite which is generated by an entropic relation, as mentioned in the post The 3 kinds of duplication confusion explained.

This kind of duplication is special because it does not involve fanout nodes.

In Pure See or anharmonic lambda calculus (or kali) there is a tool I made, which generates all the possible duplication rewrites coming from the entropic relation. Would you want to understand how the tool works?

What is an entropic relation: It appears also under several names, like “medial” relation, or even “shuffle” relation. If you have two operations, say * and #, then the pair of operations satisfy the entropic relation if for any a,b,c,d we have

(a*b)#(c*d) = (a#c)*(b#d)

A relevant example is related to quandles, mentioned in the “duplication confusion” post. Indeed, take an Alexander quandle, i.e. the dilation operations in a vector space:

a*b = (1-z) a + z b

a#b = (1-1/z) a + (1/z) b

and check that they satisfy an entropic relation. (That is, in the context of emergent algebras, equivalent with the commutativity of the vector addition operation.)

What kind of duplication is generated? The kind you saw in Lafont’ Interaction Combinators , figure 2:

Also in chemlambda there is a whole family of such rewrites, named “DIST”. (I.e. short of “distributivity”, but actually these are not related to distributivity, which induces a duplication of the 2nd kind. Confusion… clarified.) For example this one [source]:

Here “LHS” and “RHS” mean respectively the left-hand-side and the right-hand-side of the rewrite.

How does an entropic relation generate a duplication rewrite?

Suppose we have a pair of operations which satisfy an entropic rewrite. Then we invent two trivalent nodes (they are port nodes in the sense of Bawden), one for each operation:

Then we can write the graphical equivalent of the entropic relation as this:

We just keep adding nodes by respecting the labels on edges…

and we get hexagons. Now we could just look at one hexagon, which expresses the same entropic relation, but in a different way:

We cut now the hexagonal graph into two pieces:

and we see that we can transform the two pieces into the LHS and RHS of a rewrite which respects the labels of free half-edges:

This is how a “DIST” rewrite appears. It does not come from “distributivity”, though…

It does not contain any fanout node. It is identical to the examples given.

Graph rewrites, term rewrites and the duplication confusion

Attention, for explanatory purposes, this post will be modified several times. this post is the first part in a series. Follow the exposition in time.

In the last post The 3 kinds of duplication confusion explained I mentioned knot diagrams and quandles, then there was a comment which I updated later by saying that (my initial comment) is incorrect and inexact.

So let’s take a graph rewrite system as knot diagrams (but eliminate the condition to have planar graphs) with the Reidemeister rewrites. The goal will be to turn it into a term rewrite system.

And let’s take a term rewrite system as quandles and the goal will be to turn it into a graph rewrite system.

The two rewrite systems are related, because quandles decorate edges of knot diagrams in such a way that the R moves translate into quandle rewrites.

So we have a graph rewrite system and a term rewrite system which decorates the graph rewrite system.

Are there procedures to turn one into the other?

Is clear that we have to make precise definitions and then to reason rigorously based on these definitions.

That is why this post will be modified several times.

We don’t want to be too rigid because this means we introduce by the backdoor too big pieces of formalism which later we shall pretend is invisible. Or, it may happen that this invisible formalism is in itself much more powerful than the visible part. In such a case it will be like we pretend to explain something by magic.

Let’s start from the gist of the last post (and comments) applied to knot diagrams and quandles. I said there that the R3 rewrite is an example of the 2nd kind of duplication, because R3 translates into a self-distributivity axiom of quandles.

What happens is much more nuanced than that. Look: in order to build a graph rewrite system from quandles, we shall need the following three nodes

Notice that we speak about port graphs in the sense of Bawden. So each node has ports (which appear here as little colored dots).

By a knot diagram we mean a 4-valent (port) graph with two types of nodes, which correspond to the two types of crossings we have (recall that we have two types of crossings in the case we use oriented diagrams). The orientation of the edges in the diagram is though a byproduct of the graph being a port graph, so we are happy with the definition of port graphs here. Notice also that, distinctively from the usual knot diagrams, we don’t impose that the 4-valent graphs are planar. (We don’t introduce virtual crossings in order to make these diagrams planar again!)

We shall use freely the name “knot diagram” for these graphs.

Then any crossing in a knot diagram can be parsed in the usual way into a pair of 3-valent nodes from the list given before.

This is not enough to make a clear correspondence between knot diagrams with R moves and quandles. This is only a first step towards understanding more.

With this parsing, the left-hand-side (LHS) of one of the R3 rewrites looks like this.

In the upper part we see the LHS of the knot diagram rewrite R3, in the lower part of the figure we see the same, where each crossing is parsed.

With dotted magenta lines is marked the LHS pattern of the quandle rewrite (as translated from a quandle term to it’s graphical version).

Likewise now for the right-hand-side of the R3 rewrite:

We see that indeed the patterns of rewrite for the (tentative graph-rewrite system translation of the) quandle system are parts of the pattern rewrites for the knot diagrams graph rewrite system.

But there is more structure. Here is again the LHS pattern:

This time the pattern is decomposed into the one used for quandles (down) and the one not needed for quandles but needed for the R3 rewrite (middle). In this pattern from the middle there is a region (dotted magenta enclosure) of interest in a moment, as well as remaining pieces of graph, made by fanout nodes.

Let’s look at the same decomposition for the RHS pattern:

The dotted region of interest is now rewired into the RHS pattern for the quandle rewrite, and more rewiring is needed to free the tho fanout nodes which appear in the LHS too.

How to explain all this structure in an uniform way?

Here are some preliminary questions:

  1. Most likely the “right” translation of knot diagrams with R moves is in the terms of R-matrices. Quandles appear as a particular solution to the quantum Yang-Baxter equation. Explain what you have to add to (knot diagrams, R moves) graph rewrite system in order to turn it into a term-rewrite system for R-matrices coming from quandles.
  2. We can turn a term rewrite system like quandles into a graph rewrite system by passing from terms to their abstract syntax trees and by adding fanout nodes (in order to duplicate variables). Or there is an ambiguity in the parsing of terms into such graphs when it comes to fanout nodes and trees of them. (We are here at the level of the first attempt, in graphic lambda calculus, as described here) Here we encounter a “duplication confusion”, because in order to make a graph rewrite system from that we have to take into consideration the duplication of (quandle graphical) terms by fanout nodes, as well as this 2nd form of duplication which does not involve fanout nodes in the LHS (as this distributivity rewrite associated with the “R3”, quandle version). Propose such a system.
  3. Remark that the R3 is conservative in nodes and edges, but the distributivity rewrite (for quandles) is not. There are ways to make the distributivity rewrite to be conservative, by using tokens (like in hapax or chemlambda strings), see also some simple graph rewrite systems which are relevant. Explain the compatibility between the graph rewrite system of knot diagrams with R moves and the quandle diagrams rewrite system proposed at 2.

The 3 kinds of duplication confusion explained

There are actually 3 different ways duplication appears in various mathematical formalisms. They are often confused as the same, but they form a hierarchy.

Fanout duplication is when you have one variable, term, etc and you pass it to a fanout to get two.

X –> X X

Graphically at left we have something which produces the X which is connected to a fanout trivalent node. At right we have two copies of the thing which produces X and as many fanouts as needed to duplicate the input to the thing which produces X.

Distributivity duplication is a duplication of a variable due to algebraic distributivity, for example

x(a+b) –> xa + xb

In knot theory, this manifests as Reidemeister 3 rewrite. In quandle notation the R3 is a self-distributivity rewrite:

x*(a*b) –> (x*a)*(x*b)

Graphically at left we have two trivalent nodes which represent the quandle operations. At right we get three trivalent nodes (three quandle operations) and one fanout node to duplicate x.

Also linearity is a good name for this kind of duplication: if X is a linear operator and a*b is the quandle operation of taking a pondarate average of points a and b, then

X(a*b) –> (Xa)*(Xb)

expresses the essence of linearity.

In λs calculus of Kamareddine and Rios [local copy of the article] we see that duplication is achieved by distributivity rewrites:

Entropic rewrites are used in chemlambda. They are made after a schema which does not involve any fanout node (who dumbly duplicates a variable). Here we duplicate operations, using the medial or entropic relation

(x*u)#(y*v) = (x#y)*(u#v)

This relation is transformed into the DIST rewrites which all superficially look like the previous, distributivity duplication, but there is no fanout node, there are only operation nodes.

To understand how this is done, look at the following mage taken from Pure See, section of emergent rewrites.

The left pattern (LHS) is made of two operation nodes, the right pattern (RHS) is made by 4 operation nodes. The topology is the same as for distributivity duplication rewrite.

The entropic relation is used to prove that the decorations of the edges (the variable involved) is correct.

A further look at the image shows that among the 3 duplication kinds the last one is the most general. In the image “SHUFFLE” denotes the last kind of duplication, which allows for the most general edges decoration.

A more particular (smaller family of) decoration(s) is described in the column “LINEAR” which corresponds to the second kind of duplication. There one of the operation nodes becomes a fanout, basically because the operations are idempotent: taking a ponderate limit of x with x always gives x.

An even more particular family of decorations comes in the third column, “FANOUT”. This is possible only if in the LHS one of the operation nodes behaves like a fanout (due to idempotence). Then we can decorate the RHS edges in such a way that two operation nodes behave like fanouts. It is the first kind of duplication schema.

___

More freedom in the edge decorations comes with a price: in the most general case we have to comply with the entropic, or medial relation. In the “LINEAR” case we have something equivalent with R3, which is a weaker relation than the medial. In the “FANOUT” case we have no supplimentary relation to satisfy, but we can use it only if in the LHS we have a fanout node.

___

In Lafont Interaction combinators the duplication is achieved by what is called here “entropic duplication”. This is not surprising from our point of view because IC can be described with dirIC (a variant of chemlambda) where we use the same entropic duplication.

___

In knot theory, if we propose to compute with Reidemeister moves (as opposed to the usual use of the R moves as invariants of computations), then we have available only the “linear” duplication, or in knot theory terms,, the R3 move. Or, this is the goal of ZSS, where we see that’s basically not enough for universal computation. This is due to the fact that we can prove that if there was a parser from lambda terms to knot diagrams, such that there is also an algorithm which translates any beta rewrite into a succession of Reidemeister rewrites, then all the knot diagrams obtained from lambda terms have to be equivalent under Reidemeister rewrites. This means that ven if we can describe an universal model of computation with knot diagrams, such that the computation happens via Rmoves, then we can’t use them otherwise than as a notation, because there will always be a sequence of R moves which transforms the input into the output, even if there is no computation translation which does so.

Therefore we have to add more to the R moves, and in ZSS this is the SMASH move which transforms a crossing into two dirIC or chemlambda nodes, which can be further used with the entropic duplication schema to achieve universality. A SMASH move looks like this for example:

we smash the crossing by turning a fanout FO node into a chemlambda FOE operation node, thus passing to a higher level of the hierarchy of duplications.

Everything ok in critical pop science communication

A pair of critical posts from pop science bloggers were posted recently. Let’s call them poster A and poster B. What are they about:

  • a complex mathematical theory [link updated] by a strong pure mathematician is again obstinately trashed by pop science poster A, incompetent in the field.
  • an unspecified theory of everything (a baby boomer fetish thing) is announced without details by an otherwise very reasonable critic of the actual failure of methods, motivations and social structure of academia. This triggers a cascade of vague critics, a wave of links to youtube (instead of links to the site where, good or bad, a collaborative project seems to develop), which is hosted by pop science poster B.

Lately pop science communicators seem to lack the due attention of the public 🙂

Also, I see with great satisfaction the appearance of yet another collaborative project outside academia.

Something is wrong with the world we live in, right?

Post A: ABC is still a conjecture

Post B: [Guest Post] Problems with Eric Weinstein’s “Geometric Unity”

Kali IC task

Lafont Interaction Combinators turn out to be made by pairs of nodes, in a variant of chemlambda called dirIC which has the same nodes as chemlambda, but slightly different rewrites. The relevant translation between IC and dirIC is

as explained in Alife properties of directed interaction combinators vs. chemlambda. Marius Buliga (2020), https://mbuliga.github.io/quinegraphs/ic-vs-chem.html#icvschem

You can find the chemistry dirIC in the file chemistry.js from the quinegraphs repository. There you see that there is a common trunk of rewrites CHEMLAMBDABARE and two branches DICMOD and CHEMLAMBDAEND, so that

chemlambda (chemistry) = CHEMLAMBDABARE + CHEMLAMBDAEND

and

dirIC (or DIC chemistry) = CHEMLAMBDABARE + DICMOD

The pleasant (for some) feature of dirIC is that it does not have conflicting rewrites. (This leads to fewer interesting alife phenomena.)

At the end of the page you can play with the translation. The button IC>chemlambda transforms any IC graph (btw there is a chemistry IC as well :)) into a dirIC graph or a chemlambda graph, they are the same. You can choose how to reduce the translation by changing between chemistries (there is “change” button which toggles between chemlambda and dirIC).

An interesting thing happens if you play with one of the IC quines, namely 4_IC_5AB718246309

https://mbuliga.github.io/quinegraphs/ic-vs-chem.html#4_IC_5AB718246309

In IC, this is a quine. Translated into dirIC is no longer a quine.Why? that means that the translation is bad somehow! No, because IC and dirIC have no conflicting rewrites, in case you input an IC graph which can be reduced to a state where no ore reductions are possible, then this final state is unique. If you translate that IC graph into dirIC then you shall always reach a unique final state which is the translation of the final state of the IC graph.

But in case of an IC quine there is no final state, so confluence does not tell us anything. In particular, the translation from IC to dirIC gives two nodes for one node and an IC reduction corresponds to two dirIC reductions in parallel. In the absense of an unique final state, anything can happen if we reduce in dirIC and the rewrites are no longer coresponding to rewrites in IC (because we don’t force the system to always do pairs of parallel rewrites in order to preserve the correspondence of rewrites).

Convince for yourself: use IC>chemlambda button to turn the IC quine into a dirIC graph, use the “change” button to have the dirIC cheistry and hit “start”.

OK, but that’s not what I wanted to tell you in this post. I want to present you a task.

As you see, the IC nodes are pairs of chemlambda nodes: Delta is a pair of A (application) and L (lambda) nodes, Gamma is a pair of FI (fanin) and FOE (external FO) nodes. Or A and L nodes in chelambda and dirIC are involved in the beta rewrite, they annihilate one the other. In chemlambda and dirIC the same happens for the pair FI and FOE. Conveniently this implies the Delta-Delta and the Gamma-Gamma rewrites from IC, where there are two kinds of annihilations.

But if you look to Pure See then there is a thirs pair of nodes which annihilate one the other: D (dilation) and FOX (a sort of FO node…)

So we could use this third pair to construct an IC system with 3 nodes, say Delta, Gamma and Phi. The nodes and rewrites for Delta and Gamma will be the same. Because Phi is built from D and FOX, then we also have an annihilation rewrite Phi-Phi, which will be like Gamma-Gamma.

This leaves us with the rewrites which multiply nodes, or DIST rewrites in the parlance of chemlambda. We have Gamma-Delta as in IC, but there are more, namely: Delta-Phi and Gamma-Phi.

The task is to deduce them from a completion of dirIC with the nodes D and FOX which is compatible with Pure See. This is what is behind the “kaleidoscope” project, or “anharmonic lambda calculus“.

The problem is that you have to choose among many possible DIST rewrites. There is a help page which gives you these possible rewrites. You should find a completion of dirIC which is as symmetric as possible.

Or you could change the pairing (A-L, FI-FOE, D-FOX) and produce new ones, say A-FOE, FI-FOX, D-L, which would then give other rules than IC eventually. Say Delta-Delta would become a DIST rewrite and Delta-Gamma an annihilation rewrite, etc.

For chemlambda there is such a completion, called kali, which is only one of the many possible.

So what is your proposal for kali IC, an extension of dir IC?

Propose it as you like, preferably as an issue at the quinegraphs repository. Or by any other way.

All in all a working kali IC will give a 3 nodes IC version, both most likely interesting. Why not yours?

Asemantic computing draft

here. As this is a draft, probably has parts in need of rewriting. Or criticized. Some will certainly dislike it 🙂

Also archived.

UPDATE: a related subject, not touched in the draft, is the composability bloat. Composability of computations is often presented as desirable and it is a feature of an easy to program system. However, in Nature there are no examples of composable computations. It is always about the context. In programming, even if at small scale composability is desirable, at large scale it produces bloated computations.

Composability should not be enforced at the fundamental level, instead it should be a welcomed, side effect, of a polite manner to treat the participants at a distributed computation.

Unrelated: you may ask why do I use telegra.ph? Because is pure freedom 🙂 Previous uses: (internet of smells) (archived)   (home remodeling) (archived) the chemical sneakernet stories.