mMThe first large memo:
How are you reading this article? How did it go from my laptop to your screen?
By the time you read this, I will have posted it on Yours.org, tweeted the link out, and posted it in other various channels. As of the time of writing, The BCH Boys podcast has 750 Twitter followers. Some of those followers have thousands of followers, and others have less than 100. Every person who may come in contact with this piece is a “node” in a large social network. Looking at it this way, we could deduce that we have 750 links to 750 nodes. But do we? How many of those nodes are logged in at the time that we tweet the piece? How many of those nodes will scroll right past the tweet and not even notice it? How many will retweet it to their followers (more nodes), continuing the broadcast?
If our intention is to spread this article as far and wide as possible, the connections between people are more important than how many followers we have. When we tweet, only people connected to us will see the tweet. You will only see this article if the people you follow share it. In the Twitter social network, a retweet from Kanye West or Donald Trump would be more valuable than a retweet from almost anyone else due to their large followings. In this way, not all nodes have the same reach. The most valuable nodes in the social network to the author are the most well-connected nodes because they diffuse the information contained in this piece to a larger set of nodes than the less-connected nodes. If I want to maximize the reach of this article, I should target every node that has high connectivity in the social network. In computer science, we would say that the edges, or links, are more important than the number of nodes in a network. We call every node with a high number of links, highly connected.
Bitcoin functions no differently. If you are a merchant, you want the entire Bitcoin network to see your transaction so that the customer can’t pull off a double spend. It is in your interest to broadcast the transaction to the nodes that have the highest connectivity because more of the network will see the transaction more quickly. Not by accident, the most well-connected nodes end up being the miners in the network. If you are a miner, you are in a race with every other miner in the network competing to solve the next hash puzzle and get the block reward. The thing is, you only get that block reward if the majority of miners start mining on top of your block. As a miner, you have a clear incentive to be highly-connected to the other miners in the network, so that when you find the block reward you can announce that as quickly as possible to the rest of the network. Dr. Craig Wright has been adamant that what this creates is a small-world near-complete network. Is he right?
Small World Networks
The term “small-world” was first coined by Stanley Milgram, and it “describes a situation where, despite facing a very large population, an individual can typically succeed in contacting any other in the population through a short path of intermediaries.” Milgram’s initial small-world experiment was to get individuals to send a letter from Nebraska to Boston as quickly as possible. What Milgram found is that if people were given instruction to, say, get the letter to a banker in Boston, they would be selective in who they passed the letter on to. For example, people sought out individuals that they knew had relatives in Boston or people they knew in the finance industry. As a result, the most interesting aspect of the problem Milgram posed was the characteristic of searchability in a network. Milgram found that on average this problem could be solved with an average number of six hops between individuals before the letter would be delivered. Vega-Redondo writes: “Upon validation of Milgram’s experiment, researchers identified the importance of individual incentives (besides searchability) as a primary factor in chain completion [i.e. reaching its final destination]. When suitably accounting for a reasonable rate of attrition (that is assumed random), they found that Milgram’s original conclusions are somewhat reconfirmed: the median number of steps can be estimated to range between 5 to 7.” Interestingly, they specifically pointed out that incentives play a big role in forming the small-world network.
To aid in our understanding of a small-world network, it is helpful to begin with a regular lattice (mesh) network. Imagine a cul-de-sac of houses. Each house has a phone line connection to their next door neighbors on the right and on the left.
If you want to get a signal from one end of the cul-de-sac to the other, the communication has to go through each house one-by-one, as shown by the cyan-colored links. Each additional hop adds time to the communication. The more hops you have to make, the more time you will have to wait for the other person to receive your message.
Above, you see a regular lattice network. The lattice network is like the cul-de-sac except each node is also connected to their neighbor’s neighbor. The information can spread a little more quickly because you can broadcast a message to four houses instead of two. The information can skip unimportant houses and arrive to the destination. Getting from Node 3 to Node 14 requires only six hops instead of 11 hops. To get to a small-world network from here, let’s introduce a variable, p, that acts as a “rewiring probability” on the network. This p will randomize the links between nodes, without changing the number of connections. The higher p is, the more “randomized” the links in the network become. Math Insight has an interactive graphic to illustrate what happens when you change the value of p. If you play with the slider, you can see for yourself the effect p introduces on the configuration of the lattice network.
The most interesting aspect is that even if p is arbitrarily small, the average number of hops, or path length, decreases drastically when compared to the lattice configuration. The average path length is defined as the average number of steps along the shortest paths for all possible pairs of network nodes. In Bitcoin, we can extrapolate p to represent the added incentive for nodes to connect to nodes other than their direct neighbors. As outlined above, this incentive is quite strong for miners.
Note that in the above image, as the randomness increases, the connections change. The original lattice configuration connections are not maintained. In Bitcoin, there is a clear incentive to not rewire existing connections, but to keep and add new connections. In this way, Bitcoin is more highly connected than the “random” (or unstructured) network configuration shown above.
We can clearly begin to see how Bitcoin incentivizes a small-world network (i.e. small network distance) to emerge. While we can deduce the properties of the network without measurement, we are lucky to have tangible results being released in academic circles to supplement our intuition. Marco Javarone and Craig Wright have released a paper showing that both the BTC and BCH networks are definitively, small-world networks.3 Their results show that both networks exhibit small-world behavior since their shortest path length is smaller than the logarithm of the network size (i.e. the number of nodes). A block or transaction that is propagated through the Bitcoin network can be broadcast to the entire network VERY quickly. Keep in mind that the network nodes that matter are the miners and the merchants because they make use of the state of the network in real time. This is a profound effect that has vast implications for how we interact with the Bitcoin network.