Working Papers

From contract to application

a grassroots system is a distributed system that can have multiple instances, independent of each other and of any global resources, that can interoperate once interconnected.

Grassroots Social Contracts (Golike, Lewis-Pye and Shapiro) Working paper, draft of 25/10/2026, not peer reviewed, may change.

People who use today's digital platforms accept terms written by the platform's owner, who can change them and decide who takes part. This working paper shows how a community can instead write its own rules as an agreement between equals. Each person is bound only by their own promises, no outside authority sits above them, and separate groups can join together by mutual consent.

The paper then turns such an agreement into a working phone app, step by step. The contract's clauses are restated as precise rules, and three automatic checks confirm that nobody is given special power: any two people can connect without asking permission, there is no master list of members, and any action affecting people who are otherwise unconnected needs agreement from both sides. A contract that passes the checks is proved to let independent groups form, coexist, and merge only when a member of each chooses to. Software then generates the app, with each person's phone holding only their own records.

Two examples are worked through and run on a smartphone: a social network, and a currency in which everyone issues their own coins. The paper also sorts a contract's clauses by what the software can do about a breach. Some breaches are made impossible, some leave signed evidence against the person responsible, and some rest on a recorded promise kept outside the software. The checks are sufficient but not necessary, and turning legal wording into precise rules still needs human judgement. [Link to the full working paper]

Volition-Guarded Multiagent Atomic Transactions: Describing People and their Machines

Most mathematical models of computer systems describe the machines and treat the people using them as outside the system, an unpredictable "environment". But on platforms where people run the software on their own phones, as in the Grassroots project, what happens depends on what each person is willing to do. This paper proposes a way to describe both together: each participant is described by the state of their machine and a record of what they are willing to do, and an action takes place only when the machines are ready and the people it needs have agreed.

Which people must agree depends on the action. Becoming friends needs both people, while ending a friendship needs only one. Swapping coins needs both parties, while paying needs only the payer. The paper builds the mathematics to state what such a system must always do and what must eventually happen, and applies it to two platforms: a social network, and a currency in which everyone issues their own coins. These specifications have been used by AI to produce working software.

The paper also gives a simpler definition of "grassroots": groups can form and run independently of each other, yet can later join up. It shows that two such groups can always join, that they do so only when a member of each agrees, and that a person or AI agent leaving, for example through death, incapacity or retirement, does not block everyone else. Both example platforms meet this definition, while Bitcoin and systems built on shared global structures do not. Making the systems tolerate faults, and extending the approach to decisions by majority vote, are left for future work. [Link to the full working paper]

Volition Elicitation: Operational Semantics for People and Their Machines Working paper, draft of 15/10/2026, not peer reviewed, may change.

Software on people's phones is driven by what those people choose to do, but a machine can only know what someone wants if they tell it, which is what a screen is for. Volition Elicitation (Keidar and Shapiro) shows how to build that screen from the rules of a platform instead of designing it by hand. In the Grassroots platforms, each action needs the agreement of particular people: befriending needs both, while a payment needs only the payer. The paper turns such rules, in stages, into a working app, and proves each stage correct down to the project's programming language.

The stages work as follows. First, phones carry out an action involving several people by exchanging messages: the person starting it asks the others, each checks its own records, and the action goes ahead only if all agree, with a rule for settling clashes so that nothing gets stuck. Second, the programming language is extended so that a program can put a question to its person and wait for the answer, and the machine can never answer on the person's behalf. Third, the screen is generated from the kind of question being asked, such as a yes-or-no approval, a form to fill in, or a menu of requests, with the wording taken from the contract itself.

The approach is demonstrated on the social graph, the social network and the currency. A compiler takes each contract, written as formal rules, down to a program, and the resulting apps run on an iPhone simulator with every word on screen coming from the contract. The model assumes no phone crashes or misbehaves, and handling faults is left for future work. The proofs reach down to the programming language rather than to the code that draws the screen, and the authors plan a richer way of describing screens and standing permissions, where a person approves a whole category of action in advance. [Link to the full working paper]

Corralling AI Risks with Grassroots Social Contracts

As the owners of the big online platforms hand control to AI, three risks follow: AI deciding what people see, AI agents posing as people on behalf of unknown masters, and deepfakes that no one answers for. This paper argues that platforms owned and run by their own participants, bound by a grassroots social contract, can contain all three. The contract is a short agreement in plain language, and the platform is built from it, so the rules are part of the design rather than a policy added later.

