Go over https://leetcode.com/problems/nearest-exit-from-entrance-in-maze/ quickly.

Erasure coding lecture

James S. Plank
November, 2022


Reference Material

The first two are good for when you're learning. Jerasure 1.2 is good to get hands-on experience with a pretty simple implementation. The remaining papers are the papers that first presented the various codes.

Overview

Pages 1-38 of the tutorial (in this directory)

Story - Circuitous Path to Erasure Coding, Part 1


Reed-Solomon Codes

Using Jerasure 1.2, show these examples:
UNIX> reed_sol_02 4 3 8   > ex1.html     # Create a conding matrix from a vandermonde matrix
UNIX> reed_sol_01 4 3 8 4 > ex2.html     # Show a encoding/decoding example
Here are the two outputs: Since the first row of the matrix is all ones, you can show how that first byte of C0 is equal to 0xc4:

9c = 1001 1100
3f = 0011 1111
a9 = 1010 1001
ce = 1100 1110
--------------
Sum: 1100 0100 = c4!

Talk about creating a Cauchy matrix:

UNIX> jerasure_03 4 8 | sed 1,3d
The Cauchy Matrix:
253 126 255 127
126 253 127 255
255 127 253 126
127 255 126 253

Invertible: Yes

Inverse:
 96 237  51  74
237  96  74  51
 51  74  96 237
 74  51 237  96

Inverse times matrix (should be identity):
  1   0   0   0
  0   1   0   0
  0   0   1   0
  0   0   0   1
UNIX>


EVENODD Coding

Use slides 69-78 of the 2013 tutorial: Evenodd.pdf.

RDP Coding

Use slides 80-84 of the 2013 tutorial: RDP.pdf. The main benefit: fewer XOR operations.

The X-Code

Use slides 86-89 of the 2013 tutorial: X-Code.pdf. The main benefit: fewer XOR operations.

The tale of the Liberation Codes and my ITW paper


Three fantastic erasure coding papers

  1. The EVENODD coding paper (above).

  2. Xiang's RDP paper -- Xiang.jpg

  3. Cauchy Reed-Solomon Coding (Go over after going over Galois Field Arithmetic)