I can see smart contract tools continuing to evolve to help draft or validate contract language. There are some enterprise contract management systems that do some this already. But, if things go sideways, IRL facts have to be interpreted in view of the contract you will still need lawyers and courts.
Also, not sure how equitable grounds for breach could be accounted for. A person can have the law (contract, statutes, etc.) squarely on her side and still lose a case because of equitable reasons that are not anticipated by the contract or statutes at play.
2 + 2 doesn't always equal 4 in a court of law.
And, if such systems become available, it seems unlikely that contracts will more understandable to layman. Instead of trusting their lawyers or legalese, people will have to trust the code/proofs.
edit: typos 2x
The lambda calculus, the SK combinator calculus and Turing machines are all very "simple" languages, but suffice to describe any computable function. There is also no ambiguity in their execution. Lack of ambiguity is exactly one of the benefits of smart contracts.
> Legal documents are complicated because we live in a complicated world.
Legal documents are complicated mostly because natural language is ambiguous, thus requiring considerable verbosity. Programming languages, and specifically smart contract languages, can be designed to be unambiguous, and thus avoid one significant complicating factor.
> If it was easy to do, it would be easy to do.
First, no one said it was easy.
Second, computers haven't even been around for a century. The earliest conceptions of smart contracts were in the mid to late 90s IIRC. That's barely 20 years. Are you advancing the argument that if we haven't solved a problem in 20 years which took millennia to solve via social institutions, then it's unsolvable?