Suppose we're working with $F_8=\{0,1,2,3,4,5,6,7\}$ and each of message has length of $n$. Is it possible to construct an error correction code such that it corrects $n$ errors, and each error is off by $\pm1$?
For example, if the original message is $666$, the corrupted version can be $555, 556, 557, 565, \cdots, 777$.
I'm totally new to the topic of error correction codes and have no clue how to proceed. Can you guys shed some light on it?
A doubly-extended $[9,3]$ Reed-Solomon code over the field of 8 elements can correct $3$ errors anywhere in the $9$ symbols of a codeword even if the error values are not confined to being $\pm 1$ as you need them, or the errors are in the information symbols, or the extra (parity check) symbols, or scattered between the information and the parity check symbols. But, there must be no more than three errors in the nine codeword symbols.
With errors restricted to being $\pm 1$, one might be able to do better (e.g. reduce the codeword length to $8$ or perhaps even less), but the distance structure that you have (if a 6 is transmitted, the only possible received symbols are 5, 6, 7) does not match the distance structure of the field (unless you use something like Gray coding) so that binary codes can be used.