This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Toward Equilibria and Solvability of Blockchain Pooling Strategies: A Topological Approach

Dongfang Zhao University of NevadaReno, NV 89557United States [email protected]
Abstract.

In 2015, Eyal proposed the first game-theoretical model for analyzing the equilibrium of blockchain pooling: when the blockchain pools are abstracted as a non-cooperative game, two pools can reach a Nash equilibrium with a closed-form formula; Moreover, an arbitrary number of pools still exhibit an equilibrium as long as the pools have an equal number of miners. Nevertheless, whether an equilibrium exists for three or more pools of distinct sizes remains an open problem. To this end, this paper studies the equilibrium in a blockchain of arbitrary pools. First, we show that the equilibrium among qq identical pools, coinciding the result demonstrated by Eyal through game theory, can be constructed using a topological approach. Second, if the pools are of different size, we show that (i) if the blockchain’s pools exhibit two distinct sizes, an equilibrium can be reached, and (ii) if the blockchain has at least three distinct pool sizes, there does not exist an equilibrium.

Blockchains; Nash equilibrium; Point-set topology; Algebraic topology; Distributed computing; Solvability
copyright: noneconference: ACM Conference on Computer and Communications Security; Due 15 May 2019; London, TBDjournalyear: 2020

1. Introduction

In 2015, Eyal (Eyal, 2015) proposed the first game-theoretical model for analyzing the equilibrium of blockchain pooling: when the blockchain pools are abstracted as a non-cooperative game, two pools can reach a Nash equilibrium with a closed-form formula. Moreover, the pioneering work further proved that an arbitrary number of pools still exhibit an equilibrium as long as the pools have an equal number of miners. Whether an equilibrium exists for three or more pools of distinct sizes, however, remains an open problem.

This paper studies the equilibrium in a blockchain of arbitrary pools: the number of pools might be larger than three, and each of these pools might admit any number of miners: the pools might be of different sizes, pair-wisely. The motivation of this study is that relaxing the constraints on the number of pools and their size-equality would better portrait the real-world scenarios: evidently, all production blockchain systems comprise more than two pools whose sizes are barely equal.

We approach this problem through a methodology rather than game theory though; instead, we go for a lower-level mathematical technique—topology. This choice of methodology is purely technical: we found that the framework and tools in topology are more flexible and arguably, more powerful. Although there are multiple branches of topology, such as point-set topology and algebraic topology, their essence is very similar: it is all about the relationship among the elements of a set and the derived topological properties thereof. In this sense, although in the remainder of this paper we intermingle the techniques from both point-set topology and algebraic topology, the intrinsic rationale never diverges—again, it is all about the discussion on the relationship among, this time, the miners within and across blockchain pools.

From a technical perspective, this paper will first (§3) show that the equilibrium among qq identical pools, coinciding the result demonstrated by (Eyal, 2015) through game theory, can be constructed using a topological approach. Instead of using game theory as a black box in a non-cooperative game, we show that the equilibrium must exist even if we treat the blockchain pools in a coalitional game. The key insight of our approach, and also the approaches of other results of this paper, lies at the topological invariant on the connectivity of topological objects. This result demonstrates the power of topology: although an equilibrium, known as a core, of a coalitional game, might not exist, a topological-approach can speak of more—an equilibrium does exist for this problem.

The second part of this paper’s technical contribution (§4) is to tackle a more challenging problem in blockchain pooling, where the pools are not equal in size. Through various point-set-topological and algebraic-topological tools, along with a reduction to a well-known kk-set-agreement problem in solvability, we show that (i) if the blockchain’s pools exhibit two distinct sizes, an equilibrium can be reached, and (ii) if the blockchain has at least three distinct pool sizes, there does not exist an equilibrium. Once again, the results demonstrate the power of topological methods for this problem: we can now decide whether an equilibrium exists for an arbitrary set of pools—stronger than saying “an equilibrium might not exist.”

2. Background and Preliminaries

2.1. Blockchain Pools

Due to the severe competition for block mining, blockchain miners form coalitions, or pools, to amortize the cost. The point is to share the reward and transaction fee with fellow miners in the same pool in a more continuous manner rather than risking a long period of a solo mining before getting anything back, although the latter indicating a high reward with a probability. The motivation of pooling together in blockchains is well-justified and at goodwill; In a perfect world, every pool and miner is a good citizen and behaves as expected.

However, in the real world, there is nothing preventing one or more pools from sending a spy miner over to other pools. The rationale is also justifiable as follows: if the spy can hide its local mining results, then the target pool will be less competitive and has a lower chance of winning the race of mining blocks. There is a downside of this attack, however: the pool which sends out spies is also less competitive in the sense that its own computational power is cut down. It is then not hard to see that such a dilemma might significantly affect the pooling strategies, for example, whether to launch the infiltrating attack, if so, what is the percentage of computation power should be devoted to the attack, and so on.

It then becomes a natural question to ask whether such attacks among pools might reach a stable status: pools will not launch more attacks or withdraw existing attacks—no more spies moving around, which is called an equilibrium. One of the pioneering works for this matter appeared in (Eyal, 2015), which shows: (i) no-attack is not an equilibrium: all pools are rational and would not miss the opportunity to legally impair other pools; (ii) a blockchain of two pools does have a Nash equilibrium; and (iii) a blockchain of q>2q>2 pools of an equal number of miners also has an equilibrium.

2.2. Game Theory

One key question in game theory is whether there exists an equilibrium among rational players who would not change her decision even if the decision is sub-optimal—usually implying that her utility is not maximal. The main reason for not switching to a higher-return decision is due to the possibility of a “very bad” outcome. Quantitatively, the players calculate the expectation—a weighted average over all the possible decisions in the simplest form—and make their decisions that might not be the absolutely highest-return one.

The well-known Nash equilibrium is one such decision, or the so-called solution concept, in the literature of game theory. Informally, the Nash equilibrium has a two-fold meaning. First, the existence of Nash equilibrium states that if an individual player has a finite number of strategies, then there must exist an equilibrium among a finite number of such players. Second, the Nash equilibrium of multi-player decisions, as any other solution concepts of equilibrium, once reached, would not change unless the assumptions are invalidated. One strong assumption of Nash equilibrium is the isolation of individual players: the players in the game will simply behave as an entity, and no collaboration is allowed. This assumption covers many interesting problems, but obviously, not all. The problems targeted by Nash equilibrium and its variant are called non-cooperative games.

When players are allowed to collaborate, i.e., to form coalitions to work together for higher utility returns, the game then becomes a cooperative game, or better known as a coalitional game in the literature of game theory. Although coalitional games share very similar objectives and challenges as non-cooperative games, the solution concepts look quite different. For instance, the equilibrium counterpart in coalitional games is called a core, which does not always exist. Some approximations to the core do exist, such as the bargaining set, but in general, a coalitional game’s equilibrium point, from existence to calculation, remains a very challenging problem.

2.3. Point-Set Topology

We review the basics in point-set topology in this section. In the literature, it is also called general topology. Point-set topology focuses on the abstraction of relationships among elements in a set, without constraints about the corresponding geometric objects. Because the relationships are all defined, in an axiomatic manner, over the abstraction of elements and sets, the properties and theorems are applied to other branches of topology. A detailed introduction to point-set topology can be found in textbooks such as (Munkres, 2000). The definitions we list below are by no means exhaustive; we only sketch the ones that will be used in later chapters. We assume the readers are familiar with basic set-theoretical terms.

  • Topological Space. Let SS be a set. A set 𝒯\mathcal{T} of subsets of SS is called a topology of SS as long as 𝒯\emptyset\in\mathcal{T} and S𝒯S\in\mathcal{T}. The tuple (𝒯,S)(\mathcal{T},S) is called the topological space of SS. If 𝒯={,S}\mathcal{T}=\{\emptyset,S\}, then 𝒯\mathcal{T} is called a trivial topology of SS. If the context is clear, we also call the topology induced by SS topology SS.

  • Discrete Topological Space. Let 𝒯\mathcal{T} be a topology of set SS. If for any subset SSS^{\prime}\subseteq S we have S𝒯S^{\prime}\in\mathcal{T}, then 𝒯\mathcal{T} is called a discrete topology of SS. Essentially, all the elements in SS are singleton elements in 𝒯\mathcal{T}; also, any combination of those singleton elements are also in 𝒯\mathcal{T}.

  • Open Set. Let 𝒯\mathcal{T} be a topology of SS. Any element O𝒯O\in\mathcal{T} is called an open set. The complement set SOS\setminus O is called a closed set.

  • Continuous Functions. Let ff be a function from topology 𝒜\mathcal{A} to topology \mathcal{B}, f:𝒜f:\mathcal{A}\rightarrow\mathcal{B}. We call ff a continuous function if for every open set OO^{\prime}\in\mathcal{B}, there exists an open set O𝒜O\in\mathcal{A} such that f(O)=Of(O)=O^{\prime}.

  • Injective, Surjective, and Bijective Functions. Let ff be a function from domain set AA to image set BB, f:ABf:A\rightarrow B. If for any aAa\in A, aAa^{\prime}\in A, and aaa\neq a^{\prime}, we have f(a)f(a)f(a)\neq f(a^{\prime}), then ff is injective. If for every bBb\in B, there is an element aAa\in A such that f(a)=bf(a)=b, then ff is surjective. If ff is both injective and surjective, then ff is bijective.

  • Homeomorphism. Let ff be a function from topology 𝒜\mathcal{A} to topology \mathcal{B}, f:𝒜f:\mathcal{A}\rightarrow\mathcal{B}. If ff is both bijective and continuous, then ff is called a homeomorphism of 𝒜\mathcal{A} and \mathcal{B}, and 𝒜\mathcal{A} is called homeomophic to \mathcal{B}.

2.4. Algebraic Topology

