Validator election in nominated proof-of-stake

Polkadot is a decentralized blockchain platform to be launched in 2020. It will implement nominated proof-of-stake (NPoS), a proof-of-stake based mechanism where k nodes are selected by the network as validators to participate in the consensus protocol, according to the preferences expressed by token holders who take the role of nominators. This setup leads to an approval-based multi-winner election problem, where each nominator submits a list of trusted candidates, and has a vote strength proportional to their stake. A solution consists of a committee of k validators, together with a fractional distribution of each nominator's vote among them. We consider two objectives, both recently studied in the literature of social choice. The first one is ensuring the property of proportional justified representation (PJR). The second objective, called maximin support, is to maximize the minimum amount of vote support assigned to any elected validator. We argue that the former objective aligns with the notion of decentralization, while the latter aligns with the security level of the consensus protocol. We prove that the maximin support problem is constant-factor approximable, as we present several approximation algorithms for it, and prove a matching hardness result. Furthermore, we present an efficient post-computation which, when paired with an approximation algorithm for maximin support, returns a new solution that a) preserves the approximation guarantee, b) satisfies the PJR property, and c) can be efficiently verified to satisfy PJR by an untrusting third party. Besides being of independent theoretical interest, our results enable the network to run an efficient validator election protocol that simultaneously achieves the PJR property and a constant-factor approximation for maximin support, thus offering strong theoretical guarantees on decentralization and security.