Each risk is met in a different way. A grassroots platform has no central servers or operator, so there is nothing to hand over to AI; an AI would have to take over participants' phones one by one. AI agents can join only under a named person who vouches that the agent runs code signed by its developer, much as a car has a manufacturer answerable for defects and a driver answerable for reckless driving, and every act of the agent names both and cannot later be denied. Every item shared carries the signature of its author and of everyone who passed it on, each of whom vouches that they know personally the person they received it from, so a deepfake can still be made but always has someone accountable for it.

The paper presents two contracts, one for a social graph with accountable AI agents and one for a social network with this provenance, together with working phone apps built from them. It is open about the limits. The platform cannot tell whether content is synthetic or whether the holder of a key is a person, only who signed it and who is accountable, and two other AI risks, harm to people who use AI and harm done by people using AI, are outside its scope. The work is at the stage of theory and working prototypes, and much remains to be done before it can compete with the incumbent platforms, though the paper suggests AI-assisted development may shorten that considerably. [Link to the full working paper]

Grassroots Currencies:Turning Mutual Trust into Liquidity Ehud Shapiro - Working paper, draft of 26/09/2026, not peer reviewed, may change.

Global cryptocurrencies such as Bitcoin are unbacked, and every transaction carries the cost of the whole network agreeing on it. Grassroots Currencies describes an alternative in which any person, business, cooperative, bank or municipality issues their own coins. A coin is simply a claim on its issuer: the issuer accepts their own coins for their goods and services at posted prices, and must redeem any of them at par against any grassroots coin they hold. A transaction costs no more than running a smartphone, and the whole system rests on four actions: minting, swapping, paying and redeeming.

Liquidity comes from trust rather than capital. Since everyone prices in their own coins, no one can trade until they hold someone else's, so people who know and trust each other swap coins and open mutual credit lines. Redemption then lets payments travel along chains of people and keeps the currencies of mutually trusting people at equal value. The paper's illustration is a village of 501 people who each swap 100 coins with every other, putting about 25 million coins into circulation with no outside money or credit. This is aimed at communities where trust is high and capital is scarce, and the authors suggest it could help "bank the unbanked".

The paper shows the same agreement working with signed paper coins and as a phone app, and proves what a community can count on by looking at who holds whose coins. A community can clear its debts into a chosen member exactly when no one owes more coins than they hold, the number of a member's coins a group can obtain is a maximum flow through those holdings, and a run on a person is met in full exactly when they hold at least as many coins as they owe. The limits are plain: each issuer is the credit risk for their own coins, the legal status of such coins depends on the jurisdiction, and the app has so far been demonstrated on a village market of six people. Defaults, larger populations and enforcing that everyone runs the correct code are left for future work, and interest-bearing credit is covered in a separate paper on bonds. [Link to the full working paper]

Grassroots Bonds: Financing by the People, for the People Ehud Shapiro - Working paper, draft of 02/10/2026, not peer reviewed, may change.

In grassroots currencies, anyone can issue their own coins, and the issuer must swap any of them one-for-one for any coin they hold, at any time. That rule keeps the system simple, but it rules out interest. If someone received 110 coins for 100, they could immediately hand the coins back and keep the difference. Grassroots Bonds adds a second instrument to fix this: a bond is the issuer's promise to pay at a later date, and it can be redeemed like a coin only once that date has arrived by the issuer's own calendar. Liquid coins can then be lent in exchange for interest-bearing bonds.

The paper shows that simple swaps of coins and bonds between two people are enough for loans, for selling a debt at a discount, and for forward contracts. Adding a trusted third party, an escrow agent who holds items until agreed conditions are met, allows loans with payment schedules, options, collateral, guarantees, insurance, credit default swaps, letters of credit and credit lines. The paper also adapts the standard liquidity ratios of corporate finance to bonds and proves that a community can clear all its debts by redemptions exactly when no member owes more than they hold, with no coordination needed once calendars advance and people exercise their rights.

The approach is demonstrated as a phone app and a month-long village market of six people and an escrow agent, covering mutual credit, a loan with interest, payments, escrow, set-off and the sale of a debt. There is no global clock, so each person keeps their own calendar, and the promise to keep it current is a commitment rather than something the system can check. Escrow agents must also be trusted. Handling people who default or break agreements, and scaling from six people to thousands, are left for future work. [Link to the full working paper]