As Song correctly observes, smart contracts do not have anything to do artificial intelligence. What makes them “smart” is merely that they can be embedded in hardware and software. (To be clear, there is no requirement that they be entirely embedded in hardware and software.) Furthermore, there is no requirement that they be run on a blockchain. Originally, they were to be run on trusted secure servers.

For Szabo, smart contracts were important because they could radically reduce “mental and computational transaction costs.” In other words, traditional contracting makes certain kinds of agreements expensive, sometimes prohibitively so. By lowering transaction costs, smart contracts could make entire categories of human interactions much easier to accomplish, and enable others for the very first time. It is by this metric that smart contracts should be judged, not the impossible feat of achieving true “trustlessness.”

The definition of “trustlessness” is most likely rooted in a misunderstanding of how blockchains work within smart contracts. A blockchain is able to replace the trusted server, therefore creating a censorship‐​resistant and disinterested substrate on which to run programs. In other words, we no longer need to trust a server to run the program correctly, so to that extent, using a blockchain can reduce the amount of trust needed. However, using a blockchain is extremely costly and slow and not all smart contracts need that kind of censorship resistance. Factors like transactions per second may be more important.

Because mechanisms can be costly, the mechanism chosen to reduce trust should be tailored to the specific threat model and what, exactly, is at risk. A vending machine is completely adequate for selling sodas, for example. A vending machine for selling diamond necklaces would need to be designed very differently. What Jimmy Song and others are trying to argue is the equivalent of arguing that any “secure” vending machine should work for vending diamonds, and this is simply not realistic or wise.

There are also many different kinds of trust that may be necessary. For instance, the purpose of legal contracts in the first place is to reduce the need to trust that someone will carry out their promise. A blockchain reduces a different kind of need for trust—trusting that a single server can execute the code correctly. It’s a mistake to think that blockchains eliminate the need for trust entirely.