1. Automation is not the same as self-execution
Smart contracts are frequently described as autonomous financial infrastructure.
At the policy level, this description can be accurate.
A contract can enforce rules such as:
execute only after a specified timestamp; transfer no more than a predefined amount; allow execution only when a particular condition is satisfied; prevent execution after cancellation; restrict the recipient; prevent the same instruction from being executed twice.
Once deployed, these constraints can be enforced independently of the application interface that originally created them.
But there is another question:
Who causes the transaction to happen?
A smart contract normally does not wake itself up when a condition becomes true.
Some external process must usually detect that the condition has been satisfied and submit a transaction that calls the relevant contract function.
This creates two separate properties:
Policy correctness describes whether the contract correctly enforces the financial instruction.
Execution availability describes whether an eligible instruction can actually reach the blockchain and be executed.
A system can have strong policy correctness and weak execution availability at the same time.
That distinction becomes increasingly important when smart contracts are used for scheduled transfers, recurring financial actions, inheritance mechanisms, portfolio rules, collateral management, automated treasury operations, and other time-dependent financial policies.
Continue reading this research
Sign in to access the complete research, analysis, conclusion and references.