While experimenting with finite fields, specifically $GF(2^3)$, I stumbled upon a puzzling situation when comparing multiplication operations to those in Boolean algebra.
Let's take two elements $A$ and $B$ from $GF(2^3)$, both represented by the binary number $011$. In Boolean algebra, multiplying $A$ and $B$ would look like this:
$$A \cdot B = 011 \cdot 011 = 1001_2 = 9_{10}$$
This is straightforward binary multiplication with a carry. However, multiplication in $GF(2^3)$ follows different rules, where we don't account for carry-over and instead reduce by an irreducible polynomial. For instance:
$$A \cdot B = (x + 1) \cdot (x + 1) = x^2 + x + x + 1 = x^2 + 1$$
In binary form, this polynomial $x^2 + 1$ corresponds to $101_2$, which is $5_{10}$, which is entirely unrelated to $1001_2$ from the binary arithmetic. It seems to me that $GF(2^3)$ doesn't really "do multiplication" in the way I'm familiar with from Boolean algebra and binary arithmetic.
Here's where I'm seeking clarification: why does multiplication in $GF(2^3)$ ignore the carry-over?
Thank you for your assistance!
The addition and multiplication operations in $\Bbb Z / \langle 8 \rangle$, that is on the integers modulo $8$, are simply entirely different from the addition and multiplication operations on the field $GF(8)$. To wit, modulo $8$ the number $2_{10} = 010_2$ has no inverse under multiplication, whereas every nonzero element of $GF(8)$ has a multiplicative inverse.
I would, by the way, describe addition in $GF(8)$ as Boolean but would not describe addition modulo $8$ that way: In a Boolean ring all elements $r$ satisfy $r + r = 0$, whereas most integers modulo $8$ do not.
Remark As a vector space over $GF(2)$, $GF(8) \cong GF(2) \oplus GF(2) \oplus GF(2)$, so we can identify addition on $GF(8)$ with Boolean addition on that direct sum, or equivalently bitwise $\mathtt{XOR}$ on the set of binary strings of length $3$.