It's an interesting topic and I'm happy to see something like this show up as a discussion thread. Reading the article loosely it's fine, but reading it mathematically I'm compelled to criticize it a bit. The author uses a number of terms that have mathematical definitions ("topological space", "metric space", "continuous", "compact", etc.), but it's unclear if the mathematical meanings apply. To be fair, the article states:
We’ll not bother casual readers with the math, for now, but we can still learn a lot by employing related topological terminology.
It's possible the terminology is not intended to be interpreted mathematically. It's also possible that there is a way to make things precise that isn't clear to me, in which case the author might be able to clarify.
First, a "topological space" is (X,O) where X is a set and O is a set of subsets of X (the "open" sets) satisfying some properties.
https://en.wikipedia.org/wiki/Topological_spaceIn the article it's not clear what either X or O is intended to be. What are X and O?
Later there is a reference to a "metric" which would give a "metric space" (a special case of a topological space). The author states:
The blockchain’s metric is difficulty, a term coined by Bitcoin miners which will prove important to blockchain topology.
A metric should be a function that takes two elements and returns the "distance" between them, and must satisfy some properties. What are the two "elements" here? Let me try a guess. We could fix a blockchain (at a certain height) and consider all the blocks to be elements. (That is, X is the set of blocks in the chain.) For the metric, we could start with the simplest case where x is a block and y is the "next" block in the chain. In this case d(x,y) would be the difficulty of mining y given x. This could be extended to all the blocks on the chain by taking the sum. I think this would give a metric d satisfying the conditions of a metric space. However, since there are only finitely many blocks in the chain it's clear that the topology induced will be the discrete topology. (Since there are finitely many blocks in the chain, there will be a minimum distance delta>0 such that for every distinct blocks x and y the distance between them is at least delta. This is enough to know the topology is discrete.) The discrete topology is a trivial topological space, so I doubt it's what the author has in mind. And in any case, each time a new block is added to the chain, we have to consider a new metric space (since the set X of elements has changed).
The difficulty function is continuous
A function can only be continuous as a mapping from one topological space to another. What are the spaces? What is the "difficulty function"? Does the "difficulty function" refer to the target difficulty -- which is computed by checking the timestamps of the previous N blocks? I can see the target difficulty as a function from a blockchain to 2^{256}. If the blockchain is considered with a discrete topology, then every function from the blockchain is continuous. This is probably not what's intended, but it's the first way to make it precise that comes to my mind.
The hash function itself is discontinuous, however, since changes in input yield drastic and unpredictable changes in output.
I think you're referring to the avalanche property of hash functions. I don't see a direct connection to continuity. Let's take a simplified case of the sha256 hash function restricted to the domain 2^{256}. Whether or not sha256 is "continuous" depends on the topology we put on 2^{256}. To take extreme cases, if we use either the discrete or indiscrete topology, sha256 is continuous (since all functions will be). The first nontrivial metric space I thought of is the Hamming space.
https://en.wikipedia.org/wiki/Hamming_spaceBut with a little thought it becomes clear that the Hamming space 2^{256} is just the discrete topology in disguise. (Each point p is at least 1-distance away from every other point q.) Hence, sha256 is also continuous in this case.
Question: Let X be the set of 256-bit integers. Is there a topology O on X such that sha256 is not continuous as a map from (X,O) to (X,O)?
The blockchain is always connected, however, in the topological sense. There are no 0 elements in its data set, or else they would hash to themselves (zero). There would be a missing link in the blockchain, and its topological space would fall apart.
Does 0 hash to 0? I'm not sure what this means. I'm also not sure what it means for a "topological space" to "fall apart".
I think the first sentence in the quote just means that for each two blocks x and y on a blockchain there is a sequence x0, ..., xn where x0 is x, xn is y, and each x(i+1) is the next block after x(i). This isn't the topological property of connectedness (at least not directly).
https://en.wikipedia.org/wiki/Connected_spaceTo say the blockchain is connected in a topological sense, we need to consider the blockchain as a topological space. For example, if the blockchain is considered as a metric space it will have the discrete topology (as noted above) and will not be connected. (To be precise, it will not be connected if there are at least 2 blocks.)
Let's say the blockchain is B0,...,Bn where B0 is the genesis block and Bn is the latest block. The only nontrivial topology I can imagine in which the space is connected is some kind of order topology. In this case the open sets are the n+1 sets {Bi,...,Bn} where i ranges from 0 (giving the full set) to n+1 (giving the empty set). Is this the kind of topology intended?
Blockchains are also compact, having boundaries consisting of the most recent block’s root hash and all of its leaves.
If the set X of elements is finite, then the space is necessarily compact in the topological sense. I'm not sure what "boundaries" have to do with it.
I hope this feedback is helpful. It's possible I completely misunderstood the author's intentions. I mostly used this as an excuse to review some definitions.