Terminology
This page is dedicated to explaining some terms relevant to the protocol that might be a bit hard to understand!
Bonding-related
-
Liveness Bond: The bond provided by a block’s assigned prover, serving as a commitment to initially prove the first transition and to provide post-contest proofs within the corresponding proving window.
-
Validity Bond: The bond provided by the actual prover of a proof, signifying their commitment that the proof is indeed correct and that they are ready to withstand a contest.
-
Contest Bond: The bond provided by the contester.
In layman’s terms, the above terms relate to the protocol in the following manner:
-
A Liveness Bond is deposited when a prover gets assigned a block to prove (
proposeBlock
tx); when the block proof is provided within the proofWindow it gets debited to the prover. -
A Validity Bond is deposited when a block proof is submitted (
proveBlock
tx), and the prover is ready to withstand a contest. If the proof gets verified (i.e. is not contested and is valid), the bond is returned to the prover. The prover can be different from the original assigned prover if the proof is outside the proofWindow, in which case the new prover has to provide the full validityBond amount. -
A Contest Bond is someone putting up a bond to say that a block should be contested and a higher tier should handle this case. If the higher tier proof is incorrect then contestBond is forfeited.