Raptor codes are concatenated erasure codes with two layers: an outer pre-code and a Luby-Transform (LT) inner code. The pre-code is a linear binary erasure code, which is applied first to the input to create some redundant data. The LT code is then applied to the intermediate symbols from the pre-code to generate final output symbols to be transmitted.
The parameters for a Raptor code are \( (k, C, \Omega(x)) \), with \(C\) being the pre-code with dimension \( k \), and \( \Omega(x) \) being the degree distribution for the LT code.
The times to encode and decode source blocks are both linear. The space requirement is \(1/R \), where \(R\) is the rate of the pre-code. Raptor codes with the simplest output distribution (LT code) are called pre-code-only (PCO).
- Luby transform (LT) code — Raptor codes using a trivial pre-code are LT codes. Typically, Raptor codes have constant-sized more overhead but are faster to decode.
- Tornado code — Tornado codes, which can be used as a pre-code for raptor codes, also use a multi-layer approach where redundant symbols are created by one code for another code to use as input.
- A. Shokrollahi, “Raptor codes”, IEEE Transactions on Information Theory 52, 2551 (2006) DOI
- Petar Maymounkov, Online codes, Technical report, New York University, 2002.
- F. Lazaro, G. Liva, and G. Bauch, “Inactivation Decoding of LT and Raptor Codes: Analysis and Code Design”, IEEE Transactions on Communications 1 (2017) arXiv:1706.05814 DOI
“Raptor (RAPid TORnado) code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/raptor