Patent ID: 8645803

Claim:
A method for error correction of a codeword of n-state symbols with n>2 containing a plurality of n-state data symbols and a plurality of n-state check symbols generated by a coder, an n-state symbol being represented by a signal, each check symbol being determined by an n-state expression wherein the n-state data symbols are variables, comprising: retrieving by a processor from a memory two or more expressions, each expression determining a comparative coding state of the coder, wherein the comparative coding state combines a first coding state of the coder operated in a first direction from a starting state to an ending state and a corresponding second coding state of the coder operated in a direction that is a reverse of the first direction; the processor evaluating the two or more expressions, wherein received n-state data symbols and n-state check symbols are variables to determine a plurality of comparative coding states; the processor locating an n-state symbol in error in the codeword based on the plurality of comparative coding states; the processor determining an error value for the symbol in error in the codeword from at least one comparative coding state; and the processor determining a correct state for the symbol in error by applying the error value to a state of the symbol in error.