Are smart contracts AI-complete?

Many peo­ple are prob­a­bly aware of the hack at DAO, us­ing a bug in their smart con­tract sys­tem to steal mil­lions of dol­lars worth of the crypto cur­rency Ethereum.

There’s var­i­ous ar­gu­ments as to whether this theft was tech­ni­cally al­lowed or not, and what should be done about it, and so on. Many peo­ple are ar­gu­ing that the code is the con­tract, and that there­fore no-one should be al­lowed to in­terfere with it—DAO just made a cod­ing mis­take, and are now be­ing (de­servedly?) pun­ished for it.

That got me won­der­ing whether its ever pos­si­ble to make a smart con­tract with­out a full AI of some sort. For in­stance, if the con­tract is trig­gered by the de­liv­ery of phys­i­cal goods—how can you define what the goods are, what con­sti­tutes de­liv­ery, what con­sti­tutes pos­ses­sion of them, and so on. You could have a hu­man con­firm de­liv­ery—but that’s pre­cisely the kind of judge­ment call you want to avoid. You could have an au­to­mated de­liv­ery con­fir­ma­tion sys­tem—but what hap­pens if some­one hacks or trig­gers that? You could con­nect it au­to­mat­i­cally with scan­ning head­lines of me­dia re­ports, but again, this is rely­ing on ag­gre­gated hu­man judge­ment, which could be hacked or in­fluenced.

Digi­tal goods seem more se­cure, as you can au­to­mate con­fir­ma­tion of de­liv­ery/​ser­vices ren­dered, and so on. But, again, this leaves the con­fir­ma­tion pro­cess open to hack­ing. Which would be ille­gal, if you’re go­ing to profit from the hack. Hum...

This seems the most promis­ing av­enue for smart con­tracts that doesn’t in­volve full AI: clear out the bugs in the code, then ground the con­fir­ma­tion pro­ce­dure in such a way that it can only be hacked in a way that’s already ille­gal. Sort of use the stan­dard le­gal sys­tem as a back­stop, fix­ing the ba­sic as­sump­tions, and then set­ting up the smart con­tracts on top of them (which is not the same as us­ing the stan­dard le­gal sys­tem within the con­tract).