When we discuss smart contracts and their applications, it seems like we’re trying to automate all the things right away, with less focus on what the steps we can take to get there are. Over time, we will be able to develop better and better smart contracts as folks templatize and test, but we will still want to include human judgment in plenty of contracts. One such example: Chip Morningstar pioneered the idea of a Split Contract, a contract composed of both software and prose. Many interesting contract features were included like templating, prose/automation hybrid, human arbitration, and co-designing contractual arrangements upfront. Many of these features are now coming live. For instance, Legalese is creating computational law to democratize contract writing, and Kleros is a decentralized arbitration service for increasingly international dispute resolution.
This meeting is part of the Intelligent Cooperation Group and accompanying book draft.
Chip Morningstar, Agoric | AMIX: Split Contracts
- Chip was involved in AMIX in the late 1900s, when there were services known as “online information services.” These services usually either charged hourly for access to information being shared by others or charged for information the service itself was providing.
- AMIX’s big idea was to let users sell stuff to each other. The big marketing challenge was how to get across to users that they may MAKE money using this service!
- In running the exchange, we learned some things
- To come to an agreements around information sales and purchases, it was found that a mix of machine-automated and human interpretation were going to be necessary to capture the complexities of the arrangements.
- Example: I hire you to do a marketing study!
- We see that some stuff can be done by machines (like delivering the files and transferring payment) and some stuff cannot (like… the actual study content).
- We see that some stuff can be monitored by machines (like delivery date) and some stuff cannot (like deliverable quality).
- This situation calls for a “mixed” contract: some automated and some human interpretable prose. To arrive at such a contract, a process of Structured Negotiation was developed.
- Through Structured Negotiation, contract terms are arrived at through negotiation, with agreements and commitments captured along the way. Just as with traditional contracts, much of the bulk of the document will be concerned with what to do when things go wrong, up to and including renegotiation clauses.
- You end up with a fully structured mixed contract and an historic audit trail of how the contract took shape, which can dramatically lower the cost of dispute mediation. When you lower the cost of dispute, you lower the risk in engaging in the contract, which hopefully leads to wonderful arrangements!
Context is King
- In the world of digital information, it can be tricky to give a customer a good idea of what they’re getting without actually giving it to them. The key is as much contextual metadata as possible.
- Show and tell: an AMIX contract from 1984
- Amazing that we now how Reddit, UpWork, Fiverr, and other on demand information markets that make things so easy
- Something key from the AMIX contracts: “Change in Defaults” AKA what happens under inaction? Could you talk about this?
- Chip: In some situations you would have automated payments set up, which could default to “approve.” This puts the onus of action on the payer not the payee. The provider can worry less about flaky clients, and the customer can set it and forget!
- Seems there’s a natural synergy between mixed contracts and Agoric’s “Higher Order Composability”. As those options move from place to place, you could renegotiate the contract a little bit in automated fashion: have you thought about this?
- Chip: Back in the day we were very much constrained by technology that could do that, we were building it all custom. The dispute mediation process is sort of an example of this: it’s using the contract framework turned in on itself to handle issues.
- This is a space that has not been well-explored because there are not a lot of vehicles for that exploration yet.
- Was AMIX running a huge dispute system? Jurors? How was this actually done?
- Chip: Well, there weren’t THAT many disputes that required arbitration. The common complaints and failure modes were handled by the negotiated contracts and the architecture of the market application itself.
- For the disputes that did require mediation, we worked with professional dispute service companies to engage mediators. They were given the information about the contract and the parties and made decisions.
- This did not happen very much, in large part because of the pathways for recourse precluded the need to trigger it.
- same idea: The offer of the bonus does the lifting, not the bonus itself, much like bank insurance prevents bank runs with peace of mind.
- What did the legal world think of AMIX at the time? In my experience with smart contracts recently, the legal world is quite dismissive of smart contracts.
- Chip: We may not have actually used the term “contract” to identify these agreements… We talked about agreements, negotiation, other legal terms. We had a layman-accessible customer agreement that customers entered into when using the platform as well.
- We did talk to lawyers about the potential impact of these ideas on law: the ones we talked to were intrigued (though there may be a selection bias)
- The term “split contract” was developed later on to differentiate these hybrid contracts in the AMIX-style from the “smart contracts” being worked on by Nick Szabo.
Meng Weng, Legalese | Computational Law
- Legalese: picked up funding from the Singaporean government to develop a DSL language for building legal contracts
- Decades of research on the intersection of CS and law exist, we’ve been reading it all!
- We’re building plugins for VSCode and everything.
- “We begin with the observation that legal text is the ultimate
pseudocode. It’s, if you think about it, it’s kind of a self-modifying
specification language with arbitrary system calls to the real world.
And the weird thing about this language is that it’s interpreted not by
machines, but by humans.”
- “And coming from a software background, all of this struck me is
just absolutely perverse, and also an opportunity. Because, you know, as
a programmer, I’m used to having all these tools available to help me
do my job, right. And, you know, this, this isn’t even the stuff that
that is my actual job. This is all the infrastructure surrounding how I
do my job. And you know, sometimes they get in the way, but when they
work, they are pretty powerful. And if you think about law, right, what
does the legal stack look like? What do lawyers use, right? You’ve got
Microsoft Word, and your most advanced technology is track changes,
right? Like if there was a language, you’re still using Latin half the
time, that is how slow things are, that’s 2000 years old.”
- “We look at the Legal Tech Challenge from this perspective, and we
think that every gap in this chart is an opportunity. Stacks are built
from the bottom up. So our approach is to build a language, you know,
some might call it programming language, but it’s really a specification
- This is a working program: it has a compiler and an interpretor and all that jazz. It can be interpolated!
- Every clause follows
- Can we listen in on your Stanford class?
- I’ll send out links!
- Can there be cycles?
- Kind of yes, if there is some sort of infinite recurring state you could have an auto-renewing contract which makes a cycle
Federico Ast, Kleros | Decentralized Arbitration
- Contracts are ambiguous and humans are needed for
solving disputes. Smart contracts can self-execute, but can’t resolve
human disputes between folks.
- Kleros is a DAO that engages with third-party jurors to make a decision on a dispute that has been sent to the service.
- Who are these jurors and how do you choose them?
Anyone can purchase PNK tokens and stake to entered into being drawn as a
juror based on topics you self-report as having some expertise in.
- How do you make sure these anonymous jurors actually
behave well? Having your purchased tokens staked creates some amount of
skin in the game, so as not to lose your stake.
- When a juror votes for a resolution, if they don’t
vote with the majority of jurors then they lose their stake. This tends
to surface correct dispute responses and cost bad actors in the network
more than they’ll make.
- Thomas Schelling laid out ideas around “tacit
coordination”: focal points in the decision landscape that shape how
people coordinate when they have no ability to communicate amongst each
- Example: The Biden-Trump prediction markets. When
election day came, the decision was not clear… so the prediction markets
were called into question as to whether they still held.
- Example: Uniswap uses Kleros to filter tokens listed on the exchange for scams and garbage.
Kleros acts as a court DAO for other DAOs 🙂
They say in the old South, you better vote like the
other jurors or you’ll get run out of town. But if you had to buy in to
that jury… it creates strange incentives for a group of market
participants to collude to win money and make others lose the game.
Those are my concerns…
- Federico: There is an appeals process for disputing
resolutions, brining in a whole new batch of jurors. If the first batch
colludes to win, they’d need to take into account how the second round
will decide, and the potential third round, etc.
- Well, it’s not really a sample of the whole community,
it’s a sample of the people who decided to buy jury tokens and play the
- Federico: In our ~600 cases so far, we have not run into any issues around this.
- One thing folks have always done with prediction
market: they never really “resolve” the market, they just let the final
market price decide
Runway effects: Kleros relies heavily on feedback in
the system. If you make your decision in line with others, you get more
tokens, which makes you more likely to get chosen in the future. If the
Supreme Court had this setup, a minority opinion could become federal
law… is there a way to “reset” the system?
- Federico: There will be situations where you think
voting the “real” solution will actually not be in line with the
majority, so you may not get paid out that round. But if the decision is
appealed and you turn out to be right, you get paid out even MORE to
- So, I’ve been a Kleros juror on a case where the
“real” solution was not clear: it was a fuzzy matter of opinions. Since I
lost, I lost my tokens and therefore my influence over the decisions.
If this continued, I could see a situation where everyone that agreed
with me would be slashed out of the system. Is there a way to mitigate
- Federico: If we get into a situation where the system
is under malicious attack, users buy tokens and push decisions that they
want, but there are high costs to this.
I’m worried that jurors choose the “conventional” answer as opposed to the “best” one…
- Federico: If there’s a bias across the whole population of jurors, then Kleros just won’t help there probably.
- What Kleros is good at is creating an international
court of jurors to alleviate some of that geographic or cultural bias.
It’s for settling disputes that are high volume and lower value, it
won’t handle the nuanced or very niche situations really.
Looking at other pre-blockchain prediction markets,
and thinking about groups of jurors as representing different legal
theories, it seems that the market should define juror selection per
- Federico: We have some ideas! Maybe jurors can also
vote on how they think the other jurors will vote. Either way, now that
we have a pool of verified human jurors, we can begin to experiment with
how to shape the juror pools for best effect.