Erasure recovery starts with exact arithmetic in a tiny field.

highlighted = computed this step

Use a tiny field

This toy works in GF(5), so every result is reduced back into the field.

field size=5\text{field size}=5
Work inside GF fiveGF(5) shard rows recomputed from pinned polynomial and kept shards.Work inside GF five - recover f(1)=0 in GF(5)rowvaluecheckpolynomial2+3x mod 5pinned polynomialshard x=02f(0)shard x=10f(1)shard x=23f(2)shard x=31f(3)missingx=1erasure locationkept(0,2) and (2,3)two surviving shardsdelta y1y2-y0 mod pdelta x2x2-x0 mod pinverse2^-1=3field inverserebuilt slope3delta y times inverserebuilt intercept2y-mxrecovered0f(1)

The allowed numbers

The field values are 0, 1, 2, 3, and 4.

040\ldots4
Work inside GF fiveGF(5) shard rows recomputed from pinned polynomial and kept shards.Work inside GF five - recover f(1)=0 in GF(5)rowvaluecheckpolynomial2+3x mod 5pinned polynomialshard x=02f(0)shard x=10f(1)shard x=23f(2)shard x=31f(3)missingx=1erasure locationkept(0,2) and (2,3)two surviving shardsdelta y1y2-y0 mod pdelta x2x2-x0 mod pinverse2^-1=3field inverserebuilt slope3delta y times inverserebuilt intercept2y-mxrecovered0f(1)

Wrapping is exact

If a calculation reaches 5, it wraps to 0 because we reduce modulo 5.

50(mod5)5\equiv0\pmod{5}
Work inside GF fiveGF(5) shard rows recomputed from pinned polynomial and kept shards.Work inside GF five - recover f(1)=0 in GF(5)rowvaluecheckpolynomial2+3x mod 5pinned polynomialshard x=02f(0)shard x=10f(1)shard x=23f(2)shard x=31f(3)missingx=1erasure locationkept(0,2) and (2,3)two surviving shardsdelta y1y2-y0 mod pdelta x2x2-x0 mod pinverse2^-1=3field inverserebuilt slope3delta y times inverserebuilt intercept2y-mxrecovered0f(1)

Summary

The table will only show field values. No decimal approximation is involved.

exact field arithmetic\text{exact field arithmetic}
Work inside GF fiveGF(5) shard rows recomputed from pinned polynomial and kept shards.Work inside GF five - recover f(1)=0 in GF(5)rowvaluecheckpolynomial2+3x mod 5pinned polynomialshard x=02f(0)shard x=10f(1)shard x=23f(2)shard x=31f(3)missingx=1erasure locationkept(0,2) and (2,3)two surviving shardsdelta y1y2-y0 mod pdelta x2x2-x0 mod pinverse2^-1=3field inverserebuilt slope3delta y times inverserebuilt intercept2y-mxrecovered0f(1)