12 MIN12 May 2024

From the Stepped Reckoner to Smart Contracts

How a 358-year-old idea may finally have its day, and how it may revolutionise human governance

Share
P

Peter Ludlow

J

Jarrad Hope

In 1666, Gottfried Wilhelm Leibniz proposed the idea of ‘proving’ important governmental actions using deductions within a universal language. One way to develop his idea would be to say that we can computationally automate these government actions. Here, we push this idea further using Nick Szabo’s idea of ‘smart contracts’. We propose that one can automate key government actions on the blockchain, where they will be reliable, corruption resistant, and transparent to all citizens.

In our previous article, ‘Obsessed with Archives’, we looked at a proposal that Gottfried Wilhelm Leibniz made for a permanent, immutable archive and argued that it could be strengthened if the archive was decentralised. In this article, we want to explore and expand upon another of Leibniz’s ideas.

As you may recall, when Leibniz was 20 years old, in 1666, he published his dissertation, which was on the idea of a formal ‘universal language’ in which inferences could be carried out by algorithmic proofs (much as they are in computer languages today).[1] What is most interesting for this article is that Leibniz not only had his idea of an archive of government information, but he also seemed to believe that some of the information could be written in his universal language and that this information, so encoded, could be used to guide government actions. That may not seem like a big idea on the surface, but we believe it was an idea so far ahead of its time that it would take a further 343 years to see its full expression in Satoshi Nakamoto's invention of the blockchain (in the form of Bitcoin) and Nick Szabo's invention of ‘smart contracts’ (self-executing contracts that are instantiated as computer programs). 

You may also recall from our previous article that Leibniz had the idea that the correct action might be computed and left for the ‘prince’ to carry out. We noted that the relevant expressions that might play a role in these computations included war, peace, wagons, money, vassals, truce, allies, booty, bridges, gunpowder, attack, parley, clients, routes, cannonballs, security, treaty, neutrals, agreement, enemies, ships, medicine, and counsels. In other words, pretty much any term that might be of interest to a 17th-century leader. We wondered whether Leibniz thought that actual actions could be automated as well. We may never know, but if he were alive today, he would surely be attracted to the idea that his system could automate government actions. As we noted, he proposed one of the very first physical computing machines – his ‘stepped reckoner’, which could do multiplication and division.[2] What we want to do now is explore a modern-day execution of Leibniz's core idea by applying smart contracts to the project of human governance.

LPE-SteppedReckoner-02.jpg
LPE-SteppedReckoner-02.jpg
Leibniz's Stepped Reckoner

Smart Contracts and Human Governance

When we speak of human governance, we are speaking of the systems and processes by which people manage and make decisions about their communities and implement those decisions to achieve some political, economic, or cultural goals. Here we take ‘political’ in the very broad sense suggested by its origin in the Latin term from Latin ‘politicus’, meaning ‘of citizens or the state’. Or in other words, we take political goals to be those goals that involve some plan for the future conduct of the state, or some group of organised citizens. Maybe that goal is peace, or war, or a robust economy, or, at lower levels, fixing potholes, reliable trash removal, or weekly yoga classes on the roof of the condo building.

Different levels of human governance, of course, need different tools, but some tools seem to be required at nearly every level. Important tools include those for recording reliable records, transparent and reliable channels of communication between governing officials and the community, safe and secure handling of funds with a reliable audit trail of those funds, ways of articulating community goals, and ways of incentivising community members to align with and pursue those goals. All this seems pretty benign, or at least we hope it does. We hope that based on remarks made in our previous article, it is also clear how blockchain technology is optimally designed to facilitate most of these goals. (Secure communications, as we will see, require other measures.) But a few additional observations might be helpful here. 

Immutable Ledgers

Let's begin by revisiting the idea of an immutable public ledger. Just having such a ledger can achieve a lot for us. The first thing it can do is record what belongs to whom, and this is, in effect, what Bitcoin and Ethereum do. They are (among other things) ‘immutable’ ledgers recording ownership (by wallet) of crypto assets and the history of ownership transfers. This basic technology can do a lot more than keep track of asset ownership, however. It can also be a record for use in inventory control, or in tracking the movement of produce from farm to factory to store. It can provide a secure record of the movement of products and parts all around the globe and, more importantly, be accessible to all parts of the globe. On top of this, it can record the history of every state change of that record, should we need to audit the history of these records. And critically, everyone can know that everyone else has access to the very same record.

