Latent Exchange is a protocol for arranging exchanges when a direct barter is not possible. It represents what participants can offer, what they want, and the conditions under which they would trade. A matching engine can then propose bilateral swaps, multilateral cycles, or bundles that each participant may accept or reject.
A direct barter requires a double coincidence of wants: each participant must want what the other offers, at compatible quantities and at the same time. A network can remove some of this constraint. For example:
- Alice offers design work and needs bicycle repair.
- Ben offers bicycle repair and needs vegetables.
- Chen offers vegetables and needs design work.
No bilateral swap satisfies everyone, but the cycle Alice → Chen → Ben → Alice can.
This protocol does not rely on the claim that barter historically preceded money. Adam Smith used barter and exchange as part of his account of the division of labour.1 David Graeber later argued that credit and social obligation often preceded cash exchange, while barter was more characteristic of trade between strangers or of situations in which currency was unavailable.2 Latent Exchange extends on the theory that David Graeber proposed.
Let P be the set of participants and K the set of asset or service types.
At decision time
Each participant p declares:
-
$O_p$ : offers, including quantity, quality, location, availability, and the participant's cost of providing them; -
$W_p$ : wants and acceptable substitutes; -
$C_p$ : hard constraints, such as deadlines or minimum quantities; -
$U_p(X; O_p, W_p, H_t)$ : the participant's estimated utility for proposalX, conditional on relevant history; and -
$R_p(X; H_t)$ : delivery, counterparty, and settlement risk inferred from the proposal and relevant history.
An exchange proposal is a set of directed transfers:
where
For each participant, the proposal produces an incoming and an outgoing bundle:
The declarations factor into the proposal as follows:
-
Offers bound outgoing transfers. If
$o_{p k}$ is the available quantity of type$k$ in$O_p$ , then $\mathrm{out}{p k}(X) \le o{p k}$. The proposed transfer must also match the offer's quality, timing, location, and other terms. The cost or inconvenience of supplying the outgoing bundle reduces$U_p$ . -
Wants evaluate incoming bundles.
$W_p$ describes desired items, acceptable substitutes, target quantities, and relative preferences. It determines how$\mathrm{in}_p(X)$ contributes to$U_p$ . A want may therefore be soft: receiving less than the target can still have value. -
Constraints reject invalid bundles.
$C_p$ is a predicate over the whole proposal, not just one item. It can require a minimum incoming quantity, cap an outgoing quantity, link two transfers, impose a deadline, or reject a counterparty. The proposal is valid for$p$ only when$C_p(X) = \mathrm{true}$ . -
History changes expected outcomes.
$H_t$ may indicate that a participant usually delivers a particular service late, that two participants have a reliable relationship, or that an outcome is disputed or weakly attested. This can change both the value$p$ expects to receive and the risk$p$ assigns to the same nominal transfer.
History should normally be a soft input to utility and risk. It becomes a hard
filter only when
A proposal is feasible only if every outgoing transfer is covered by an
offer and all inventory, capacity, timing, and policy constraints hold. It is
individually rational for participant
where
For exchange clearing, this yields a proposal space that depends directly on all participants' declarations:
Candidate generation uses
The matching engine can search for a proposal such as:
where
Feasibility and individual rationality do not imply consent: every proposal still requires explicit approval unless the participant has granted narrowly scoped authority to an agent.
The system may learn an embedding
The estimate can affect candidate retrieval,
Calling this representation latent money would combine two related but distinct mechanisms: exchange clearing and mutual credit. Both may use the same matching engine, but only mutual credit creates persistent obligations.
Exchange clearing is the direct output of the matching process described above. The engine searches $\mathcal{F}{\mathrm{clear}}(O,W,C;H_t)$ and returns a candidate $X^*{\mathrm{clear}}$. This is a proposal, not an executed exchange. The engine has shown that the transfers fit the submitted offers, wants, constraints, and historical state; it has not shown that it is authorized to act for the participants.
Let the affected participants be:
Each participant may sign a delegation policy
- permitted asset and service types, counterparties, and jurisdictions;
- maximum quantities and estimated values per exchange and per time period;
- minimum incoming bundles and permitted substitutes;
- expiry, revocation nonce, and maximum settlement delay;
- whether the delegate may only propose, may reserve inventory, or may also authorize settlement; and
- whether the delegate may use mutual credit and, if so, separate credit limits.
For either a clearing proposal
where
If no applicable delegation exists, the proposal remains pending until every affected participant explicitly approves it. Silence is not approval. If one participant rejects the proposal or its approval expires, the engine must either discard the entire atomic proposal or construct a new one and obtain fresh authorization. A signature for one proposal must not be reusable for another; the signed commitment should include the chain, contract, proposal nonce, expiry, and matcher or policy version.
Mutual credit relaxes the requirement that everyone receive their desired value within the same clearing cycle. A participant may receive now and compensate the network later. This requires an explicit unit of account. That unit is not the latent embedding or acceptance score.
Let the authoritative credit-ledger state at time
where:
-
$b_p(t)$ is participant$p$ 's balance; a positive balance means the network owes value to$p$ , while a negative balance means$p$ owes value to the network; -
$\ell_p(t) \ge 0$ is the maximum permitted debt, so normally$b_p(t) \ge -\ell_p(t)$ ; -
$u_p(t)$ is an optional positive-balance limit used to limit concentration; take$u_p(t)=+\infty$ when no such limit exists; -
$\rho_p(t) \ge 0$ is debit capacity already reserved by approved but unsettled proposals; -
$N_t$ is the set of consumed nullifiers or transaction identifiers; and - the unit and policy version identify the accounting, credit-limit, default, fee, and settlement rules.
The matching engine must not be the sole keeper of
Credit limits are ledger policy, not matching output. A transparent risk or
governance process may derive
A mutual-credit proposal must contain both real transfers and their agreed credit accounting:
where
For a transfer from
The affected set is
Consequently:
If balances begin with
Credit is therefore formed as a matched debit-credit pair. The matcher does not mint an unbacked positive balance. Fees, reserves, insurance pools, or write-offs must appear as explicit system accounts so that the conservation rule remains auditable.
Credit changes the participant's utility calculation. Let
The risk term now includes not only delivery risk but also the chance that positive credit cannot later be spent, counterparties default, governance changes the unit, or the network loses liquidity.
The feasible mutual-credit proposal space extends
Here
Call the entire left-hand side of the individual-rationality condition
where
A delegation that permits direct clearing does not automatically permit an
agent to incur debt. Credit delegation should separately limit the most negative
resulting balance, credit amount per proposal, cumulative exposure, units,
pricing ranges, counterparties, expiry, and settlement conditions. Without that
permission, each affected participant must sign
The full lifecycle is:
- Establish the unit and rules. Governance defines the unit of account, eligibility, credit-limit method, fees, default allocation, disputes, exits, and upgrade procedure before balances are created.
- Commit intent. A participant's private intent states whether credit is acceptable, their pricing or valuation bounds, maximum resulting debt, and repayment constraints. Any agent delegation is committed or registered separately.
- Read authoritative state. The matcher selects recent finalized ledger and history roots and reads or proves the relevant balances, limits, reservations, and permitted historical predicates.
-
Construct terms. The matcher finds
$Q=(X,A,T)$ , shows each participant their transfers, credit amount, projected balance, risk, and settlement conditions, and commits to the complete proposal. -
Validate. Deterministic code checks membership in
$\mathcal{F}_{\mathrm{credit}}$ . A ZK proof may show that committed private intents, balances, and historical records satisfy the rules without revealing them. -
Authorize and reserve. Participants or valid delegates sign the proposal.
The ledger records the offer reservation and atomically reserves enforceable
on-chain assets and debit capacity against the referenced state; stale or
conflicting proposals fail. For each participant whose proposed balance
change is negative, the reservation increases by
$\max(0,-\Delta b_p(Q))$ . The transaction must recheck the debt limit before recording this reservation. A physical item's availability remains an off-chain claim until custody or delivery can be attested. -
Deliver and finalize. Once
$T$ 's delivery evidence is satisfied, the ledger simultaneously credits providers, debits receivers, records nullifiers, and releases reservations. Failure or expiry follows the agreed rollback, partial-settlement, or dispute path rather than silently editing balances. - Recirculate or extinguish. A participant with a negative balance moves toward zero by providing value in a later proposal. A participant with a positive balance spends it by receiving value. Credit is extinguished as corresponding positive and negative balances return to zero.
For example, all balances may begin at zero. Ben repairs Alice's bicycle for 10
credits, producing
Positive credit is a claim on the future willingness and ability of the network to provide value, not a guaranteed external-currency deposit. Credit limits, collateral or loss reserves, default mutualization, dormant balances, account closure, and governance capture therefore need explicit rules. A participant with a non-zero balance should not be able to exit by abandoning the associated claim or obligation.
In a pure mutual-credit system, a positive balance is normally redeemed by spending it with another participant, not by demanding external currency from a central issuer. If the protocol promises conversion into an external asset, that is an additional reserve-backed redemption mechanism with separate custody, liquidity, and insolvency risks.
When a negative balance defaults, deleting only that debt would break the zero-sum invariant and leave positive balances unsupported. A pre-agreed default transition should therefore:
- freeze the defaulter's unused credit line and pending proposals
- apply posted collateral, guarantor commitments, or a funded loss reserve
- allocate any remaining shortfall according to an explicit rule—for example, a member assessment or proportional reduction of positive claims;
- record balanced entries between the defaulted account and the accounts that absorb the loss, and
- retain evidence, appeal deadlines, and governance authorization for the write-off.
Voluntary exit should normally require a zero balance, no open reservations, and no unresolved disputes. Transferring a non-zero balance to another participant is a novation: the receiving party and the ledger policy must explicitly accept the transferred claim or obligation.
The scalar balance
Labour provides an important historical example of this scalarization problem. Marx argued that commodity value is determined by socially necessary labour time and described skilled labour as "multiplied" simple labour, with the reduction between heterogeneous kinds of labour established through a social process.3 This is more qualified than saying that every literal hour of work has equal value as Marx's measure depends on normal production conditions and average skill and intensity. In the Critique of the Gotha Programme, he also considered labour certificates that permit a worker to draw from the social stock according to labour contributed, while emphasizing the limitations and inequalities of such an arrangement.4
For ledger design, the flaw in this reduction is not that labour time is irrelevant. It is the assumption that one social scalar unit can stand in for the settlement semantics of heterogeneous concrete obligations.
Nevertheless, reducing heterogeneous concrete labour to one quantity of abstract labour requires a scalar conversion that is contested and may be inadequate as protocol accounting. The treatment of heterogeneous labour is a recognized problem in formal critiques and reformulations of Marxian value theory.5 Time banks implement an even stronger operational rule when they value different services equally per hour. Empirical research has found that this "equal time, equal value" principle creates tension between participants with different motivations.6. A stronger protocol may need to capture unique and non-fungible outstanding claims that a scalar value might conceal.
Offers, wants, utility, and risk can represent why a participant would accept a
typed claim.
However, they may be insufficient in providing more
information about the nature of that claim.
Where a claim might affect future settlement right,
we need to consider a multidimensional
Can two ledger states have the same scalar balance but different lawful redemption, repayment, exit, or default outcomes?
If the answer is yes, the scalar balance is not a sufficient statistic for the
credit position.
If a feature changes only willingness to trade, expected
value, available capacity, or probability of failure, it belongs instead in
Suppose Alice provides ten hours of childcare to Bob, so Alice acquires a
childcare claim and Bob incurs the corresponding obligation. Chen then provides
Alice with ten hours of transport. If the protocol converts every service hour
to one scalar credit, Alice's two entries cancel and
Her typed position is instead:
The network still owes Alice childcare value, and Alice still owes the network transport value. These positions should cancel only if an authorized policy or exchange makes those services convertible. Bob has the matching negative childcare position and Chen has the matching positive transport position, so each coordinate remains conserved across the network.
Alice's offers and wants may change later, and her utility can value childcare and transport differently. Neither operation should retrospectively alter the settled claim. Keeping the service type in the authoritative balance prevents a nominally zero account from abandoning a real obligation and avoids promising that scarce and abundant skills are redeemable at an imposed hour rate.
Energy illustrates non-fungibility within what appears to be one physical unit. Ten kilowatt-hours generated at noon in a zone with excess solar supply may not be interchangeable with ten kilowatt-hours delivered during the evening peak in a congested zone. Storage losses, transmission constraints, and scarcity at the time and place of redemption can make the two claims operationally different even when a model assigns them the same current scalar value.
A position can therefore retain axes such as:
Offers describe where and when energy can currently be supplied, wants describe desired consumption, and utility and risk help decide whether to accept an energy claim. The balance records what was actually promised after that decision. A holder of an off-peak claim cannot demand peak energy merely because both positions were once valued at ten scalar credits. Conversion between zones or delivery windows must be an explicit, authorized transaction with declared rates, losses, capacity constraints, and any required reserve or system accounts.
Net participant balances can also hide the graph of obligations. Consider:
These balances could mean that
Let a non-negative edge position be:
where debtor
Risk may estimate the likelihood and consequence of each debtor's default, but the authoritative edge state determines who has a claim and who absorbs a loss. Retaining these edges changes the economic meaning of the system: it is a network of bilateral or transferable IOUs unless policy explicitly novates and mutualizes the obligations. When all defaults are genuinely borne by the network under one rule, counterparty provenance may be irrelevant to settlement and should remain in history and risk rather than in the balance.
Weather belongs in a credit balance only when it changes an agreed settlement payoff. If rain merely affects a farmer's present capacity or probability of repayment, it should change the farmer's offer, constraint, credit limit, or risk estimate instead.
Suppose a mechanic repairs a farmer's tractor now. They authorize terms under which the farmer owes produce-basket credits after a normal harvest but owes a smaller bundle of labour-hour credits after an independently attested drought. The mechanic holds the corresponding positive contingent claims. Before the weather outcome is known, their positions have dimensions for both the redemption type and the possible state:
Utility determines whether each party prefers this risk-sharing arrangement, and risk estimates the probability and reliability of each branch. Neither function specifies the enforceable payoff. The signed proposal and ledger position do. When an agreed oracle or adjudication process resolves the weather state, the ledger projects the position onto the realized branch and expires the alternatives according to the authorized terms. Every contingent coordinate must contain matched positive and negative entries before resolution; otherwise the tensor notation would conceal unbacked credit.
Let
with
Separate claim types are therefore a product of separately conserved ledgers, consistent with the rule that balances denominated in different units cannot simply be added. Cross-coordinate conversion requires an authorized exchange or a policy-defined transformation that records its rates, rounding, losses, and backing accounts. A participant may simultaneously hold positive and negative coordinates; there is no total ordering in which every tensor is simply greater than, equal to, or less than zero.
Scalar debt and positive-balance bounds must likewise become a typed admissible region. If reservations have the same shape as balances, feasibility can be written abstractly as:
where
When counterparty provenance is legally material, the fuller sparse obligation tensor is:
and
The coordinates of
- Declare intent. Participants provide structured offers, wants, constraints, privacy preferences, and credit terms. They separately register any agent delegation. Free text can supplement, but should not replace, the structured record that the participant reviews and signs.
- Retrieve candidates. Embeddings find semantically related offers and acceptable substitutes. Permitted historical features estimate acceptance, delivery, and settlement likelihood; hard filters remove impossible matches.
-
Construct a proposal. The solver produces either a clearing proposal
$X$ or, only for participants who accept credit, a mutual-credit proposal$Q=(X,A,T)$ tied to a finalized ledger root. - Validate. Deterministic checks or a proof establish that the proposal is in the relevant feasible space. For credit, validation also checks balance conservation, credit limits, reservations, and settlement policy.
- Explain and authorize. Each participant sees what they give, what they receive, the schedule, material risks, any credit entries, their projected balance, the material historical factors used, and why the proposal was selected. A valid delegate may approve only within its registered scope; otherwise the participant must explicitly sign.
- Reserve. Once every affected party is authorized, the ledger atomically reserves enforceable assets and, when applicable, debit capacity, while recording reservations against off-chain offers. A failed reservation invalidates the proposal rather than silently changing its terms.
- Deliver and settle. Escrow, deposits, staged delivery, or atomic settlement reduce the chance that one completed leg leaves another participant exposed. The ledger applies only the transition authorized in the committed proposal.
-
Record outcomes. The system records delivery quality, timeliness,
disputes, cancellations, mutually confirmed completion, and any finalized
balance change. Signed or attested outcome events are committed into the next
version of
$H_t$ ; later corrections or appeals add superseding events.
AI agents may help translate intent, discover substitutes, estimate risk, and negotiate within explicit limits. Deterministic code should enforce inventory, authorization, settlement, and other hard constraints.
Cryptography can prove that a record was committed, signed, not silently altered, and used by an agreed computation. It cannot by itself prove that an off-chain description of quality, delivery, or fault is true. The system therefore combines private, tamper-evident records with attestations, counterparty confirmation, disputes, and governance.
Each proposal produces zero or more versioned outcome events. A canonical event should contain or commit to:
- the proposal commitment and each participant's role in it
- asset or service category and the outcome context needed for future relevance
- completed, cancelled, expired, disputed, or partially completed status
- delivery timeliness and conformity to the agreed specification
- mutually confirmed facts, unilateral claims, and adjudicated findings as distinct fields
- signer or attester identifiers, evidence commitments, and confidence level
- event time, settlement time, dispute window, and policy version, and
- a reference to any earlier event that this event corrects or supersedes.
Raw evidence may remain encrypted off-chain. Let
Committed events should be append-only, but their interpretation need not be.
Corrections, appeals, and dispute decisions add superseding events. The active
view
The matcher derives context-specific features from the permitted active view of
History can affect a proposal in four separate places:
- Retrieval. The estimated probability of acceptance and delivery helps decide which candidate edges are worth exploring.
-
Utility.
$U_p(X;O_p,W_p,H_t)$ changes when expected quality, lateness, repeat-relationship value, or coordination cost changes. -
Risk.
$R_p(X;H_t)$ may combine non-delivery, quality, dispute, counterparty, settlement, and—for mutual credit—default and liquidity risk. Participant-specific$\lambda_p$ means the same evidence can affect people differently. -
Constraints. History excludes a proposal only when an explicit
participant or protocol rule in
$C_p$ requires a verified predicate. It is otherwise a ranking input rather than a hidden eligibility rule.
A proposal-level model may estimate:
Low
Historical use needs safeguards against feedback loops and unfair exclusion:
- distinguish absence of history from evidence of failure
- weight outcomes by recency, context similarity, attestation strength, and whether they remain disputed
- do not treat a complaint, cancellation, or adverse claim as fault without the status and evidence needed by policy
- provide correction, appeal, rehabilitation, and expiry or reduced weighting for old events
- penalizes Sybil resets and reputation farming without exposing unnecessary identity information
- exclude protected characteristics and unjustified proxy variables
- audit whether lower ranking creates a self-reinforcing lack of opportunity
- let participants inspect the material historical reasons for a proposal, rejection, deposit requirement, or credit-limit decision
Raw offers, wants, constraints, identities, and histories should not be written to a public blockchain. Instead, a participant can encode an intent using a versioned canonical schema:
and publish a randomized commitment:
The commitment is binding, so the participant cannot later substitute a different intent, and hiding, so an observer cannot recover the intent. A plain hash is not necessarily hiding: offers and quantities may have too little entropy to resist guessing. The protocol should use a reviewed commitment scheme with fresh randomness and domain separation. Many commitments can be batched under a Merkle root to reduce on-chain cost.
Later, the participant can either reveal
Historical proofs can use the same pattern. A participant might prove that the
active records under
A matching proof could expose only the public statement:
where
- every input opens a registered, active commitment under the intent root
- every historical feature or predicate is derived from active records under the referenced history root using the agreed event-selection, correction, and dispute rules
- every outgoing transfer is covered by an offer and no reserved quantity is reused
- all encoded participant constraints hold
- any encoded utility, risk, or acceptance calculation used by
$M$ applies the identified history-model version to the committed inputs - a clearing proposal belongs to $\mathcal{F}{\mathrm{clear}}$, or a credit proposal belongs to $\mathcal{F}{\mathrm{credit}}$ under the referenced ledger state
- for credit, the balance changes conserve the unit, respect limits and existing reservations, and produce the committed next-state values
- the proposal committed by
$c_Y$ is the exact output of the agreed version of$M$ , including its tie-breaking rule, and - nullifiers or reservation identifiers prevent the same offer from settling twice.
Individual rationality can be proven only to the extent that preferences and
thresholds have been encoded in the committed intent. The proof does not replace
consent. The matcher should send
Commitments and proofs establish consistency with committed data and code. They do not establish that a physical item exists, a service was performed, or a participant's original claim was truthful. Those facts require mutually signed receipts, trusted or decentralized attestations, and a dispute process. An outcome commitment can later be selectively opened to an arbitrator or used to prove a reputation predicate without publishing the underlying evidence.
A deliberately small and deterministic matching function is a good candidate for [EZKL]7 as such risk models can be easily implemented in PyTorch and represented as ONNX. It can prove that a particular model produced a claimed output from committed inputs and supports verifier generation for EVM applications. Such a proof demonstrates correct model execution but does not demonstrate that the model is accurate, unbiased, robust, or trained on honest data.
To keep proving tractable, an initial matcher should use:
- integer or fixed-point arithmetic with explicit bounds;
- a fixed maximum number of participants, items, and candidate edges per batch;
- cycles of bounded length and a deterministic tie-breaker;
- a public matcher binary or model hash, schema version, and policy version; and
- a small public output containing only the proposal commitment and facts required for settlement.
Natural language interpretation and unconstrained agent negotiation should stay outside the proved core. An agent may translate a request into structured fields, but the participant should inspect and sign the resulting commitment. Before selecting a proving stack, benchmark proof time, memory use, proof size, on-chain verification cost, recursion or aggregation, and the security maturity of the exact versions used.
Zero knowledge hides witness data from the verifier, but a conventional prover
still receives the private inputs. If no single matching operator should see the
combined order book, participants can secret-share their intents among an MPC
committee. The committee jointly evaluates
One possible composition is:
- Each participant commits to an intent and distributes authenticated shares whose reconstruction is consistent with that commitment.
- The MPC committee privately checks candidate compatibility and computes the deterministic matching function.
- The committee reveals the proposal only to affected participants and posts a proposal commitment.
- A publicly verifiable proof links the committed inputs, agreed matcher, and proposal commitment; the participants then approve settlement
MPC does not automatically produce a succinct, publicly verifiable proof, and a zkVM does not automatically support distributed witness generation. Their composition needs an explicit protocol rather than an assumption that the two systems can simply be connected. The design must state its corruption threshold, semi-honest or malicious security model, collusion assumptions, availability requirements, and behaviour when a committee member aborts.
The chain should contain only what shared verification and settlement require:
- commitment or Merkle roots and their schema versions
- intent, historical record, and attestation registry roots
- matcher, history model, credit policy, and verification key identifiers
- finalized credit ledger roots or public balances, depending on the privacy model
- expiries, nullifiers, inventory and debit reservations, authorization records, and proposal commitments
- proofs or proof verification results; and
- minimal settlement receipts and adjudicated dispute outcomes
Encrypted off-chain storage should hold raw intents, commitment openings, private balance and credit-limit openings, identity information, detailed outcome events, attestations, model features, messages, and dispute evidence. Derived risk scores should be recomputable outputs tied to a model and history root, not permanent facts copied into every record. Even hiding commitments leak metadata such as timing, frequency, and wallet links. Batching, relayers, short-lived exchange keys, delayed publication, and careful event design may reduce that leakage.
A credible protocol also needs:
- explicit consent and revocable delegation
- an appeal and correction process
- versioned rules for historical inclusion, context, decay, and dispute status
- purpose-limited access to private records
- resistance to fake identities, collusion, and reputation farming
- transparent fees, ranking criteria, and governance changes
- jurisdiction-specific review before supporting regulated goods, labour, credit, tax reporting, or securities claims.
The smallest useful prototype would avoid credit and on-chain identity while testing commitments and proofs:
- Define canonical, versioned schemas for intents, proposals, and outcomes, including commitment randomness, expiry, and nullifier handling.
- Start with divisible goods or clearly specified services in one local community.
- Generate direct matches and cycles of at most three or four participants.
- Record canonical outcome events, including confirmations, disputes, and corrections, and derive a versioned test history root.
- Start with inspectable historical features such as confirmed completion count, category, recency, and uncertainty. Test cold-start and disputed-record behaviour before introducing learned utility or risk models.
- Use a deterministic solver for feasibility and a simple, inspectable ranking function.
- Commit a batch of private test intents, prove the resulting proposal locally, and verify it against the commitment root before attempting on-chain verification.
- Require unanimous approval, then simulate reservation, settlement, failure, and rollback. Add MPC only after the single-prover statement is stable.
- Measure match rate, participant surplus, completion rate, time to match, cancellation rate, probability calibration, cold-start access, distributional fairness, and explanation quality.
Add credit only after clearing, authorization, and settlement are stable:
- Use a closed test group, one non-convertible unit, zero initial balances, and manually governed fixed credit limits that the matcher cannot change.
- Implement the ledger state machine for proposing, authorizing, reserving,
expiring, finalizing, disputing, and releasing
$Q=(X,A,T)$ . - Add invariant and state-machine tests proving that balances sum to zero, debt limits include concurrent reservations, nullifiers cannot be reused, and unauthorized transitions fail.
- Require explicit participant signatures for every credit proposal before introducing any delegated authority to incur debt.
- Simulate partial delivery, stale state roots, matcher equivocation, committee aborts, default, loss allocation, and attempted exit with a non-zero balance.
- Introduce scoped credit delegation, then test revocation and cumulative exposure limits under concurrent proposals.
- Only after the plaintext reference ledger is auditable, replace balances and limits with commitments and prove the same transition rules in ZK. Add MPC when hiding the combined inputs from the prover becomes a measured need.
- How should the system elicit preferences without requiring participants to reveal sensitive information or inviting strategic manipulation?
- How can it compare heterogeneous goods without quietly recreating a single market price?
- Which fairness rule should govern conflicts between total surplus, equal access, and the inclusion of new or low-reputation participants?
- How should context, recency, uncertainty, disputes, and rehabilitation change
the effect of historical outcomes on
$U_p$ and$R_p$ ? - How can the system resist Sybil resets and reputation farming without making private identity or a permanent global reputation score mandatory?
- How should a multilateral exchange unwind after partial delivery?
- Which commitment scheme and canonical encoding best balance hiding, circuit efficiency, on-chain cost, and long-term auditability?
- Can an MPC matcher and publicly verifiable proof be composed with acceptable latency, cost, leakage, and resilience to aborts?
- Which real-world attestations are credible enough to update reputation while still permitting correction, selective disclosure, and appeals?
- Under what conditions would mutual credit add value beyond exchange clearing, and who would absorb default losses?
The model uses the following conventions:
- Uppercase symbols generally denote sets, structured records, proposals, or functions; lowercase symbols generally denote individual entries or scalar values.
- A subscript identifies the participant or entry to which a value belongs. Arguments after a semicolon identify contextual state, such as history or the credit ledger, rather than a choice variable.
-
$X$ is a clearing proposal,$Q$ is a mutual-credit proposal, and$Y$ means either proposal type when the same rule applies to both. -
$R$ denotes risk. Lowercase$r$ denotes fresh commitment randomness; these symbols are unrelated. - Every schema, policy, feature function, and model is versioned even where the version is omitted from an equation for readability.
| Symbol | Meaning |
|---|---|
| Set of participants, including explicit protocol accounts when required for balanced accounting. | |
| Participant indices. In a directed transfer, |
|
| Set of asset or service types. | |
| Asset or service-type index. | |
| Index for an outcome event or a credit-accounting leg, according to context. | |
| Decision or ledger time; |
|
| Versioned historical state permitted for a decision at time |
|
| Relevant network history for participant |
|
| Relevant direct or relational history between participants |
|
| Authoritative mutual-credit ledger state at time |
| Symbol | Meaning |
|---|---|
| Participant |
|
| Quantity of type |
|
| Collection of all participants' offer records. | |
| Participant |
|
| Collection of all participants' want records. | |
| Hard constraint predicate declared for participant |
|
| Collection of all participant constraints. | |
| Utility that |
|
| Utility gain relative to not executing the proposal. | |
| Risk that |
|
| Delivery, settlement, liquidity, and credit risk that |
|
| Proposal-level aggregate settlement risk used by the clearing objective. | |
| Participant |
|
| System-level weight on aggregate risk in the clearing objective. | |
| Participant |
|
| Transparent welfare weight assigned to participant |
|
| Operational-complexity penalty for proposal |
|
| Weight applied to proposal complexity. | |
| Weight applied to systemic credit risk. | |
| Systemic-risk penalty for the proposed next credit-ledger state. | |
| Estimated probability that all required approvals and deliveries for |
| Symbol | Meaning |
|---|---|
| Clearing proposal: a set of directed real-asset or service transfers. | |
| Quantity of type |
|
| Total quantity of type |
|
| Total quantity of type |
|
| Participants affected by at least one transfer in |
|
| Feasible and individually rational clearing-proposal space. | |
| Highest-ranked clearing proposal under the stated objective. | |
| Learned embedding of |
|
| Learned embedding of an offer or want of type |
|
| Estimated pairwise acceptance-and-delivery score for proposal |
|
| Generic proposal variable: either clearing proposal |
|
| Signed delegation policy defining what an agent or matcher may approve for |
|
| Randomized commitment to the exact generic proposal |
|
| Predicate that is true when |
|
| Clearing proposals that are feasible and authorized by every affected participant. |
| Symbol | Meaning |
|---|---|
| Mutual-credit proposal containing real transfers, credit entries, and settlement terms. | |
| Set of directed credit-accounting entries in |
|
| Non-negative credit amount assigned from receiver |
|
| Set of transfer-linked and policy-defined accounting legs in |
|
| Reservation, delivery, finalization, expiry, partial-settlement, and rollback terms. | |
| Credit balance of |
|
| Vector of all participant balances at time |
|
| Net balance change proposed for |
|
| Policy-defined set of non-scalar credit claim types. | |
| Policy-defined set of maturity or delivery buckets for non-scalar credit. | |
| Policy-defined set of objectively resolvable contingencies. | |
| Typed, dated, and contingent net credit position of participant |
|
| Gross obligation on which |
|
| Change to one coordinate of a non-scalar credit position proposed by |
|
| Admissible region for |
|
| Maximum permitted debt magnitude for |
|
| Vector of participant debt limits. | |
| Optional positive-balance limit for |
|
| Vector of positive-balance limits. | |
| Debit capacity already reserved for approved but unsettled proposals involving |
|
| Vector of all debit reservations. | |
| Set of consumed nullifiers or transaction identifiers at time |
|
| Value or expected burden that participant |
|
| History-conditioned, credit-adjusted surplus of |
|
| Human and protocol accounts affected by transfers or balance changes in |
|
| Feasible and individually rational mutual-credit proposal space. | |
| Highest-ranked mutual-credit proposal under the stated objective. | |
| Commitment to |
|
| Credit proposals that are feasible and authorized by every affected participant or protocol account. |
The credit-ledger tuple is:
It packages the credit variables with the unit of account and the rules governing limits, defaults, fees, and settlement.
| Symbol | Meaning |
|---|---|
| Canonically encoded private intent of participant |
|
| Canonically encoded historical outcome or attestation event |
|
| Fresh secret randomness used respectively for intent, historical-event, and proposal commitments. | |
| Commitment to participant |
|
| Commitment to historical event |
|
| Versioned Merkle root committing to recorded historical events by time |
|
| Canonical, versioned serialization used before committing to structured data. | |
| Hiding and binding commitment to message |
|
| Function that batches commitments into a single authenticated root. | |
| Versioned deterministic matching or validation program whose execution may be proven. | |
| Predicate verifying that participant |
|
| Predicate verifying that |
|
| Predicate verifying the named delegate's approval of |
|
| Public verification statement linking state roots, matcher version, epoch, and proposal commitment. | |
| Public root committing to the active batch of private intents. | |
| Public historical-state root; normally |
|
| Public commitment to |
|
| Hash or identifier of the exact matching or validation program and configuration. | |
| Bounded validity period in which the proof and referenced roots may be used. | |
| Probability under the identified, calibrated statistical model. |
Footnotes
-
Adam Smith, An Inquiry into the Nature and Causes of the Wealth of Nations, Book I, Chapter II (1776); see also Chapter IV. ↩
-
David Graeber, Debt: The First 5,000 Years, Chapter 2, "The Myth of Barter" (2011). The earlier Toward an Anthropological Theory of Value: The False Coin of Our Own Dreams (2001) develops related arguments about value and exchange. ↩
-
Karl Marx, Capital, Volume I, Chapter 1, sections 1 and 2 (1867), on socially necessary labour time, concrete and abstract labour, and the reduction of skilled labour to multiples of simple labour. ↩
-
Karl Marx, Critique of the Gotha Programme, Part I (1875), on labour certificates, deductions from the social product, equal right, and inequality in the first phase of communist society. ↩
-
Samuel Bowles and Herbert Gintis, "The Marxian Theory of Value and Heterogeneous Labour: A Critique and Reformulation", Cambridge Journal of Economics 1, no. 2 (1977): 173--192. ↩
-
Patrick C. Shih, Victoria Bellotti, Kyungsik Han, and John M. Carroll, "Unequal Time for Unequal Value: Implications of Differing Motivations for Participation in Timebanking", Proceedings of CHI 2015 (2015): 1075--1084. ↩
-
Antigoni Polychroniadou et al., "Prime Match: A Privacy-Preserving Inventory Matching System", 32nd USENIX Security Symposium (2023). ↩