From Facebook:
LIBERTARIAN ANSWER MAN TIME
Smart Contracts discussion with a libertarian friend, B:
KINSELLA:
… it’s not smart, and it’s not a contract. It’s just code as far as i can tell. You ever coded? It’s just a bunch of defined if-then instructions.
B:
And what is a contract, pray tell?
KINSELLA:
If-then instructions that are legally enforceable.
B:
Conventional contracts are if-then instructions that sometimes use a third-party for interpretation and/or enforcement.
So-called “smart” contracts are if-then instructions that use pre-agreed neutrally-observable data (i.e. the Fed’s prime rate at a certain time and date) and/or m-of-n parties’ interpretation for self-enforcement.
KINSELLA:
Right and as I’ve said many times the use case is narrow because most conditions are more nuanced and require words and language and interpretation. Plus they usually apply to real assets that digital code can’t touch. Plus most contracts don’t allow for escrow which smart contracts need.
But notice now you ARE saying smart contracts are a type of contract where half the time the people using this term retreat and say it a not a legal contract. So which Is it.
B:
Yes, but it’s not impossible to avoid this in some and perhaps eventually, many use cases.
KINSELLA:
No. 99% of contracts are not automatable. You give up too much. If you saved something to balance it out, maybe. But you don’t. It solves no problem. Bitcoin SOLVES A PROBLEM (as explained here: https://www.facebook.com/nskinsella/posts/10158404058053181; appended below): 1 money solves the problem of barter: the double coincidences of wants problem and the inability to engage in rational economic calculation (which requires free market prices). But the state has taken over money and has made it inflatable. Bitcoin solves this problem because it can’t be inflated, because of its decentralized nature. So we need money (thus gold, then dollars); and we need a sound money (thus bitcoin). But contracts work fine. What “problem” do smart contracts solve? What problem do NFTs solve? None that I can see. It’s all bullshit and hype.
B:
That’s mostly true at the moment, but there is no reason in principle why title transfer of real assets couldn’t eventually be executed on-chain, e.g.:
KINSELLA:
But what is the advantage to doing it this way other than ”it’s cool”? It doesn’t solve any real problem.
B:
“No. 99% of contracts are not automatable.”
That’s true- RIGHT NOW. But there are many fine details that can be automated.
For example, sometime in the future, the buyer and seller of a home engage Legal Services, Inc for a Purchase-Sale Agreement and choose a “PSA” to their mutual satisfaction. Then the buyer engages Mortgage Brokering Service, Inc that digests the industry-format PSA smart contract language which then suggests suitable lenders and their specific requirements to lend at whatever leverage and rate based on the borrower’s financials, required insurance coverages, appraisals, etc.
After committing to Mortgage Bank Lender, Inc, the buyer executes Mortgage Agreement smart contract (“MA”) which merges with the PSA contract function to oversee the transaction. The MA function may have survey, title and home insurance requirements file which the buyer submits to Home Insurance, Inc (or a brokerage) to purchase a homeowners insurance policy that meets the MA requirements, and which perhaps hires a home inspector. The home inspectors report may require a higher payment from the borrower or a decrease in the sales price, etc, whatever they agreed upon in the PSA when the report is submitted to the PSA’s smart contract function.
Yadda yadda yadda until the PSA-MA contract functions conditions are satisfied and the escrowed funds are released to the seller’s wallet while the title to the property is signed to the buyer’s public wallet address.
It honestly does sound like pie-in-the-sky at this stage, but that’s a basic framework of what eventually can be automated. Closings can be a matter of hours instead of months (e.g. if the lender forgoes a home inspection requirement).”
KINSELLA:
“That’s true- RIGHT NOW. But there are many fine details that can be automated.”
I disagree. But then I’ve negotiated, written, and enforced thousands of actual, real-world contracts, so nevermind me.
“For example, sometime in the future, the buyer and seller of a home engage Legal Services, Inc for a Purchase-Sale Agreement and choose a “PSA” to their mutual satisfaction. Then the buyer engages Mortgage Brokering Service, Inc that digests the industry-format PSA smart contract language which then suggests suitable lenders and their specific requirements to lend at whatever leverage and rate based on the borrower’s financials, required insurance coverages, appraisals, etc.”
But why would they do this? They can do it now with existing legal structures. What is the advantage? I see only downside and no upside.
“Yadda yadda yadda until the PSA-MA contract functions conditions are satisfied and the escrowed funds are released to the seller’s wallet while the title to the property is signed to the buyer’s public wallet address.”
You are talking like a Rothbardian Space Cadet who thinks it’s “neat” that we “can” somehow simulate normal contracts in code. So what. This is like [x] in the day ridiculously musing that we should just phrase all our arguments in symbolic logic. GEE I WONDER WHY THIS NEVER TOOK OFF
B:
I agree with you that much of this is “fine”, as-is to a large degree at the present which is why I am skeptical of a radical departure, and I believe that there are so many pieces of the chain that will have to work perfectly together from day one, and that you cannot launch this piece-meal, or have it initially limited to very small economic functions.
But I don’t confuse my skepticism for a dismissal of the “smart contract” concept en totale.
KINSELLA:
I don’t dismiss it either, just the hype and ignorance around it. I think that over time more things will become automated with forms, AI, arbitration, even automation, but it will develop incrementally and in the end its use case will be very narrow. This is because most people don’t understand a few things:
1. most contracts are very complicated and require verbal language (words) to express the terms (and can’t be done with simple symbolic logic; if anything contractual verbiage gets more nuanced and complicated over time, not simpler) and arbitrators/judges/courts to decide when there is a dispute.
2. most contracts involve real world assets, not digital ones, so can’t be fully automated
3. most contracts do not have an escrow component, that is, what you owe in the future is uncertain and even when it’s certain, the thing owed doens’t exist yet and may never exist. So there is now way to automate how to handle uncertain future conditions.
Contracts just set up a framework for how to decide who owns some uncertain future assets, and who decides it, and how to enforce. This cannot be automated–or, even if or to the extent it can, it doesn’t solve any real problem that needs solving. It’s just “neat” and might attract nerds who like to watch Star Wars but no one in the real world cares about this shit
APPENDIX
FACEBOOK POST https://www.facebook.com/nskinsella/posts/10158404058053181:
Stephan,
I’m a big fan of your writing, and especially liked your fantastic book ‘Against Intellectual Property’.
I’ve been part of the Bitcoin space from before the words ‘cryptocurrency’ and ‘smart contract’ were invented and gave this ‘smart contract’ idea some thought when it first came up.
I agree with your conclusion but there are stronger arguments to be made.
‘Smart contracts’ are logically impossible to implement except for contracts that ONLY contain a cryptocurrency itself (see below). And even there the use cases are really limited, and one could argue these working cryptocurrency contracts should not be called contracts.
The problem with smart contracts is that one tries to merge the digital with the analog world, which is simply impossible without an authority to decide what takes place in the physical space. This may seem like an overly esoteric philosophical debate, but there is no objective truth in our world. Even the seemingly most objective truths are open to interpretation.
1. “Most contracts are very complicated”. The complexity of contracts is irrelevant. Even the simplest of contracts cannot be governed by a ‘smart’ contract.
“Did the car drive through a red light?” seems a simple enough question but isn’t. Even if filmed by a dozen cameras, no computer program can answer this question. What constitutes driving through a red light? Should the car’s nose be on the intersection when the light turns red? Or the car’s rear? What if the light malfunctioned and both the green and red light were highlighted? What if the car was hit by a truck from behind and was pushed into the intersection?
Suppose the car was indeed pushed into the intersection by a truck and the “oracle” – represented by multiple cameras – takes cryptocurrency from the driver’s address to the crypto address of the city authorities by use of an escrow system (a 2-of-3 escrow is the only way a third party could access your funds). One week later a judge overrules the smart contract and orders the city to reverse the payment. It turned out that “code is law” was but a pipe dream and that “law is law” was reality. What use was the blockchain in this scenario? Answer: the blockchain had no use whatsoever and was a waste of energy. This initial transaction could have been done by using a simple database.
2. “Most contracts involve real world assets”
The fact whether an asset is physical or digital is irrelevant. Even digital assets cannot be governed by smart contracts. Digital assets are but a string of numbers. The enforcement of digital property (e.g., screening a movie, copying a JPEG) is done by real-life persons, usually following the decision of a judge, who will make his own judgment and discard the “code as law” from the blockchain, thereby making the blockchain contract completely useless.
As with the red light example, consider the example the ownership of a JPEG. Suppose for the sake for argument the unlikely case where a judge recognizes a random blockchains’ smart contract. A thief copy-pastes the JPEG and shows it to a friend or prints it on T-shirt. Then what? Will the judge order compensation? What if the ‘thief’ only copied half of the JPEG? A fourth? One pixel? What if the ‘owner’ of the JPEG stole it first from our supposed ‘thief’, the latter one having created the picture, had legal copyright but didn’t put it on the blockchain? What if the real creator had copyright in one country but not another?
Again, even the enforcement of digital assets requires physical enforcement, and physical enforcement can’t be controlled by a digital contract.
The one exception is cryptocurrency itself, where ownership is determined only by the collective will of the participants to adhere to the rules of the protocol. The advantage is that – unlike home ownership or intellectual property -, cryptocurrency only exists digitally (for all practical purposes, as even digital assets rely on analog electric signals), and are only enforceable by the protocol (again, for all practical purposes).
Even there, if in some way one authority could convince all Bitcoin participants to regard my Bitcoins as invalid, then that could be done. See for example the Canadian government trying to “block” access to the truckers’ bitcoins.
Economic incentives and game theory however ensure that it will be practically impossible to convince all participants to follow this authority instead of the protocol philosophy, and as such the Canadian government failed in this regard. In the meantime, the bitcoins of the truckers already have been accepted by other participants of the network.
3. “Most contracts do not have an escrow component”
Even if all contracts would have an escrow component, then smart contracts would still be useless (see my arguments from above).
You wrote: “Contracts just set up a framework for how to decide who owns some uncertain future assets, and who decides it, and how to enforce. This cannot be automated–or, even if or to the extent it can, it doesn’t solve any real problem that needs solving. It’s just “neat” and might attract nerds who like to watch Star Wars but no one in the real world cares about this shit”
I disagree that nobody would care about it – if it would be possible in any way. Unfortunately for the venture capital firms who have poured billions into this dumb idea, it simply isn’t possible. Contracts CANNOT be automated, not in part or in full, except for some limited cryptocurrency contracts without real-life linkage like a 2-of-3 signature Bitcoin transaction, which barely could be called contracts.
The questions one should ask are
1. Can a judge overrule the smart contract execution and force parties of a contract to (partially) reverse the action?
2. Is any part of the contract open to any sort of interpretation?
If the answer to any of these questions is yes, then the smart contract is useless, and the parties would have been better off writing up the contract in a pdf file.
To summarize: smart contracts are a useless hype. I consider the enthusiasm into smart contracts to be a litmus test to indicate those who hasn’t done his homework or who is in it for the easy VC money (the large majority being in the both categories).
I like the cut of your jib. Anyone even more skeptical than I am of smart-contract horse-shit is my kinda guy.