Masked diffusion starts with a blank grid and reveals symbols over several rounds. A generic denoiser still copied messages and broke parity checks, so CIDER puts two structural modules inside each refinement step.
First, make the rows compete.
Module A makes the message rows compete for each slot-symbol candidate. Its responsibilities are soft, since two real messages can share a symbol, but one strong candidate should not be copied into every row.
Then, let the parity checks talk back.
Module B passes information along the known code’s Tanner graph, so a symbol can use context from its parity checks. The transformations are learned; the graph guides each refinement step toward code consistency.
Watch the messages come together.
The blue reference rows below show the two codewords sent by the active users above. CIDER receives soft detector scores and reconstructs its output rows over successive steps.