A blockchain ledger doesn't even have to be a record of assets and market value. It could record the amount of labour that goes into product parts and then the amount of labour that goes into a product assembled from those parts. Blockchains are value-agnostic. They don't care what you value, but whatever you value, they can record it in an immutable, decentralised, yet reliable shared record. But this brings us to the matter of smart contracts.

On-Chain Computation

In late 2013, five years after the Bitcoin Whitepaper was published, 19-year-old Vitalik Buterin wrote the Ethereum Whitepaper.[3] Building on ideas put forward in Satoshi’s forum posts and elsewhere, Buterin observed that just as you can record a ledger and other static documents on the blockchain, hypothetically, you can use a blockchain to store and execute computer programs (few people realise that Satoshi included a Bitcoin script – specifically, the OPPUSHDATA4 opcode, which allowed up to 4.3 GB of data to be pushed onto the stack in the original Bitcoin protocol). 

Buterin's big idea was that certain programming languages are ‘Turing complete’, which means they can encode any computable function. Thus, if you have a way of executing those programs, you can not only record those programs, but you can do anything a digital computer can possibly do, and you can do it on the blockchain!

This is effectively what Ethereum is – a blockchain-based platform that can carry out any computable function. It is, as Camila Russo put it in the title of her book, an ‘Infinite Machine’.[4] But because it is on the blockchain, it is visible to all. It is transparent.

What could one do with such a universal computer on the blockchain? Well, one thing you could do is put self-executing contracts on the blockchain. This is actually an idea that predates Bitcoin and Ethereum. As we mentioned earlier, in the 1990s, Nick Szabo proposed the idea of a ‘smart contract’, which he described as ‘a set of promises, specified in digital form, including protocols within which the parties perform on these promises’.[5]

On-Chain Governance

Of course, the similarities to Leibniz's idea of proving (computing) courses of action for a prince should be apparent – the only difference is that Szabo made explicit the idea that the execution of governance policies could be automated. Let’s take a hypothetical example of a smart contract. Sometimes, when we make a large purchase, such as real estate, we utilise escrow companies to hold the money until the transaction is resolved. For example, you want to buy a house for a million dollars, but you don’t want to send the money until you get clear title to the house, and the homeowner doesn't want to relinquish title until the money lands in their account. This is where escrow companies come in – yet another layer of centralised trust. They hold the money in escrow until the title is transferred, and then they release the money to the seller.

An Ethereum smart contract is the sort of thing that could supplant the escrow service. A smart contract on the Ethereum blockchain can be designed to hold a document – let’s say the title to the house – until the money is sent to the contract. You don’t need trusted third parties because everyone can study the smart contract online, and they can see that it will automatically release the title the second the money is placed into the smart contract.[6] This brings us back to Leibniz’s idea of a virtual mechanism guiding the prince’s actions. Does this mean that the mechanism is designed to provide helpful advice, or did Leibniz have in mind that the actual execution of policies could be automated as well? Whatever Leibniz had in mind, it is certainly true that aspects of governance can now be automated on the blockchain, visible to all, auditable by all, and guaranteed to be executed.

One way in which this might be realised is that elements of a government's constitution could be wired directly into the governmental smart contracts. As a hypothetical example, one might program a smart contract constitution that the state budget must be balanced. Alternatively, one might program the smart contract constitution so that a minimum percentage of GDP goes to universal health care. One could program the smart contract so that the military budget could not exceed (or perhaps always exceed) a certain percentage of GDP. One could program it such that the government had to maintain minimum reserves in Bitcoin. The options are endless.

LPE-SteppedReckoner-03.jpg
LPE-SteppedReckoner-03.jpg
Smart contracts have the potential to revolutionise governance institutions

Of course, constitutions are silent on most aspects of governance, but the day-to-day business of lawmaking could give way to smart contract design and execution. The entire process, from voting to policy execution, can thus be built into smart contracts. For example, let’s imagine a hypothetical on-chain community consisting of various digital nomads scattered around the world. If you wish, we can suppose that our community also has secured pieces of physical territory around the world. Our hypothetical community provides services for its members and it also provides health care and health insurance for its members. In exchange, it taxes its members some amount, let's say 0.1% of all transactions that the members engage in on the blockchain. 

