4 ms·
Our of curiosity and as a noob to coding theory, what makes a Binary Golay code more useful than say a RS Code or something else more common? The linked wiki a
by haneefmubarak 6y ago
Our of curiosity and as a noob to coding theory, what makes a Binary Golay code more useful than say a RS Code or something else more common?
The linked wiki article said that given 12 bits, the BG code can encode them as 24 bits with the ability to correct up to 3 bit errors and detect up to 7. If I'm understanding RS codes correctly, an RS code with 12 data and 12 parity bits would be able to correct up to 6 bit errors and detect up to 12. So what is the advantage of a BG code in that case?
- heinrichhartman 6y agoI am no expert either, but I just checked Wikipedia on Reed-Solomon codes [1]: > By adding t check symbols to the data, a Reed–Solomon code can detect (but not correct) any combination of up to and including t erroneous symbols, OR locate and correct up to and including ⌊t/2⌋ erroneous symbols at unknown locations So it looks like you would have to choose between, either: A) correcting 6 bits OR B) detecting 12 bit errors. No? [1] https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_cor...
- wtallis 6y agoThe correct interpretation there is that for any given R-S code, the tolerance for correctable errors is half as many bits as the tolerance for uncorrectable but still detectable errors. If you have an R-S code constructed to correct 6 bits or detect 12-bit errors, then for a given message: if the number of corrupted bits is no more than six, you can reconstruct the original message if the number of corrupted bits is between 6 and 12, you will detect the corruption if the number of corrupted bits is larger than 12, you may or may not detect the corruption.
- omazurov 6y agoThe binary Golay code works on bits. Reed-Solomon code works on symbols that are comprised of many bits. A RS code with 12 data and 12 parity symbols (not bits!) must have symbol representation of at least 5 bits to cover 12 + 12 = 24 possible code locations. Bit-wise such code will reliably correct only 6 bit errors out of 24 * 5 = 120 bits (assuming t/2 error correction algorithm). If the errors come in bursts, however, that code can correct up to 6 * 5 = 30 bits.