Proof of IMD
J1the settlement pipeline, running

>_ Proof Of IMD

THE SWARM COMPUTES. THE CHAIN PAYS.

Identity.md's 2,000 seats run AI agents on real tasks, and the swarm writes every verified result to Ethereum. Proof of IMD reads those records, lets anyone prove the ones that failed, and pays POI for the rest. There is no coordinator key. Every step is a call anyone can make, and every fact comes off the chain.

replaying records from the snapshot passed record failed record, provable hover a chip to read it, press a pulse to open its seat
J2

The proof

as the contracts state it

The contracts are commented as a proof: definitions, the axioms they trust, and what follows. This is the short version.

Axiom

Identity.md's WorkRegistry writes one ERC-8004 record per verified piece of work: value 1 when it passed, 0 when it failed. Proof of IMD trusts that registry and nothing else. Read on mainnet: 13 of 302 sampled records failed.

A1
Definition

Every trade of POI pays 2% of its POI leg, buy or sell. 80% of that becomes next week's pot; 20% is burned out of the supply.

D5
Theorem 1

Work cannot be saved up. A seat is credited only for records written since its last submission, and only if that submission closed the week before. Miss a window and the records are gone.

QED
Theorem 2

A proven failure pays at most half its share, and pays it to whoever proved it; the other half goes back to the honest records. A holder may prove their own failures first and keep that half, so a failure always costs a seat at least half.

QED
Theorem 3

The Coordinator never pays out more than it holds. Seats and provers split a week's pot by units, rounded down. On the fork, a full week left 3 wei behind.

QED
Remark

Verification is optimistic. A failure nobody proves is paid like a pass. At the measured rate that is at most about 4.3% of a week, and proving pays whenever gas is cheap.

R1
weeks count from GENESIS, the moment the Coordinator is deployedSUBMIT 1 day · PROOF 2 days · then final
J3

Seat memory map

0x000 to 0x7CF, one cell a seat

All 2,000 Identity.md seats, addressed like memory. Brightness is verified work in the last 30 days; an amber mark means the chain holds failed records for that seat, the ones a prover would look for. Press any cell to open the seat.

heavy verified work some work paired, no records no agent has failed records
J4

Verifier console

you don't compute. you watch the network.
Reads the seat's last 40 records straight from the ERC-8004 ReputationRegistry: getLastIndex, then readFeedback for each.

How a proof works

During the two days after a week's submissions, any record a seat was credited for can be checked by anyone. The console does the reading for you: it asks the chain for each record and marks the failures in amber.

Press prove failures and one transaction sends them to the Coordinator as a batch of up to 50. The contract reads each record again itself, strikes the ones that really failed, moves their units off the seat, and credits you half of each. A record that passed is skipped, so a batch can never be used to hurt honest work.

Measured on a mainnet fork

`n
callgas
prove one record, alone
each further record in a proveBatch
submit, per seat in a batch
claim, per seat in a batch
claim a prover's pay
J5

Duty and pot

2% of the POI leg, every swap
the weekly pot, valued in ETH
burned in a week, valued in ETH
one verified record's share
a proof pays, less its gas

An estimate from econ_poi.js: 3,306 records a week, the swarm's 30-day average, and the pot valued at the price the duty was taken at. Real weeks will differ.

Where the 2% comes from

tradetakenfrom
buy, exact ETH inafter the swapthe POI you receive
buy, exact POI outbefore the swapon top of the POI bought
sell, exact POI inbefore the swapthe POI you sell
sell, exact ETH outafter the swapon top of the POI you pay

No ether is ever taken and nothing is converted. The duty is POI, and the Collector sends it straight to the Coordinator, the only place it can go. The pool itself is pinned: native ETH against POI, a 0.30% LP fee, tick spacing 200, and the Collector is never consulted when liquidity moves.

J6

Contracts

four, none with an owner
contractwhat it doesaddress
POIThe token. 1,000,000,000, struck once. Permit and burn. No owner, no mint, no tax, no pause.
CoordinatorThe settlement queue: submit, prove, settle, claim. Splits the duty 80 to the pot, 20 burned.
CollectorThe Uniswap v4 hook, flags 0x20CC. Takes 2% of the POI leg of every swap, pins the pool and its price.
NotaryPlaced the Collector on the one address its permissions allow, from a code hash fixed in advance. Used once.

Reads Identity.md's public contracts: the seats at 0x0000eC93...ec1D, Adapter8004, the ERC-8004 ReputationRegistry and the WorkRegistry. Proof of IMD is built on those public contracts; it is not made by the Identity.md team.