Truebit structure

The verification game is testing the program ON-chain. But let’s remind ourselves of the true purpose of Truebit. Computational complexity is so high that programs cannot be run ON-chain and therefore we use Truebit. Therefore, a verification game cannot run the entire program code.

In fact, only one instruction line is used in a verification game. There will be a part of the program code where there is a discrepancy between the Solver and the Verifier. The instruction of that discrepancy point is used to verify who is right. For this, the Truebit contract implements a WebAssembly interpreter.