Author

Topic: Blockchain Topology (Read 1526 times)

legendary
Activity: 1268
Merit: 1006
May 30, 2015, 01:56:39 PM
#7
The only possibility I see for this would be a 3-sphere whose surface is covered with points. Each point could have an opened sphere around it and each point to could be linked to others via addresses, transactions, movement of funds, utxos, movement of stolen coins, etc.

Algebraic topology is fun to play with in the mind. Are you shooting for a practical purpose for this or just playing with the idea?

Glad you asked. Smiley I believe I can use this framework to make some assertions about blockchains and cryptography that will prove insightful. I've been too busy the last couple of days to post, but I published two more articles in this series that explore further. Please check them out:


I am not familiar with this Mobius strip but a quick search brings this:

Quote
A Möbius strip made with a piece of paper and tape. If an ant were to crawl along the length of this strip, it would return to its starting point having traversed the entire length of the strip (on both sides of the original paper) without ever crossing an edge.

So, how are you going to create two sides to the blockchain?
And how do you plan on returning Bitcoin to the starting point - the Genesis block?
The topology of the blockchain is very different from the topology of a Möbius strip; I just linked to it as an example of how topology is neat.

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.

The author was forced to drop out of his math program years ago due to life circumstances, so he might be rusty and lacking in academic experience. I've been actively researching, and your feedback is welcome. To be fair, these articles are indeed intended for a casual audience, but I am compiling the terms more precisely in another document not yet published.

Quote
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_space

In the article it's not clear what either X or O is intended to be. What are X and O?

In the case of a blockchain, X is the set of all data values it contains. The subsets would be the Merkle tree structures, and also the hash values where they meet--the Merkle root of one is the leaf of another, and thus that hash would be their intersection. Their unions would also have to be included.

Quote
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).

In later articles, I try to topologically analyze larger structures, of which blockchains are a set. Block height isn't a good thing to base a metric space on, in that case, because data connected to a blockchain via proof of existence does not come in blocks.

I want to analyze them at the Merkle tree level, as a set of hash values connected by the chain of calculations that produces them in succession. There's a path between any two elements on a Merkle tree, the best unit of distance I could think of to measure these paths is based on the calculations performed.

Difficulty, in this sense, would be the difficulty of deducing an input hash from an output hash with some standardized piece of equipment. The distance between parallel elements is the sum of the distances between each element and the top hash connecting them.

Quote
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_space

To 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?

I'm starting to wonder if graph theory would be a better lense of study for this. I like Euler's approach with the Seven Bridges Problem. In trying to visualize these Merkle structures, I thought topology applicable in the sense of a topological map, wherein distortions don't affect its usability so long as all the connections are the same and well-defined.

I have some hypotheses that could be studied if we could formally depict blockchains and the data attached to them via proof of existence, as I've described. I believe that hashes near the top of the tree will tend to reside on blockchains that have higher mining difficulty or are based on a more secure network. Although I don't wish it to happen, it would be great for testing purposes if Bitcoin lost its dominant position to an altcoin--if Bitcoin and its associated data are all hashed into that altcoin's blockchain, I have some evidence in support.
full member
Activity: 132
Merit: 100
willmathforcrypto.com
May 28, 2015, 06:20:58 AM
#6
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:

Quote
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_space

In 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:

Quote
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).

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

Quote
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_space

But 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)?

Quote
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_space

To 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?

Quote
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.
hero member
Activity: 508
Merit: 500
Jahaha
May 28, 2015, 04:00:21 AM
#5
Does anyone else think that this would make a great music visualizer?  You know, like the one for itunes but with the blockchain instead.   Lets do it!  Or let someone else do it who knows how.

How are you going to visualize the Blockchain according to a song ?
hero member
Activity: 952
Merit: 513
May 28, 2015, 02:38:49 AM
#4
I am not familiar with this Mobius strip but a quick search brings this:

Quote
A Möbius strip made with a piece of paper and tape. If an ant were to crawl along the length of this strip, it would return to its starting point having traversed the entire length of the strip (on both sides of the original paper) without ever crossing an edge.

So, how are you going to create two sides to the blockchain?
And how do you plan on returning Bitcoin to the starting point - the Genesis block?
sr. member
Activity: 308
Merit: 250
May 28, 2015, 01:50:50 AM
#3
Does anyone else think that this would make a great music visualizer?  You know, like the one for itunes but with the blockchain instead.   Lets do it!  Or let someone else do it who knows how.
newbie
Activity: 13
Merit: 0
May 27, 2015, 09:37:40 PM
#2
The only possibility I see for this would be a 3-sphere whose surface is covered with points. Each point could have an opened sphere around it and each point to could be linked to others via addresses, transactions, movement of funds, utxos, movement of stolen coins, etc.

Algebraic topology is fun to play with in the mind. Are you shooting for a practical purpose for this or just playing with the idea?
legendary
Activity: 1268
Merit: 1006
May 27, 2015, 08:12:15 PM
#1
Any topologists out there? If you've ever played with a Mobius strip, you know what I'm talking about. It's trippy math that looks cool.

I've been tinkering with the applications of topology to the blockchain and cryptography, and was curious what you guys think of the idea. I believe I've come up with some new assertions. Blockchain Topology is the name of my seminal article on the topic (please check it out), but the field could be more broadly generalized to crypto topology.

Also, the illustrations NewsBTC's artist are doing are awesome, and relatively accurate with the articles, too.
Jump to: