I've used the #lazyweb tag on hellsite for a long time. Since I can do more long form writing here, I figure I can crowdfund answers to my questions here as well! It sure beats posting on Stack Exchange :D!
Why Is CRC Polynomial Division Defined As It Is?
CRC defines polynomial division by discarding carried/borrowed terms during the subtracting/adding phase of polynomial division. This has very convenient properties, such as making addition and subtraction the same thing:
E.g. in CRC-based polynomial addition/subtraction:
(x^5 + x^2 + x^1) + (x^5 + x^3 + x^2) = (x^5 - x^5) + (0 - x^3) + (x^2 - x^2) + (0 - x^1) = x^3 + x^1
In "standard" polynomial addition/subtraction:
(x^5 + x^2 + x^1) + (x^5 + x^3 + x^2) = (x^5 + x^5) + (0 + x^3) + (x^2 + x^2) + (0 + x^1) = 2x^5 + x^3 + 2x*2 + x^1
Is that the main reason to define CRC division in terms of "addition == subtraction"? If we instead defined CRC polynomial division as the "standard" polynomial addition/subtraction, do we still get the nice properties of CRC division as normally defined, such as "two polynomials that differ by a single term can be distinguished solely by doing the division one degree at a time and then looking at the remainder"?