Skip to content

Commit 3bd4d32

Browse files
committed
README.md - Mention "generator polynomial", also relevant for CRCs
1 parent faf9465 commit 3bd4d32

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -90,8 +90,8 @@ First, a quick primer on [CRCs][crc].
9090

9191
Some of why CRCs are so prevalent because they are mathematically quite
9292
pure. You view your message as a big [binary polynomial][binary-polynomial],
93-
divide it by a predefined polynomial (choosing a good CRC polynomial is
94-
the hard part), and the remainder is your CRC:
93+
divide it by a predetermined "generator polynomial" (choosing a good
94+
polynomial is the hard part), and the remainder is your CRC:
9595

9696
```
9797
message = "hi!":
@@ -138,8 +138,8 @@ crc = 0x3b
138138
```
139139

140140
You can describe this mathematically in [GF(2)][gf2], but depending on
141-
your experience with GF(2) and other finite-fields, the above example is
142-
probably easier to understand:
141+
your experience with GF(2) and other finite-fields, the above example may
142+
be easier to understand:
143143

144144
<p align="center">
145145
<img
@@ -152,7 +152,8 @@ The extra $x^{|P|} multiplications represent shifting the message to make
152152
space for the CRC, and gives us what's called a
153153
["systematic code"][systematic-code]. Alternatively we could actually
154154
multiply the message with our polynomial to get valid codewords, but that
155-
would just make everything more annoying without much benefit...
155+
would just make interacting with the message more annoying without much
156+
benefit...
156157

157158
The neat thing is that this remainder operation does a real good job of
158159
mixing up all the bits. So if you choose a good CRC polynomial, it's very

0 commit comments

Comments
 (0)