But now, suppose that some members think that this is too much and a proposal is made to reduce the tax to 0.08%, with a correlative cut in benefits.[7] In traditional nation states, people campaign for tax cuts all the time. Maybe the government will deliver on its promises, and maybe it won't. No one knows for sure. But as we noted, with blockchain governance we can vote directly for a policy, which is itself encoded in a blockchain smart contract. In this case, there would be a smart contract governing the taxation policy for the community (let’s say it is a function that takes some percentage of transactions and then transfers that to the contract for healthcare and health insurance payments). The policy that receives the most votes is the policy that will go into effect. Will the contract really deliver on that policy? Well, we can inspect the code and see. Once the smart contract is activated, that is the policy. 

But wait! How do we know that our votes will be correctly recorded? We live, after all, in the age of competing claims of voter fraud, double voting, lost ballots, hanging chads, etc. And for sure, this is the state of conventional democratic mechanisms. Even when they do not fail, there often remains suspicion that they have failed. And why shouldn’t there be such a suspicion, given that the mechanisms of voting are centralised and are not visible to all? They are, at best, visible to ‘election observers’, who may or may not be reliable referees and who may or may not be in a position to actually assess what is happening. 

LPE-SteppedReckoner-04.jpg
LPE-SteppedReckoner-04.jpg
Onchain voting would reduce human error and fraud during elections

Voting, too, can be built into the smart contract constitution of our community. Voting can take place on a smart contract, one that is immutable and accessible to all, so we can inspect the contract and see if it is wired to count every vote and to see if the vote outcome indeed leads to the execution of the desired smart contract. No need to wait for politicians to act on their promises after the election. Once the voting is closed, the contract is executed immediately or within a timeframe that is programmed into the smart contract.

For example, let's suppose that our voting power depends on how many state-issued ‘coins’ we hold in an anonymous wallet. After we vote, we will be able to confirm on the blockchain that our vote was recorded and that the totals were added correctly. If we wish that our system be one-person-one-vote, then we need mechanisms that ensure each person has exactly one vote (or the same voting power), and this leads to challenges that we will address later when we take a deeper dive into the options for voting strategies. The key thing to see here is that in our thought experiment, all the critical democratic mechanisms have been encoded directly into our immutable public blockchain. This allows us to vote directly and securely for the tax mechanism we desire, with the assurance (by the laws of mathematics and the theory of computation) that if our vote prevails, the policy will be enacted. 

Of course, this is just one possible way to execute blockchain governance. Maybe you prefer a community where taxation is not subject to votes. Maybe you want the taxation to be hard-coded directly into the definition of the community itself. Or maybe you wish for some elected leader to set tax rates. Or maybe you don't want leaders to be chosen by election. All of these are possibilities with blockchain-based communities. 

In our next article, we will take a deeper dive into possible applications of smart contracts to human governance, and in particular, we will be exploring Decentralised Autonomous Organizations (DAOs). As we will see, DAOs will open a broad range of applications for human governance, with the promise of more individual autonomy, more self-sovereignty, and more governmental accountability.

[1]

Massimo Mugnai, Leibniz: Dissertation on Combinatorial Art (Oxford, 2000)

[2]

Paule Donne, ‘History of Computation: 16-19th Century Work’, Paul E. Dunne [website], (2000), https://intranet.csc.liv.ac.uk/~ped/teachadmin/histsci/htmlform/lect3.html

[3]

Vitalik Buterin, ‘Ethereum: A Next-Generation Smart Contract and Decentralized Application Platform’, Ethereum [website], (2014), https://ethereum.org/content/whitepaper/whitepaper-pdf/Ethereum_Whitepaper_-_Buterin_2014.pdf

[4]

Camila Russo, The Infinite Machine: How an Army of Crypto-hackers Is Building the Next Internet with Ethereum (Harper Business, 2020)

[5]

Nick Szabo, ‘Smart Contracts: Building Blocks for Digital Markets’, Phonetic Sciences, Amsterdam [website], (2006), https://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart_contracts_2.html

[6]

It is a bit more complicated than this. There is the issue of assessing the safety of the smart contract for example, and there is also the question of how things like titles make their way onto the blockchain – that is, how assets are tokenised. 

[7]

 You might think that this rate of taxation would be draconian for someone engaged in multiple high-speed transactions, but there are ways around this. Transactions could be processed in batch, or they could be conducted on a layer-2 protocol – an option we will discuss later.

Illicit Financial Flows: Crypto Is the Solution, Not the Problem
P

Peter Ludlow

J

Jarrad Hope

10 June 2024
Obsessed with Archives
P

Peter Ludlow

J

Jarrad Hope

8 April 2024
Logos Press Engine ©2024
All rights reserved.
DiscordXGithubYoutubeRSS
Built by IFT