In contrast to point-set topology, algebraic topology is more concerned with the underlying geometric realizations and algebraic structures. One approach to study the geometric objects is to decompose them into smaller pieces, the so-called triangulation, which does not necessarily break the object down into triangles but cells. If we restrict the shape of a cell to a polyhedron, i.e., only points and lines, then the geometric object can be depicted as a discrete approximation. Each of these polyhedron cells is then called a simplex, and the whole object is called a simplicial complex. It turns out that these concepts can also be defined in a set-theoretic context, as we will see shortly. A delicate and beautiful theory, namely algebraic topology, has been built upon these simple yet powerful definitions, and this is where we start our review. As point-set topology, we only list the concepts and notations of algebraic topology that will be used in later chapters of this paper; a more complete and rigorous review of algebraic topology can be found in textbooks such as (Munkres, 1984).

  • Simplicial Complex, Simplex. Let SS be a set. Each element vSv\in S is called a vertex. A simplicial complex 𝒞\mathcal{C} is a set of subsets of SS if (i) all the vertices are singleton elements in 𝒞\mathcal{C} and (ii) for every X𝒞X\in\mathcal{C}, all subsets of XX are also in 𝒞\mathcal{C}. Each element σ𝒞\sigma\in\mathcal{C} is called a simplex. In the remaining of the paper, we call a simplicial complex a complex if no ambiguity may arise.

  • Face, Proper Face, Facet. A face τ\tau of simplex σ\sigma if τσ\tau\subseteq\sigma. A proper face τ\tau of simplex σ\sigma if τσ\tau\subset\sigma. A simplex σ\sigma is a facet of a complex 𝒞\mathcal{C} if σ\sigma is not a proper face of any other simplices in 𝒞\mathcal{C}.

  • Vertex Map. Give two complexes 𝒜\mathcal{A} and \mathcal{B}, a vertex map is a function φ:V(𝒜)V()\varphi:V(\mathcal{A})\rightarrow V(\mathcal{B}), where V()V(\cdot) returns the set of vertices. Note that we do not impose any additional properties of the function φ\varphi; For example, it is allowed to map two distinct vertices from 𝒜\mathcal{A} to the same vertex in \mathcal{B}.

  • Simplicial Map. A vertex map φ\varphi from V(𝒜)V(\mathcal{A}) to V()V(\mathcal{B}) is called a simplicial map it carries any simplex from 𝒜\mathcal{A} to a simplex in \mathcal{B}. That is, if {a0,,an}\{a_{0},\ldots,a_{n}\} is a simplex in 𝒜\mathcal{A}, then {φ(a0),,φ(an)}\{\varphi(a_{0}),\ldots,\varphi(a_{n})\} is a simplex in \mathcal{B}.

  • Carrier Map. A carrier map Φ\Phi maps each simplex in complex 𝒜\mathcal{A} to a subset of complex \mathcal{B}, usually called a subcomplex all of which constitute a powerset denoted 22^{\mathcal{B}}. To this end, the carrier map is often written as Φ:𝒜2\Phi:\mathcal{A}\rightarrow 2^{\mathcal{B}}.

  • Dimension of Simplices and Complexes (𝚍𝚒𝚖)(\mathtt{dim}). The dimension of a simplex σ\sigma is defined as the number of its vertices minus 1: 𝚍𝚒𝚖(σ)=|σ|1\mathtt{dim}(\sigma)=|\sigma|-1. The reason why this is so defined is due to the geometric intuition: a two-vertex simplex can be geometrically viewed as a 1-dimensional line segment, a three-vertex simplex can be geometrically viewed as a 2-dimensional triangle, and so on. The dimension of a complex 𝒞\mathcal{C} is defined as the dimension of the highest-dimensional simplices in the complex. That is, 𝚍𝚒𝚖(𝒞)=sup{𝚍𝚒𝚖(σ):σ𝒞}\mathtt{dim}(\mathcal{C})=\text{sup}\{\mathtt{dim}(\sigma):\sigma\in\mathcal{C}\}.

  • Skeleton of Complexes (𝚜𝚔𝚎𝚕k)(\mathtt{skel}^{k}). A kk-skeleton of complex 𝒞\mathcal{C} is a set of simplices in 𝒞\mathcal{C} whose dimension is up to kk. That is, 𝚜𝚔𝚎𝚕k𝒞={σ𝒞:𝚍𝚒𝚖(σ)k}\mathtt{skel}^{k}\mathcal{C}=\{\sigma\in\mathcal{C}:\mathtt{dim}(\sigma)\leq k\}. Following this definition, the vertices of a complex is just its 0-skeleton: V(𝒞)=𝚜𝚔𝚎𝚕0𝒞V(\mathcal{C})=\mathtt{skel}^{0}\mathcal{C}.

  • Connectivity. This is one of the most important topological properties in the sense that two topological spaces cannot be equivalent (i.e., homeomorphic) if they exhibit different levels of connectivity. The most widely-used property, also the one used in later chapters of this paper, is called path-connected, which has a similar definition as graph theory. A complex 𝒞\mathcal{C} is called path-connected if any two vertices can be connected through a sequence of 1-dimensional simplices. If the context is clear, we simply call a complex connected if it is path-connected. Strictly speaking, path-connectivity is at the degree 0 of the connectivity spectrum, namely 0-connectivity. There is higher-degree connectivity: a kk-connectivity indicates that a (k+1)(k+1)-dimensional ball can be continuously mapped to the complex—there is no (k+1)(k+1)-dimensional “holes” in the complex.

  • Subdivision (𝚍𝚒𝚟)(\mathtt{div}). Subdivision refers to finer decomposition of a given simplex, denoted 𝚍𝚒𝚟()\mathtt{div}(\cdot), such that a new set of simplices are generated, and all of them constitute a new complex. Two of the most popular subdivisions are Barycentric subdivision and Chromatic subdivision. Barycentric subdivision (𝙱𝚊𝚛𝚢()\mathtt{Bary}(\cdot)) simply takes the Barycentric center of a specific lower-dimensional skeleton, joins the center to existing vertices, and repeats this procedure on all levels of skeletons. Chromatic subdivision (𝙲𝚑()\mathtt{Ch}(\cdot)) extends the Barycentric subdivision by introducing joint-centers such that the new vertices cannot directly share a lower-dimensional simplex with existing vertices, which turns to be very useful in tasks related to graph coloring.

  • Joining Complexes (*). In addition to dividing existing simplices, we are also able to “glue” together existing complexes through joining. Given two complexes 𝒜\mathcal{A} and \mathcal{B}, the joining of two is a new complex with all the simplices from 𝒜\mathcal{A} and \mathcal{B}. Formally, we say 𝒜={στ:σ𝒜,τ}\mathcal{A}*\mathcal{B}=\{\sigma\cup\tau:\sigma\in\mathcal{A},\tau\in\mathcal{B}\}. This definition can be extended to simplices as well; for example, the join of a vertex and a complex is a new complex with the original vertex, the original complex, and all the edges (i.e., 1-dimensional simplices) between the original vertex and every vertex of the original complex.

3. Equilibrium of Equal Pools

3.1. Problem Formulation

Assume there are qq pools, where q+q\in\mathbb{Z}^{+}, q2q\geq 2. We call the size Two pools are said to be equal if they have the same number of nodes, namely, size. Let the size of each pool be (n+1)(n+1), n+n\in\mathbb{Z}^{+}, n1n\geq 1. Each of qq pools is a thus a nn-simplex, and the input complex \mathcal{I} has qq disconnected nn-simplices, i.e., components: there is no 1- or higher-dimensional simplex among any pair of these components. These nn-simplices are disconnected from each other because they know nothing about others.

Definition 3.1 (Vertex in \mathcal{I}).

Each vertex vv in \mathcal{I} is a tuple (pij,)(p_{i}^{j},\bot), where pijp_{i}^{j} denotes the ii-th pool’s jj-th node (miner) and \bot denotes logical false—the miner does not join another pool other than ii. Evidently, we have 1iq1\leq i\leq q and 0jn0\leq j\leq n.

The output complex is defined as follows. Each vertex vv in 𝒪\mathcal{O} is a tuple (pij,k)(p_{i}^{j},k), where pijp_{i}^{j} is the same as Def. 3.1 and kk denotes the kk-th pool, 1kq1\leq k\leq q. Note that, by such definition, even if pijp_{i}^{j} does not change its originally assigned pool, the vertex will still change the value from \bot to kk.

Definition 3.2 (Auxiliary Operations on Vertices).

By convention, we define two auxiliary operations to return the process identities and their assignments:

𝚗𝚊𝚖𝚎(v)=pij,\displaystyle\mathtt{name}(v)=p_{i}^{j},
𝚟𝚒𝚎𝚠(v)=k.\displaystyle\mathtt{view}(v)=k.

Furthermore, we define the following functions to return the miner’s pool and index information:

𝚙𝚘𝚘𝚕(v)=i,\displaystyle\mathtt{pool}(v)=i,
𝚒𝚗𝚍𝚎𝚡(v)=j.\displaystyle\mathtt{index}(v)=j.

Because our goal is to find an equilibrium, each node pijp_{i}^{j} cannot be intersected by two or more simplices in 𝒪\mathcal{O}. That is, if (pij,k)σ𝒪(p_{i}^{j},k)\in\sigma\in\mathcal{O} and (pij,k)τ𝒪(p_{i}^{j},k)\in\tau\in\mathcal{O}, then σ=τ\sigma=\tau. It follows that the output complex 𝒪\mathcal{O} is a disconnected complex of NN-simplices where N=q(n+1)1N=q\cdot(n+1)-1. For any NN-simplex in σ𝒪\sigma\in\mathcal{O}, we have

{𝚒𝚗𝚍𝚎𝚡(v):vσ}=[n],\{\mathtt{index}(v):v\in\sigma\}=[n],

where [n][n] denotes the set {0,,n}\{0,\ldots,n\}. Similarly, we have

{𝚟𝚒𝚎𝚠(v):vσ}=[q].\{\mathtt{view}(v):v\in\sigma\}=[q].

Now we are ready to define the carrier map Δ\Delta from complex \mathcal{I} to 𝒪\mathcal{O}, that is, Δ:2𝒪\Delta:\mathcal{I}\rightarrow 2^{\mathcal{O}}. Essentially, Δ\Delta “deforms” a simplex σ\sigma\in\mathcal{I} into one possible simplex in a subset of 𝒪\mathcal{O}, i.e., a subcomplex 𝒮𝒪\mathcal{S}\subseteq\mathcal{O} in a monotonic way. By monotinic, we require that adding more vertices or higher-dimensional simplices into σ\sigma would only enlarge the subcomplex 𝒮\mathcal{S}. If we can successfully construct a carrier map Δ\Delta, or prove that such carrier map exists, then we are guaranteed the existence of an equilibrium.

The problem of assigning pools to miners is thus represented as a triple (,𝒪,Δ)(\mathcal{I},\mathcal{O},\Delta). In the remainder of this section, we will discuss how to find or construct Δ\Delta, if it exists.

3.2. Methodology Overview

In the literature of algebraic topology, we usually face two types of problems: (i) To demonstrate that two topological spaces are “equivalent” up to continuous deformation—retaining the topological properties or the so-called topological invariant, and (ii) To prove that two topological spaces cannot be equivalent. For the first type of problem, we can either construct an explicit continuous function to map from the first space to the other or show that both spaces are homeomorphic in the sense that their underlying algebraic structures (e.g., groups, fields) are homomorphic. For the second type of problem, we are left with the only option of showing that the underlying algebraic structures are not homomorphic.

Our strategy to find the equilibrium for equal pools is as follows.

  1. (1)

    We will construct a continuous function, i.e., a simplicial map φ\varphi from a specific nn-simplex σ\sigma\in\mathcal{I} to a NN-simplex τ𝒪\tau\in\mathcal{O}. That is, φ:𝒪\varphi:\mathcal{I}\rightarrow\mathcal{O}.

  2. (2)

    We will show that all the nn-simplices in \mathcal{I} are homeomorphic, such that the simplicial map is applicable to all the simplices in \mathcal{I}.

  3. (3)

    Finally, we will prove that for any σ\sigma\in\mathcal{I}, the corresponding simplices in 𝒪\mathcal{O} constitute a connected subcomplex:

    σφ(σ)𝒪.\displaystyle\bigcup_{\sigma\in\mathcal{I}}\varphi(\sigma)\subseteq\mathcal{O}.

3.3. Simplicial Map from \mathcal{I} to 𝒪\mathcal{O}

First, we will rephrase the well-known results of game-theoretic blockchains in the context of algebraic topology. Eyal (Eyal, 2015) showed that a no-attack strategy is not a Nash equilibrium in blockchain pools. That is to say, in the output complex 𝒪\mathcal{O}, a connected component, which is itself a simplex, cannot have all of its nodes staying in their originally assigned pool. We thus have our first constraint on the simplices in 𝒪\mathcal{O}, as stated in the following lemma.

Lemma 3.3.

For any simplex τ𝒪\tau\in\mathcal{O}, there exists a vertex vτv\in\tau such that 𝚗𝚊𝚖𝚎(v)=pij\mathtt{name}(v)=p_{i}^{j} and 𝚟𝚒𝚎𝚠(v)i\mathtt{view}(v)\neq i.

Proof.

The result is a straightforward implication of the result in (Eyal, 2015). More specifically, this can be easily verified by contradiction. If every vertex vτv\in\tau satisfy the following two conditions: 𝚗𝚊𝚖𝚎(v)=pij\mathtt{name}(v)=p_{i}^{j} and 𝚟𝚒𝚎𝚠(v)=i\mathtt{view}(v)=i, then we know that no node joins another pool in the final pool assignment. However, this is not possible because a “stay-at-pool” strategy is not a Nash equilibrium111Indeed, here we assume a noncooperative game among individual miners. A more general and harder problem is to consider the coalition among the miners in the same pool, essentially forming a coalitional game model. We will discuss solution concepts and solvability challenges of coalitional pooling strategies in §4. according to (Eyal, 2015), leading to a contradiction. ∎

Recall that a simplicial map is an extended vertex map: not only does the map apply to 0-simplices (i.e., vertices), but also to any kk-simplices, 0kn0\leq k\leq n. That is, we need to show that there exists a map from \mathcal{I} to 𝒪\mathcal{O} such that any simplex of dimension dd has a corresponding dd-dimensional simplex in 𝒪\mathcal{O}. Formally, we will have the following result.

Lemma 3.4.

There exists a simplicial map from \mathcal{I} to 𝒪\mathcal{O}.

Proof.

We prove this lemma by constructing a map by induction. We will first show that a vertex map exists. Then, we will assume such a map exists for dimension kk, and finally, show that a new map exists for dimension (k+1)(k+1) based on the kk-dimensional map.

We define a map φ0:𝚜𝚔𝚎𝚕0𝚜𝚔𝚎𝚕0𝒪\varphi_{0}:\mathtt{skel}^{0}\mathcal{I}\rightarrow\mathtt{skel}^{0}\mathcal{O} as follows. Recall that 𝚜𝚔𝚎𝚕𝚔\mathtt{skel^{k}} indicates the set of simplices of dimension of up to kk; therefore, 𝚜𝚔𝚎𝚕0𝒞\mathtt{skel}^{0}\mathcal{C} simply represents the set of vertices of complex 𝒞\mathcal{C}. Recall that the dimension of 𝒪\mathcal{O} is much larger that of \mathcal{I}:

𝚍𝚒𝚖(𝒪)=N=q(n+1)1>n=𝚍𝚒𝚖().\mathtt{dim}(\mathcal{O})=N=q\cdot(n+1)-1>n=\mathtt{dim}(\mathcal{I}).

Therefore, it is essential for φ0\varphi_{0} to map qq simplices from \mathcal{I} to the same simplex in 𝒪\mathcal{O}. More specifically, we need to construct the map for all the vertices of qq simplices in \mathcal{I}. Without loss of generality, in the following we will work on the 0-th nn-simplex, namely σ0\sigma_{0}, such that φ0(𝚜𝚔𝚎𝚕0σ0)𝒪\varphi_{0}(\mathtt{skel}^{0}\sigma_{0})\in\mathcal{O}.

Recall that by definition, the output complex 𝒪\mathcal{O} comprises NN-simplices with all the possible pool assignments as long as the miners are distinct. We define the simplicial map φ0:στ\varphi_{0}:\sigma\mapsto\tau based on the following two conditions:

  1. (1)

    {𝚗𝚊𝚖𝚎(u):uσ}={𝚗𝚊𝚖𝚎(v):vτ}\{\mathtt{name}(u):u\in\sigma\}=\{\mathtt{name}(v):v\in\tau\}

  2. (2)

    𝚟𝚒𝚎𝚠(u)=(𝚟𝚒𝚎𝚠(v)+1)𝚖𝚘𝚍q\mathtt{view}(u)=(\mathtt{view}(v)+1)\mathtt{\;mod\;}q

Condition (1) ensures that the simplicial map φ\varphi is name preserving, a requirement of any protocol that can solve the problem. Condition (2) guarantees that the resulting simplex is valid, according to Lemma 3.3. Intuitively, all the vertices in σ0\sigma_{0} move the “next” pool in the loop of qq simplices. Note that this map is well-defined because all the pools are of equal size, as part of the assumption. It turns out that other simplicial maps φk\varphi_{k}, 1k<q1\leq k<q can be similarly constructed as φ0\varphi_{0}, and they are all well-defined due to the equal cardinality of pools. Therefore, σk\forall\sigma_{k}, 0k<q0\leq k<q, we can always use φ0\varphi_{0} to map all the vertices of qq simplices into the same simplex in 𝒪\mathcal{O}. We have thus successfully built the base for the induction, i.e., 𝚍𝚒𝚖(𝚜𝚔𝚎𝚕0)=0\mathtt{dim}(\mathtt{skel}^{0}\mathcal{I})=0.

It remains to show that higher-dimensional faces of σ\sigma\in\mathcal{I} and τ𝒪\tau\in\mathcal{O} can also be mapped through φ\varphi. Suppose we have found a simplicial map φd1:𝚜𝚔𝚎𝚕d1σ𝚜𝚔𝚎𝚕d1τ\varphi_{d-1}:\mathtt{skel}^{d-1}\sigma\rightarrow\mathtt{skel}^{d-1}\tau, 1dn1\leq d\leq n, which is indeed the case for 0-dimension as shown above, we will need to show a dd-dimensional varient of the simplical map φd\varphi_{d} can map 𝚜𝚔𝚎𝚕dσ\mathtt{skel}^{d}\sigma to 𝚜𝚔𝚎𝚕dτ\mathtt{skel}^{d}\tau. Let σ\sigma and τ\tau be two (d1)(d-1)-dimensional simplices in \mathcal{I} and 𝒪\mathcal{O}, respectively. Because d1<𝚍𝚒𝚖()=n<𝚍𝚒𝚖(𝒪)=Nd-1<\mathtt{dim}(\mathcal{I})=n<\mathtt{dim}(\mathcal{O})=N, there must exist two vertices uu\in\mathcal{I} and v𝒪v\in\mathcal{O}, respectively, such that uσu\not\in\sigma and vτv\not\in\tau. We construct a dd-dimensional simplex σ\sigma^{\prime} as the joining of uu and σ\sigma, and do that for vv and τ\tau in a similar fashion:

σ={u}σ,\displaystyle\sigma^{\prime}=\{u\}*\sigma,
τ={v}τ.\displaystyle\tau^{\prime}=\{v\}*\tau.

Recall that * denotes the join operation between two simplices. Evidently, we will have σ𝚜𝚔𝚎𝚕d\sigma^{\prime}\in\mathtt{skel}^{d}\mathcal{I} and τ𝚜𝚔𝚎𝚕d𝒪\tau^{\prime}\in\mathtt{skel}^{d}\mathcal{O}, for which the map φd\varphi_{d} can be applied.

Finally, we define φ\varphi as the composition of a series of join operations and lower-dimensional maps (φ0,,φn1)(\varphi_{0},\ldots,\varphi_{n-1}). By construction, φ\varphi is a simplicial map from \mathcal{I} to 𝒪\mathcal{O}. ∎

Intuitively speaking, Protocol 3.4 states that it is possible to merge multiple initial pool-local views into a coherent view in the final pool assignment. Next, we will show that this property is invariant as long as the pools are kept equal in the input.

3.4. Homeomorphic Simplices in \mathcal{I}

In this section, we will show that all the nn-simplices in \mathcal{I} are homeomorphic, meaning that all these components are essentially equivalent in the sense that one component can deform into another with continuous functions. This property will be crucial when we prove that more than one equilibrium must exist in an equal-pool blockchain network later in §3.6. The remainder of this section will demonstrate that if \mathcal{I} is an equal-pool blockchain network, then any two pools are homeomorphic. Formally, we will prove the following lemma.

Lemma 3.5.

Suppose \mathcal{I} is an equal-pool blockchain’s input complex. For any σ,τ\sigma,\tau\in\mathcal{I}, σ\sigma and τ\tau are homeomorphic.

Proof.

Here we overuse the Greek letters, e.g., σ\sigma and τ\tau, to represent both the simplices and topological spaces. In the latter case, the discrete space induced by the vertices of the simplex. That is, topological space σ\sigma consists of all the subsets of vertices in σ\sigma:

𝒯σ=2𝚜𝚔𝚎𝚕0σ.\mathcal{T}_{\sigma}=2^{\mathtt{skel}^{0}\sigma}.

If the context is clear, we simply write σ\sigma to indicate its topological space 𝒯σ\mathcal{T}_{\sigma}.

We need to show that there is a function between two topological spaces, i.e., f:στf:\sigma\rightarrow\tau, such that:

  1. (1)

    ff is bijective

  2. (2)

    ff is continuous

  3. (3)

    f1f^{-1} is continuous

Let UσU\subseteq\sigma be any subset. Denote its cardinality |U|=m+1|U|=m+1, 1mn-1\leq m\leq n, then UU can be rewritten as

U={u0,,um},U=\{u_{0},\ldots,u_{m}\},

where U=U=\emptyset if m<0m<0. For each element uUu\in U, uu is a vertex defined in Def. 3.1. Recall that 𝚒𝚗𝚍𝚎𝚡(u)\mathtt{index}(u) returns the local index of vertex uu in the pool identified by 𝚙𝚘𝚘𝚕(u)\mathtt{pool}(u). We extend the definition of 𝚒𝚗𝚍𝚎𝚡\mathtt{index} on a single vertex defined in Def. 3.2 to a set:

𝚒𝚗𝚍𝚎𝚡(U)={𝚒𝚗𝚍𝚎𝚡(u):uU}.\mathtt{index}(U)=\{\mathtt{index}(u):u\in U\}.

Evidently, since all pools are equal in size by assumption, for any 𝚒𝚗𝚍𝚎𝚡(U)\mathtt{index}(U), we can always have a 𝚒𝚗𝚍𝚎𝚡(V)\mathtt{index}(V), where VτV\subseteq\tau, such that 𝚒𝚗𝚍𝚎𝚡(V)=𝚒𝚗𝚍𝚎𝚡(U)\mathtt{index}(V)=\mathtt{index}(U). This is exactly the condition based on which we define ff:

f:UV𝚒𝚏𝚏𝚒𝚗𝚍𝚎𝚡(U)=𝚒𝚗𝚍𝚎𝚡(V).f:U\mapsto V\mathtt{\;iff\;}\mathtt{index}(U)=\mathtt{index}(V).

Now, we need to verify that ff defined above is bijective and continuous in both directions.

To show that ff is bijective, we need to show that ff is both injective and surjective. For any two subsets of σ\sigma, U1U_{1} and U2U_{2}, U1U2U_{1}\neq U_{2}. Without loss of generality, suppose uU1u\in U_{1} and uU2u\not\in U_{2}. Then, we will have a vertex vV1=f(U1)v\in V_{1}=f(U_{1}) such that 𝚒𝚗𝚍𝚎𝚡(v)=𝚒𝚗𝚍𝚎𝚡(u)\mathtt{index}(v)=\mathtt{index}(u). Since uU2u\not\in U_{2}, we know vV2=F(U2)v\not\in V_{2}=F(U_{2}), meaning that V1V2V_{1}\neq V2. Therefore, we just show:

U1U2f(U1)f(U2),U_{1}\neq U_{2}\implies f(U_{1})\neq f(U_{2}),

thus ff is injective. Suppose VV is any subset of τ\tau, we will show that there must be a domain UσU\in\sigma whose image comprises VV—if this is true, then ff is surjective. This can be trivially verified: because pools are all equal and the miners within each pool are following the same naming convention (cf. Def. 3.2), then for any set of indices 𝚒𝚗𝚍𝚎𝚡(V)\mathtt{index}(V), there must be a subset UσU\subseteq\sigma such that 𝚒𝚗𝚍𝚎𝚡(U)=𝚒𝚗𝚍𝚎𝚡(V)\mathtt{index}(U)=\mathtt{index}(V), rendering ff a surjective function. Since ff is both injective and surjective, we know ff is a bijective function.

Next, we show that ff is a continuous function. That is to say, for any open set VτV\subseteq\tau, we have an open set UσU\subseteq\sigma such that f(U)=Vf(U)=V. Recall that an open set is defined as any subset included in the topological space. A simplex, by definition, has all of its subsets as open sets222In topology, these open sets are also closed sets since they are all complementary to the open sets. We do not explicitly define closed sets in the main text since we do not need closed sets in our proofs. in the induced discrete topological space. The continuity property can be similarly demonstrated as we proved the covering property (i.e., ff is surjective) before. The indices of open set VV is 𝚒𝚗𝚍𝚎𝚡(V)\mathtt{index}(V). Because pools are all equal and following the same naming convention, there must be an open set UσU\subseteq\sigma such that 𝚒𝚗𝚍𝚎𝚡(U)=𝚒𝚗𝚍𝚎𝚡(V)\mathtt{index}(U)=\mathtt{index}(V).

Finally, we need to show that the inverse function f1:VUf^{-1}:V\rightarrow U is also continuous. We skip the detailed proof here because it follows exactly the same reasoning as we proved the continuity of f:UVf:U\rightarrow V.

Given that ff is both bijective and continuous, and f1f^{-1} is also continuous, we have found a homeomorphim ff for σ\sigma and τ\tau. Since both σ\sigma and τ\tau are arbitrary simplices of \mathcal{I}, we conclude that all simplices in \mathcal{I} are homeomorphic. ∎

3.5. Connected Subcomplex in 𝒪\mathcal{O}

In the previous two subsections, we have shown that (i) there exists a simplicial map from the input complex to the output complex and (ii) all the simplices in the input complex are homeomorphic. The last piece for our main theorem, which will be presented in §3.6, is demonstrating that the mapped simplices in the output complex indeed constitute a connected subcomplex. Formally, we need to prove the following lemma.

Lemma 3.6.

Let φ:𝒪\varphi:\mathcal{I}\rightarrow\mathcal{O} be the simplicial map defined in Lemma 3.4. We define the union of the mapped simplices as 𝒮\mathcal{S}:

𝒮=σφ(σ),\mathcal{S}=\bigcup_{\sigma\in\mathcal{I}}\varphi(\sigma),

then 𝒮𝒪\mathcal{S}\subseteq\mathcal{O} and SS is connected.

Proof.

The first part of the proof is trivial. We need to show that for any face τ𝒮\tau\in\mathcal{S}, then τ𝒪\tau\in\mathcal{O}. Because 𝒮\mathcal{S} is a union of φ(σ)\varphi(\sigma), it is suffice to show that φ(σ)𝒪\varphi(\sigma)\in\mathcal{O}. This is evidently true because that is how φ\varphi is constructed in Lemma 3.4.

The second part, the connectedness of 𝒮\mathcal{S}, needs more work, though. Recall that φ\varphi is a composition of n+1n+1 maps each of which corresponds to a specific dimension kk, 0kn0\leq k\leq n. Therefore, by construction, each φ(σ)\varphi(\sigma) is (n1)(n-1) connected: we can always have a nn-dimensional disk that is homeomorphic to φ(σ)\varphi(\sigma). It remains to show that there is at least one path connecting two simplices in 𝒮\mathcal{S}. We will prove this by contradiction.

Suppose there does not exist a path between two simplices τ1𝒮\tau_{1}\in\mathcal{S} and τ2𝒮\tau_{2}\in\mathcal{S}. Then τ1\tau_{1} and τ2\tau_{2} cannot coexist in the same simplex of 𝒪\mathcal{O} because all the simplices in 𝒪\mathcal{O} are NN-dimensional: missing a path between τ1\tau_{1} and τ2\tau_{2} would have disqualified any of the two serving in the same simplex in 𝒪\mathcal{O}. Let φ(σ1)=τ1\varphi(\sigma_{1})=\tau_{1} and φ(σ2)=τ2\varphi(\sigma_{2})=\tau_{2}. It follows that σ1\sigma_{1} and σ2\sigma_{2} are not mapped into the same simplex in 𝒪\mathcal{O} by φ\varphi. However, every φ\varphi guarantees that

{𝚗𝚊𝚖𝚎(u):uσ}={𝚗𝚊𝚖𝚎(v):vτ},\{\mathtt{name}(u):u\in\sigma\}=\{\mathtt{name}(v):v\in\tau\},

as shown in Lemma 3.4. This means that a fixed φ\varphi must map all the qq simplices in \mathcal{I} into the same NN-dimensional simplex in 𝙾\mathtt{O}, leading to a contradiction. ∎

3.6. Equilibrium of Equal-Pool Blockchains

We are now ready to state the main result for equal-pool blockchains. Specifically, we will show that there is a protocol to continuously transform the input complex into the output complex.

Theorem 3.7.

If all blockchain pools are equal, then there exist protocols to allow all miners reach equilibrium.

Proof.

By Lemma 3.4, the simplicial map φ\varphi maps simplices {σ1,,σq}\{\sigma_{1},\ldots,\sigma_{q}\} in \mathcal{I} into the same simplex τ\tau in 𝒪\mathcal{O}. However, because σi\sigma_{i}’s are disconnected to each other, 1iq1\leq i\leq q, the corresponding topological space cannot continuously deform to the topological space induced by τ\tau. That is, there does not exist a protocol induced by φ\varphi for miners to reach equilibrium.

To fix the disconnected components, we can limit φ\varphi to a subset of its domain—a specific simplex in \mathcal{I}. Without loss of generality, let the specific simplex be the first one out of the qq simplices σ1\sigma_{1}:

π=φ|σ1.\pi=\varphi|_{\sigma_{1}}.

According to Lemma 3.5, all σi\sigma_{i}, 1iq1\leq i\leq q are homeomorphic. Therefore, up the continuous transformation, φ\varphi can be represented by qq times of π\pi:

πq(σ1)=φ(σ),\pi^{q}(\sigma_{1})=\varphi(\sigma),

where

πq()=ππq().\pi^{q}(\cdot)=\underbrace{\pi\circ\ldots\circ\pi}_{q}(\cdot).

Note that σ1\sigma_{1} is connected by definition, which is a nn-dimensional simplex. Now, we have a map π:σ1𝒪\pi:\sigma_{1}\rightarrow\mathcal{O}. By Lemma 3.6, we know π(σ1)𝒮𝒪\pi(\sigma_{1})\in\mathcal{S}\subseteq\mathcal{O} is connected. Therefore, both the domain and image sets of π\pi are connected. Because π\pi is deduced from φ\varphi that is a simplicial map, π\pi must be a simplicial map as well. A simplicial map between two connected complexes is obviously continuous. Thus a protocol must exist to transform the input complex into the output complex. ∎

Theorem 3.7 and its proof shows that for any blockchain with equal pools, there are at least qq equilibria because π\pi can be defined on up to qq distinct simplices in \mathcal{I}. This is a stronger result than (Eyal, 2015) in the sense that the lower bound of the number of equilibria is elevated from one to qq. Nonetheless, it is arguable that equal pools might not be a practical assumption in real-world blockchain practices. To that end, we will switch our focus on the pooling strategies where the sizes are arbitrary.

4. Solvability of Arbitrary Pools

If we relax the requirement of equal pools in blockchains, we cannot any more reason about the equilibrium following the techniques in §3: Lemma 3.5 becomes invalid. To see this, consider one of the conditions for a homeomorphism ff; ff must be bijective between σ\sigma and τ\tau. However, if not all pools have the same size, then there must be two simplices σ\sigma and τ\tau such that:

|𝚜𝚔𝚎𝚕0σ||𝚜𝚔𝚎𝚕0τ|.|\mathtt{skel}^{0}\sigma|\neq|\mathtt{skel}^{0}\tau|.

Therefore, there cannot exist a bijective function between two sets of different cardinalities. In the remainder of this section, we will show that a general blockchain-pooling problem does not have an equilibrium. As before, we start with the problem formulation.

4.1. Problem Formulation

Assume there are qq pools, where q+q\in\mathbb{Z}^{+}, q2q\geq 2. Let {σ1,,σq}\{\sigma_{1},\ldots,\sigma_{q}\} denote such qq pools. At least two pools have distinct numbers of miners. Without loss of generality, let |σ1||σ2||\sigma_{1}|\neq|\sigma_{2}|. In general, we pose no requirement on the equality of cardinality of other pools. To start with an easier problem, we assume

|σ1|=n+1>m+1=|σk|, 2kq.|\sigma_{1}|=n+1>m+1=|\sigma_{k}|,\;2\leq k\leq q.

That is, we have one nn-simplex and (q1)(q-1) lower-dimensional mm-simplices in the blockchain pools. Moreover, all of these qq simplices are disconnected pair-wise.

Note that although this condition makes the problem easier than the original one, the condition is strong enough to invalidate Lemma 3.5. Also, if we can show that this “easier” problem does not have an equilibrium, neither does the original problem.

As the equal-pool problem, each vertex vv in \mathcal{I} is a tuple (pij,)(p_{i}^{j},\bot), where pijp_{i}^{j} denotes the ii-th pool’s jj-th node (miner) and \bot denotes logical false—the miner does not join another pool other than ii. Evidently, we have 1iq1\leq i\leq q and 0jn0\leq j\leq n.

The output complex is defined similarly. Each vertex vv in 𝒪\mathcal{O} is a tuple (pij,k)(p_{i}^{j},k), where pijp_{i}^{j} is the same as input complex and kk denotes the kk-th pool, 1kq1\leq k\leq q. Note that, by such definition, even if pijp_{i}^{j} does not change its originally assigned pool, the vertex will still change the value from \bot to kk.

Because we are concerned with an equilibrium, each node pijp_{i}^{j} cannot be intersected by two or more simplices in 𝒪\mathcal{O}. That is, if (pij,k)σ𝒪(p_{i}^{j},k)\in\sigma\in\mathcal{O} and (pij,k)τ𝒪(p_{i}^{j},k)\in\tau\in\mathcal{O}, then σ=τ\sigma=\tau. It follows that the output complex 𝒪\mathcal{O} is a disconnected complex of NN-simplices where N=n+(q1)(m+1)N=n+(q-1)\cdot(m+1). For any NN-simplex in σ𝒪\sigma\in\mathcal{O}, we have

{𝚟𝚒𝚎𝚠(v):vσ}=[q].\{\mathtt{view}(v):v\in\sigma\}=[q].

However, the 𝚒𝚗𝚍𝚎𝚡()\mathtt{index}(\cdot) would look different for σ1\sigma_{1} and other simplices:

{𝚒𝚗𝚍𝚎𝚡(σx)}={[n],x=1,[m],otherwise.\displaystyle\{\mathtt{index}(\sigma_{x})\}=\begin{cases}[n],&x=1,\\ [m],&\text{otherwise}.\end{cases}

We can define the carrier map Δ\Delta from complex \mathcal{I} to 𝒪\mathcal{O}, similarly to the equal-pool counterpart. The monotonic property of Δ\Delta still holds in this arbitrary-pool problem. We will show that such Δ\Delta cannot exist due to some topological invariant in the remainder of this section.

4.2. Methodology Overview

Our approach to demonstrate that an equilibrium does not exist is built upon the findings in the equal-pool counterpart presented in §3. Specifically, we will split the qq simplices in the input complex \mathcal{I} into two subcomplexes: (i) The first subcomplex 1\mathcal{I}_{1} consists of only one simplex σ1\sigma_{1}; (ii) The second subcomplex 2\mathcal{I}_{2} consists of (q1)(q-1) mm-simplices: {σ2,,σq}\{\sigma_{2},\ldots,\sigma_{q}\}. Then, according to Theorem 3.7, 2\mathcal{I}_{2} can lead to at least (q1)(q-1) equilibria, and we can rewrite the simplicial maps with a power of limited maps. It remains to show that the extended problem with =12\mathcal{I}=\mathcal{I}_{1}\cup\mathcal{I}_{2} has no way to be mapped to a connected simplex in 𝒪\mathcal{O}.

The main technique we use to demonstrate the impossibility is reduction. That is, we reduce a well-known problem, the kk-set agreement problem, whose solution does not exist for certain conditions that are satisfied by the equilibrium of an arbitrary-pool blockchain. Specifically, we will show that we can “simulate” the execution of the kk-set agreement procedure by calling the operations in an arbitrary-pool blockchain. Indeed, if we are able to do so, that means we would be able to solve the kk-set agreement problem, which is not possible. As a result, a protocol for reaching equilibrium in an arbitrary-pool network cannot exist.

4.3. Binary Partition: Topology of 1\mathcal{I}_{1} and 2\mathcal{I}_{2}

We start our analysis with a simpler problem where only one simplex σ1\sigma_{1} has a different dimension than other q1q-1 simplices in the input complex. Without loss of generality, we assume =12\mathcal{I}=\mathcal{I}_{1}\cup\mathcal{I}_{2}, and 1={σ1}\mathcal{I}_{1}=\{\sigma_{1}\} and 2={σk:2kq}\mathcal{I}_{2}=\{\sigma_{k}:2\leq k\leq q\}. Moreover, we assume 𝚍𝚒𝚖(1)=𝚍𝚒𝚖(σ1)=n\mathtt{dim}(\mathcal{I}_{1})=\mathtt{dim}(\sigma_{1})=n, 𝚍𝚒𝚖(2)=𝚍𝚒𝚖(σk)=m\mathtt{dim}(\mathcal{I}_{2})=\mathtt{dim}(\sigma_{k})=m, and n>m>0n>m>0.

We then construct limited simplicial maps π1\pi_{1} and π2\pi_{2} for 1\mathcal{I}_{1} and 2\mathcal{I}_{2}, respectively. As before, we have the following equations:

{π1=φ|σ1,π2=φ|σ2==φ|σq.\displaystyle\begin{cases}\pi_{1}=\varphi|_{\sigma_{1}},\\ \pi_{2}=\varphi|_{\sigma_{2}}=\ldots=\varphi|_{\sigma_{q}}.\end{cases}

As a result, the mapped simplices can be similarly partitioned into two parts 𝒪=𝒪1𝒪2\mathcal{O}=\mathcal{O}_{1}\cup\mathcal{O}_{2}, where

{𝒪1={π1(σ1)},𝒪2={π2q1(σ2)}.\displaystyle\begin{cases}\mathcal{O}_{1}=\{\pi_{1}(\sigma_{1})\},\\ \mathcal{O}_{2}=\{\pi_{2}^{q-1}(\sigma_{2})\}.\end{cases}

We can write 𝒪2\mathcal{O}_{2} as a power of π2\pi_{2} because all the σk\sigma_{k}, 2kq2\leq k\leq q are homeomorphic, as discussed before (cf. Lemma 3.5). It turns out that we can expect two distinct sets of outcomes in the output complex. The problem can now be represented as a triple (12,𝒪1𝒪2,π1π2q1)(\mathcal{I}_{1}\cup\mathcal{I}_{2},\mathcal{O}_{1}\cup\mathcal{O}_{2},\pi_{1}\circ\pi_{2}^{q-1}). We define an auxiliary operation to return the partition of a specific simplex:

𝚙𝚊𝚛𝚝(σ)=i\mathtt{part}(\sigma)=i

such that 𝚍𝚒𝚖(Ii)=𝚍𝚒𝚖(σ)\mathtt{dim}(I_{i})=\mathtt{dim}(\sigma).

4.4. Ternary and Higher-order Partitions

We can naturally extend the partition techniques from two to three or more. As we will show later in §4.5, for k3k\geq 3, all the kk-set agreement problems are not decidable to have a protocol. In the following, we assume 3kq3\leq k\leq q: there are at least three distinct pools in terms of their sizes. Note that we also require that the size of the largest pool is at least kk, i.e., n+1kn+1\geq k, because otherwise there cannot exist kk distinct sizes

As in the case of binary partition, we can similarly define =12k\mathcal{I}=\mathcal{I}_{1}\cup\mathcal{I}_{2}\ldots\cup\mathcal{I}_{k}. We denote the cardinality, i.e., pool size, of partitioned input complex as:

|1|=i1,|2|=i2,,|k|=ik,|\mathcal{I}_{1}|=i_{1},\;|\mathcal{I}_{2}|=i_{2},\;\ldots,\;|\mathcal{I}_{k}|=i_{k},\;

where 1x<ykixiy1\leq x<y\leq k\implies i_{x}\neq i_{y}, and require

κ=1kiκ=q, 1κk.\displaystyle\sum_{\kappa=1}^{k}i_{\kappa}=q,\;1\leq\kappa\leq k.

We use KK to denote the set of pool sizes:

K={i1,,ik}.K=\{i_{1},\;\ldots,\;i_{k}\}.

It should be noted that kk partitions of the input complex do not change \mathcal{I}’s topological properties. There are still qq components in \mathcal{I}, each of which is a iκi_{\kappa}-dimensional simplex where iκKi_{\kappa}\in K. Furthermore, these qq simplices are disconnected since the miners are in distinct pools and learn nothing from other pools initially.

Having partitioned input complex based on their cardinalities, we are ready to construct the output complex the corresponding carrier maps. The partitioned simplicial maps for kk-distinct-pool are a natural extension to the binary partition we discuss in §4.3. Recall that all simplices are homeogeneous for a specific dimension iκKi_{\kappa}\in K. Therefore, the compounded simplicial map can be written as

Oκ=πκiκ(Iκ), 1κk.O_{\kappa}=\pi^{i_{\kappa}}_{\kappa}(I_{\kappa}),\;1\leq\kappa\leq k.

The task then can be expressed in the following triple:

(1κkκ,1κk𝒪κ,1κkπκiκ),\displaystyle\left(\bigcup_{1\leq\kappa\leq k}\mathcal{I}_{\kappa},\bigcup_{1\leq\kappa\leq k}\mathcal{O}_{\kappa},\prod_{1\leq\kappa\leq k}\pi^{i_{\kappa}}_{\kappa}\right),

where we use multiplication to denote map composition:

1κkπκiκ=π1π1i1πκπκiκπkπkikq.\displaystyle\prod_{1\leq\kappa\leq k}\pi^{i_{\kappa}}_{\kappa}=\underbrace{\overbrace{\pi_{1}\circ\ldots\circ\pi_{1}}^{i_{1}}\circ\ldots\overbrace{\pi_{\kappa}\circ\ldots\circ\pi_{\kappa}}^{i_{\kappa}}\circ\ldots\overbrace{\pi_{k}\circ\ldots\circ\pi_{k}}^{i_{k}}}_{q}.

4.5. Relations with kk-set Agreement

4.5.1. The kk-set Agreement Problem

This section briefly reviews the classical kk-set agreement (KSA) problem and its important decidability implications in the literature. In the following sections, we will then use the KSA as a base model and reduce it to the kk-distinct-pool (KDP) problem in blockchains. In the literature of computation theory, the reduction is also called “simulation,” in the sense that a solution protocol for the targeting problem can be wrapped up as a solution for the base problem whose decidability is already known.

Definition 4.1 (kk-set agreement task.).

A task of kk-set agreement is a triple (,𝒪,Δ)(\mathcal{I},\mathcal{O},\Delta), where the input \mathcal{I} is comprised of multiple nn-simplices, the output 𝒪\mathcal{O} is a complex of kk pairwise-disconnected simplices each of which is connected by itself, and the carrier map Δ\Delta mapping each nn-simplex in \mathcal{I} to a subcomplex in 𝒪\mathcal{O}. The initial views of vertices in \mathcal{I} are taken from a set VinV^{in}, the final views of vertices in 𝒪\mathcal{O} are taken from a set VoutV^{out}, whose cardinality is kk, i.e., |Vout|=k|V^{out}|=k. While the values in {𝚟𝚒𝚎𝚠(σ):σ}\{\mathtt{view}(\sigma):\sigma\in\mathcal{I}\} can be arbitrary, the output complex is required to have exactly kk simplices, each of which takes a distinct value from VoutV^{out}.

Intuitively, KSA requires that the outcome can have up to kk distinct values for a group of (n+1)(n+1) members. It is a generalization of the well-known consensus problem where only one value can be chosen by the members. Indeed, the consensus problem is a degenerate of KSA where k=1k=1. Although KSA may seem easier than the consensus problem, KSA is far from trivial under the regular computation models. A computation model is comprised of multiple facets, such as failure models (e.g., crash failures, Byzantine failures), communication models (e.g., shared memory, message passing), and timing models (e.g., synchronous processes, asynchronous processes). The literature (Herlihy et al., 2013) showed that a model is capable of solving a kk-set agreement task only when k2k\leq 2. To make this paper self-contained, we restate it here as the following lemma.

Lemma 4.2 (KSA is solvable if k2k\leq 2).

A model is capable of solving a kk-set agreement task only if k2k\leq 2.

Proof.

See Theorem 5.6.14 in (Herlihy et al., 2013). ∎

In the remainder of this section, we call a KSA problem with k=2k=2 and k=3k=3 2SA and 3SA, respectively. Similarly, we call a KDP problem with k=2k=2 and k=3k=3 2DP and 3DP, respectively. In §4.5.2, we will show that a 2SA protocol can reduce to a 2DP protocol, which means a blockchain with two distinct pool sizes can reach an equilibrium. In §4.5.3, we will show that a 3DP protocol can reduce to a 3SA protocol, meaning that a blockchain with three or more distinct pool sizes does not have an equilibrium.

4.5.2. 2SA reduces to 2DP

We first provide the basic concepts and notations of computing theory in the context of reduction, much of which was elaborated in (Herlihy et al., 2013).

A task is a problem to be solved. Examples of tasks include finding the equilibrium of equal pools discussed in §3.1. For completeness, we formally define the task here.

Definition 4.3 (Task).

A task is a triple (,𝒪,Δ(\mathcal{I},\mathcal{O},\Delta), where \mathcal{I} is the input complex comprising all the possible input simplices, 𝒪\mathcal{O} is the output complex comprising all the valid results represented by subcomplexes, and Δ\Delta is a carrier map between the input and output complexes and satisfies monotonic property (i.e., closed on inclusion relationship):

Δ:2𝒪.\Delta:\mathcal{I}\rightarrow 2^{\mathcal{O}}.

A protocol is an algorithm that solves the task, i.e., a procedure to reach a subset of the valid subcomplex in 𝒪\mathcal{O}. A protocol also takes the same input complex \mathcal{I}, and follow the application-specific procedure to end up in a protocol complex. The course of “following the application-specific procedure” is abstracted also by a carrier map, namely Ξ\Xi. Formally, a protocol is defined as follows.

Definition 4.4 (Protocol).

A protocol is a triple (,𝒫,Ξ)(\mathcal{I},\mathcal{P},\Xi), where \mathcal{I} is the input complex, 𝒫\mathcal{P} is a complex representing all the possible final results according to the algorithm, and Ξ\Xi is a carrier map:

Ξ:2𝒫.\Xi:\mathcal{I}\rightarrow 2^{\mathcal{P}}.

We say that a protocol solves a task if the results in 𝒫\mathcal{P} are encompassed by the expected outcomes 𝒪\mathcal{O}, as stated in the following.

Definition 4.5.

A protocol (,𝒫,Ξ)(\mathcal{I},\mathcal{P},\Xi) solves a task (,𝒪,Δ(\mathcal{I},\mathcal{O},\Delta if there is a simplicial map δ\delta

δ:𝒫𝒪\delta:\mathcal{P}\rightarrow\mathcal{O}

such that for any simplex σ\sigma\in\mathcal{I} the following is satisfied333This property is called “carried by” in the literature. We here avoid using this terminology for less confusion between carried by and carrier map.:

δ(Ξ(σ))Δ(σ).\delta(\Xi(\sigma))\in\Delta(\sigma).

By convention, we also write δΞΔ\delta\circ\Xi\subseteq\Delta, and δ\delta is usually called a decision map.

The relationship between protocols and tasks can be illustrated in the following diagram in the sense of category theory.

{\mathcal{I}}𝒫{\mathcal{P}}𝒪{\mathcal{O}}Ξ\scriptstyle{\Xi}δΞΔ\scriptstyle{\delta\circ\Xi\;\subseteq\;\Delta}δ\scriptstyle{\delta}

Having formalized the tasks and protocols, we are ready to define a computation model, as follows. Intuitively, a model is just a collection of protocols that are applicable to a specific input complex.

Definition 4.6 (Computation Model).

A computation model on an complex \mathcal{I} is a collection of triples (,𝒫i,Ξi)(\mathcal{I},\mathcal{P}_{i},\Xi_{i}), i0i\geq 0.

Now we are ready to portrait the relationship between computation models.

Definition 4.7 (Model Reduction).

Suppose there are two computation models, \mathbb{R} and 𝕍\mathbb{V}. By convention, they are called real model and virtual model, respectively. Real model \mathbb{R} is said to reduce to virtual model 𝕍\mathbb{V} if every protocol for 𝕍\mathbb{V} implies a protocol in \mathbb{R}.

Usually, the reduction is implemented by a simulation of one protocol in another, as defined below.

Definition 4.8 (Model Simulation).

Let (,𝒫r,Ξr)(\mathcal{I},\mathcal{P}_{r},\Xi_{r}) be a protocol for model \mathbb{R} and (,𝒫v,Ξv)(\mathcal{I},\mathcal{P}_{v},\Xi_{v}) be a protocol for model 𝕍\mathbb{V}, respectively. We call 𝕍\mathbb{V} simulates \mathbb{R} if there exists a simplicial map Φ\Phi

Φ:𝒫r𝒫v.\Phi:\mathcal{P}_{r}\rightarrow\mathcal{P}_{v}.

The map Φ\Phi is called a simulation between \mathbb{R} and 𝕍\mathbb{V}. For any σ\sigma\in\mathcal{I}, we have

(ΦΞr)(σ)Ξv(σ).(\Phi\circ\Xi_{r})(\sigma)\subseteq\Xi_{v}(\sigma).

From the perspective of category theory, the morphism can be illustrated in the following diagram.

{\mathcal{I}}𝒫r{\mathcal{P}_{r}}𝒫v{\mathcal{P}_{v}}Ξr\scriptstyle{\Xi_{r}}ΦΞrΞv\scriptstyle{\Phi\circ\Xi_{r}\;\subseteq\;\Xi_{v}}Φ\scriptstyle{\Phi}

We construct the simulation from 2SA to 2DP as follows. Suppose the 2SA is represented by task (,𝒪,Δ)(\mathcal{I},\mathcal{O},\Delta) and has a protocol (,𝒫,Ξ)(\mathcal{I},\mathcal{P},\Xi). We know such a protocol must exist because when k=2k=2, the kk-set-agreement problem turns to be a graph-theoretical problem and there are many algorithms (e.g., breadth-first, depth-first) to decide whether a pair of vertices (uu, vv) has a path between Δ(u)\Delta(u) and Δ(v)\Delta(v).

For the 2SA task, assume there are NN nodes in total, each of which is a vertex in \mathcal{I}. For its protocol (,𝒫r,Ξr)(\mathcal{I},\mathcal{P}_{r},\Xi_{r}), every time the protocol complex 𝒫r\mathcal{P}_{r} grows into the next step, the new complex is a subdivision of the previous complex. There must exist a sufficiently large integer MM such that

𝚍𝚒𝚟M=𝒫r,\mathtt{div}^{M}\mathcal{I}=\mathcal{P}_{r},

where Ξ=𝚍𝚒𝚟M\Xi=\mathtt{div}^{M}. Therefore, the protocol for 2SA can be rewritten as a triple (,𝚍𝚒𝚟M,𝚍𝚒𝚟M)(\mathcal{I},\mathtt{div}^{M}\mathcal{I},\mathtt{div}^{M}).

For each 𝚍𝚒𝚟\mathtt{div} operation, we map it to the swap of pool assignment for a set of miners. We denote 𝚜𝚠𝚊𝚙M\mathtt{swap}^{M} the following operation:

𝚙𝚘𝚘𝚕(σ)=(𝚙𝚘𝚘𝚕(σ)+1)𝚖𝚘𝚍q,\mathtt{pool}(\sigma)=(\mathtt{pool}(\sigma)+1)\;\mathtt{mod}\;q,

such that

𝚒𝚗𝚍𝚎𝚡(σ)=M𝚖𝚘𝚍|I𝚙𝚊𝚛𝚝(σ)|.\mathtt{index}(\sigma)=M\;\mathtt{mod}\;|I_{\mathtt{part}(\sigma)}|.

Intuitively, we restrict the miners to switch to a new pool in a systematic manner. It should be clear that this manner is only a subset of all the possible movements; the point is that these movements are all allowed by 𝒫v\mathcal{P}_{v}, and any final assignment can be achieved by this operation as long as MM is sufficiently large. As a result, the protocol for 2DP (𝙸,𝒫v,Ξv)(\mathtt{I},\mathcal{P}_{v},\Xi_{v}) can be stated as (,𝚜𝚠𝚊𝚙M,𝚜𝚠𝚊𝚙M)(\mathcal{I},\mathtt{swap}^{M}\mathcal{I},\mathtt{swap}^{M}).

It remains to show that for any simplex σ𝚍𝚒𝚟M\sigma\in\mathtt{div}^{M}\mathcal{I}, there exists a Φ\Phi such that Φ(σ)𝚜𝚠𝚊𝚙M\Phi(\sigma)\in\mathtt{swap}^{M}\mathcal{I}. Note that for any σ𝚍𝚒𝚟M\sigma\in\mathtt{div}^{M}\mathcal{I}, the vertices in σ\sigma are still {v0,v1,,vn}\{v_{0},v_{1},\ldots,v_{n}\}, where n+1n+1 is the total number of miners. Of course, the simplex σ\sigma also contains all the higher-dimensional faces on the vertices. Therefore, we need to show that for sufficiently large MM, the resulting simplex consists of all n+1n+1 vertices. As we will show in the following lemma, this is indeed the case.

Lemma 4.9.

For sufficiently large M+M\in\mathbb{Z}^{+}, There is at least one simplex τ𝚜𝚠𝚊𝚙M\tau\in\mathtt{swap}^{M}\mathcal{I} such that 𝚍𝚒𝚖(τ)=𝚍𝚒𝚖(𝙸)\mathtt{dim}(\tau)=\mathtt{dim}(\mathtt{I}).

Proof.

Suppose for contradiction that there is no simplex of dimension 𝚍𝚒𝚖()\mathtt{dim}(\mathcal{I}). Recall that in 2DP, there are only two partitions of pools with distinct number of miners. It follows that there is at least one “missing” vertex vv in a specific pool that is not exchanged by any pool of the other partition after MM times of pool swaps. However, the swap operation is defined in such a round-robin fashion that, as long as MM is larger than the pool size, all the vertices would be swapped. Since we assume MM is “sufficiently large,” it is larger than the pool size also, thus leading to a contradiction. ∎

We are now ready to make the first main conclusion for arbitrary-pool-size blockchains, as stated in the following theorem.

Theorem 4.10.

If a blockchain has pools of only two distinct sizes, then it has an equilibrium.

Proof.

If the blockchain does not has an equilibrium on the pools, then according to Lemma 4.9 there cannot be a protocol for the 2-set-agreement problem. However, it is known that there exist algorithms solving the 2-set-agreement problem. ∎

4.5.3. KDP reduces to KSA, k3k\geq 3

In contrast to the previous section, we will show that when the distinct pools are larger than or equal to three, there does not exist an equilibrium. In the remainder of this section, we will assume k3k\geq 3, and both KDP and KSA assume the number of underlying distinct sets/pools is at least three. Although the reduction approach is implemented through simulation, we show that this simulation can be constructed in the inverse direction: any protocol solving a KSA implies a protocol in KDP. If this is the case, and since we know that KSA’s protocol is undecidable (again, assuming k3k\geq 3), KDP cannot have an equilibrium when k3k\geq 3. As before, we start with constructing the protocols for KSA and KDP, respectively.

Suppose a protocol (,𝒫v,Ξv)(\mathcal{I},\mathcal{P}_{v},\Xi_{v}) solves the KDP problem. Based on the discussion in §4.4, the protocol complex is a union of kk subcomplexes:

𝒫v=1κk𝒫vκ,\mathcal{P}_{v}=\bigcup_{1\leq\kappa\leq k}\mathcal{P}^{\kappa}_{v},

where

𝚍𝚒𝚖(𝒫vκ)=|Iκ|, 1κk,\mathtt{dim}(\mathcal{P}_{v}^{\kappa})=|I_{\kappa}|,\;1\leq\kappa\leq k,

and IκI_{\kappa} is the κ\kappa-th partition—the set of |Iκ||I_{\kappa}|-simplices in the input complex \mathcal{I}. While we do not know the operational progress of 𝒫v\mathcal{P}_{v} because it depends on the specific algorithm, it is evident that the final complex must have such a nn-simplex that is disconnected from any other simplices because otherwise some vertices would have ambiguous views of values—not an equilibrium. Since the protocol complex is split into kk partitions, there must be kk distinct nn-simplices in 𝒫v\mathcal{P}_{v}.

Now, we switch our focus to the protocol (,𝒫r,Ξr)(\mathcal{I},\mathcal{P}_{r},\Xi_{r}) that solves the KSA problem. It turns out that although the output complex is different for k=2k=2 and k=3k=3, the protocol complex remains unchanged: the input complex is still subdivided444In the literature, Barycentric subdivision, denoted by 𝙱𝚊𝚛𝚢()\mathtt{Bary(\cdot)}, and Chronmatic subdivision, denoted by 𝙲𝚑()\mathtt{Ch(\cdot)}, are the most widely-used subdivisions. Here, we ignored the details and simply say 𝚍𝚒𝚟()\mathtt{div}(\cdot). repeatedly. That is, the protocol can still be written (,𝚍𝚒𝚟M,𝚍𝚒𝚟M)(\mathcal{I},\mathtt{div}^{M}\mathcal{I},\mathtt{div}^{M}) for sufficiently large M+M\in\mathbb{Z}^{+}.

We are ready to construct the simplicial map Φ\Phi (cf. Def. 4.8)

Φ:𝒫v𝚍𝚒𝚟M.\Phi:\mathcal{P}_{v}\rightarrow\mathtt{div}^{M}\mathcal{I}.

We need to first map the kk distinct nn-simplices to simplices in 𝚍𝚒𝚟m\mathtt{div}^{m}\mathcal{I} for some m1m\geq 1 that are disjoint. It turns out that m=1m=1 can suffice: 𝚍𝚒𝚟\mathtt{div}\mathcal{I} is capable to hold kk such nn-simplices. To demonstrate this, we need the following lemma.

Lemma 4.11.

An nn-simplex can be subdivided into (n+1)(n+1) disjoint nn-dimensional simplices.

Proof.

We choose Chromatic subdivision, 𝙲𝚑()\mathtt{Ch(\cdot)}, to prove the claim. In the following we provide an informal definition of Chromatic subdivision; a full explanation can be found in (Kozlov, 2008). A Chromatic subdivision recursively divides the nn-dimensional simplex’s kk-skeletons, 0k<n0\leq k<n, into kk pieces plus the ϵ\epsilon-areas. For a 1-dimensional line segment, the ϵ\epsilon-area is a central segment confined by two new vertices in-between the original two endpoints. For a 2-dimensional triangle, an inner triangle with its three vertices is “locally” connected to the two new vertices in the 1-dimensional case and the three vertices in the original triangle.

Let σ\sigma be a nn-dimensional simplex. For each facet of 𝚜𝚔𝚎𝚕n1σ\mathtt{skel}^{n-1}\sigma, there must be (n1)(n-1) new distinct vertices, which together with the vertex in the central nn-dimensional inner simplex constitute a local nn-simplex. Since there are exactly (n+1)(n+1) of (n1)(n-1)-skeletons, we can find (n+1)(n+1) of these local nn-dimensional simplices, none of which is the original nn-simplex. Denote these simplices as {σ0,σ1,,σn}.\{\sigma_{0},\sigma_{1},\ldots,\sigma_{n}\}. Evidently, 𝚍𝚒𝚖(σk)=n\mathtt{dim}(\sigma_{k})=n, 0kn0\leq k\leq n. For any σk\sigma_{k}, none of its vertices is shared with others because nn vertices are from its local (n1)(n-1)-skeleton and the (n+1)(n+1)-th vertex is from the central inner nn-simplex that is distinct for each local simplex. Similarly, none of σk\sigma_{k}’s higher skeletons are shared with any other σk\sigma_{k^{\prime}}, kkk^{\prime}\neq k, because these skeletons are encompassed by a “larger” simplex contributed by the original vertices in σ\sigma. Therefore, we have

0k<knσkσk=,\bigcup_{0\leq k<k^{\prime}\leq n}\sigma_{k}\cap\sigma_{k^{\prime}}=\emptyset,

which is claimed by the theorem. ∎

Now we are ready to state the main result of the solvability of kk-distinct-pool problem, k3k\geq 3.

Theorem 4.12.

If a blockchain has pools of at least three distinct sizes, it does not have an equilibrium.

Proof.

First, we show that there is a simulation from KDP to KSA. According to Lemma 4.11, 𝚍𝚒𝚟1\mathtt{div}^{1}\mathcal{I} generates (n+1)(n+1) disjoint nn-dimensional simplices555As other algebraic operations, 𝚍𝚒𝚟1()\mathtt{div}^{1}(\cdot) is also simplified as 𝚍𝚒𝚟()\mathtt{div}(\cdot) in the literature. Here we explicitly spell it out to emphasize its power.. It should be noted that k<nk<n, because otherwise we cannot have more partitions than the total number of miners. It follows that 𝚍𝚒𝚟1\mathtt{div}^{1}\mathcal{I} has enough capacity to accommodate kk distinct pools, each of which cannot have more than (n+1)(n+1) vertices. It remains to show that all the simplices in 𝒫v\mathcal{P}_{v} other than the kk simplices of distinct pools can also be mapped to 𝚍𝚒𝚟M\mathtt{div}^{M}\mathcal{I}. This is a trivial task because we can always keep subdividing the simplices that are not chosen to hold the kk disjoint simplices in 𝚍𝚒𝚟1\mathtt{div}^{1}\mathcal{I} until we have enough capacity.

We know that KSA cannot be solved for k3k\geq 3. Because KDP can simulate KSA, KDP cannot be solved either. ∎

4.6. Blockchains with Arbitrary Pools

In this section, we summarize the main results for blockchains with arbitrary pools and discuss the relations with game-theoretical approaches.

If a blockchain has pools of only two distinct sizes, Theorem 4.10 states that an equilibrium indeed exists. It should be clear, however, that this claim says nothing about how the protocol’s complexity looks like; the algorithm could be polynomial, exponential, or NP-complete, which is not the scope of this paper. In practice, a two-distinct-pool blockchain network is, admittedly, rare. To this end, it is more interesting to draw some conclusions on the case where more than two pools are formed in the blockchain. Unfortunately, Theorem 4.12 tells us that no equilibrium exists for these more interesting cases. Of course, the impossibility result for k3k\geq 3 distinct pools, although somewhat discouraging, is only based on the mainstream computing models nowadays. The authors, in their very humble opinions, still hold high hopes that future hardware and communication advances plus possibly more advanced mathematical tools would lead to equilibrium results.

Speaking of equilibria over groups of participants, we just cannot skip the discussion on game theory. From a game-theoretical point of view, the pooling strategies are aligned with the so-called coalitional games. Unlike non-cooperative games, where one is interested in the utility equilibrium for individual participants, a coalitional game deals with the utility of a coalition of participants—just like the pools of miners in blockchains. More importantly, the well-known Nash equilibrium that states an equilibrium always exists is only applicable to non-cooperative games; the counterpart equilibrium in coalitional games, namely core, is proven not to always exist. In this sense, a large portion of this section just tries to achieve a stronger result than that in game theory: when k3k\geq 3, such a core does not exist for kk-distinct-pool blockchains. In coalitional game theory, there are a few more relaxed equilibria than the core per se. For instance, a bargaining set might be a practical replacement that implies that a participant not in the core might still choose to stay in its current coalition because its claims (for higher utility, for example) can be countered. An extensive review of a coalitional game’s solution concepts can be found in (Peleg and Sudholter, 2007). For a general introduction to game theory, see (Maschler et al., 2013).

5. Additional Related Work

We briefly review important work on game-theoretical techniques and topological approaches in blockchains, distributed computing, and computer security.

After the pioneering work (Eyal, 2015) on the game-theoretical analysis of blockchain pools, game-theoretical approaches started to revive in computer security and blockchain communities. In (Nasr and Houmansadr, 2016), game theory is used to model the interactions between decoy router deployers and the censors. In (Tsabary and Eyal, 2018), authors studied miner’s behavior and blockchain’s status if the miners’ incentive lies only on transaction fees. In (Zhao, 2020c), a game-theoretical model was developed by considering Byzantine failures for permissioned blockchains.

Topological approaches have a long story in distributed computing and are recently used to design cross-blockchain transactions (Zhao, 2020b), such as distributed cross-blockchain protocols (Zhao and Li, 2020). In (Zhao, 2020d), a topological space is constructed to be homeogeneous to the cross-blockchain transactions using point-set topology. In (Zhao, 2020a), an algebraic-topological model shows that a naive message-passing protocol cannot complete a cross-blockchain transaction. In (Nowak et al., 2019), point-set topology was used to characterize the solvability of consensus problems in distributed systems. Recent work on modeling the data structure of blockchains through algebraic topology appears at (Meldman-Floch, 2018).

6. Conclusion

Our conventional wisdom on blockchain’s pooling equilibrium is limited: when the blockchain pools are abstracted as a non-cooperative game, two pools can reach a Nash equilibrium with a closed-form formula; an arbitrary number of pools still exhibit an equilibrium as long as the pools have an equal number of miners.

This paper studies the equilibrium in a blockchain of arbitrary pools. First, we show that the equilibrium among qq identical pools, coinciding the result demonstrated by (Eyal, 2015) through game theory, can be constructed using a topological approach. Second, if the pools are of different size, we show that (i) if the blockchain’s pools exhibit two distinct sizes, an equilibrium can be reached, and (ii) if the blockchain has at least three distinct pool sizes, there does not exist an equilibrium.

Acknowledgement

This work is, in part, supported by the U.S. Department of Energy under contract number DE-SC0020455. This work is also supported by a Google Cloud award and an Amazon research award. The authors are grateful for the valuable discussion with Mohammad Sadoghi (University of California, Davis) on an earlier version of this work.

References

  • (1)
  • Eyal (2015) Ittay Eyal. 2015. The Miner’s Dilemma. In Proceedings of the 2015 IEEE Symposium on Security and Privacy (SP).
  • Herlihy et al. (2013) Maurice Herlihy, Dmitry Kozlov, and Sergio Rajsbaum. 2013. Distributed Computing Through Combinatorial Topology (1st ed.). Morgan Kaufmann Publishers Inc.
  • Kozlov (2008) Dmitry N. Kozlov. 2008. Combinatorial Algebraic Topology. Algorithms and computation in mathematics, Vol. 21. Springer. https://doi.org/10.1007/978-3-540-71962-5
  • Maschler et al. (2013) Michael Maschler, Eilon Solan, and Shmuel Zamir. 2013. Game Theory. Cambridge University Press.
  • Meldman-Floch (2018) Wyatt Meldman-Floch. 2018. Blockchain Cohomology. CoRR abs/1805.07047 (2018). arXiv:1805.07047 http://arxiv.org/abs/1805.07047
  • Munkres (1984) James Munkres. 1984. Elements Of Algebraic Topology. Westview Press.
  • Munkres (2000) James Munkres. 2000. Topology. Prentice Hall.
  • Nasr and Houmansadr (2016) Milad Nasr and Amir Houmansadr. 2016. GAME OF DECOYS: Optimal Decoy Routing Through Game Theory. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS). 1727–1738.
  • Nowak et al. (2019) Thomas Nowak, Ulrich Schmid, and Kyrill Winkler. 2019. Topological Characterization of Consensus under General Message Adversaries. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing (PODC). 218–227.
  • Peleg and Sudholter (2007) Bezalel Peleg and Peter Sudholter. 2007. Introduction to the Theory of Cooperative Games. Springer-Verlag Berlin Heidelberg.
  • Tsabary and Eyal (2018) Itay Tsabary and Ittay Eyal. 2018. The Gap Game. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security (CCS). 713–728.
  • Zhao (2020a) Dongfang Zhao. 2020a. Completeness of Cross-Blockchain Transactions: A Combinatorial-Algebraic-Topological Approach. CoRR abs/2004.08473 (2020). arXiv:2004.08473 https://arxiv.org/abs/2004.08473
  • Zhao (2020b) Dongfang Zhao. 2020b. Cross-Blockchain Transactions. In Conference on Innovative Data Systems Research (CIDR).
  • Zhao (2020c) Dongfang Zhao. 2020c. Permissioned Blockchain Revisited: A Byzantine Game-Theoretical Perspective. CoRR abs/2001.03822 (2020). arXiv:2001.03822 https://arxiv.org/abs/2001.03822
  • Zhao (2020d) Dongfang Zhao. 2020d. Topological Properties of Multi-Party Blockchain Transactions. CoRR abs/2004.01045 (2020). arXiv:2004.01045 https://arxiv.org/abs/2004.01045
  • Zhao and Li (2020) Dongfang Zhao and Tonglin Li. 2020. Distributed Cross-Blockchain Transactions. CoRR abs/2002.11771 (2020). arXiv:2002.11771 https://arxiv.org/abs/2002.11771