Science Fair Project Encyclopedia
Finite field arithmetic
Arithmetic in a finite field is different from standard arithmetic. By definition, all operations must always yield results that remain within the field.
Notation
Although elements of a finite field can be expressed in numerical form (i.e., hexadecimal, binary, etc.), it is often found convenient to express them as polynomials, with each term in the polynomials representing the bits in the elements' binary expressions. For example, the following are equivalent representations of the same value:
- Hexadecimal: {53}
- Binary: {01010011}
- Polynomial: x6 + x4 + x + 1
The exponents in the polynomial notation serve as "tags", making it possible to keep track of each bit's value throughout arithmetical manipulation, without the need for zero-value placeholders or alignment of digits into columns. If hexadecimal or binary notation is used, braces ( "{" and "}" ) or similar devices are commonly used to indicate that the value is an element of a field.
Addition and subtraction
In a finite field with characteristic 2, addition and subtraction are identical, and are accomplished using the XOR operator. Thus,
- Hexadecimal: {53} + {CA} = {99}
- Binary: {01010011} + {11001010} = {10011001}
- Polynomial: (x6 + x4 + x + 1) + (x7 + x6 + x3 + x) = x7 + x4 + x3 + 1
For those still having trouble coming to grips with this, notice that each of the numbers being added in the example have a x6 in them. x6 + x6 would be 2x6. But, since each coefficient needs to be mod 2, this becomes 0x6, and then gets dropped from the answer.
Multiplication
Multiplication in a finite field is multiplication modulo the irreducible polynomial used to define the finite field. (I.e., it is multiplication followed by division using the irreducible polynomial as the divisor—the remainder is the product.) The symbol "•" may be used to denote multiplication in a finite field.
For example, if the irreducible polynomial used is f(x) = x8 + x4 + x3 + x + 1, then {53} • {CA} = {01} because
(x6 + x4 + x + 1)(x7 + x6 + x3 + x) =
x13 + x12 + x9 + x7
+ x11 + x10 + x7 + x5
+ x8 + x7 + x4 + x2
+ x7 + x6 + x3 + x =
x13 + x12 + x9 + x11 + x10 + x5 + x8 + x4 + x2 + x6 + x3 + x =
x13 + x12 + x11 + x10 + x9 + x8 + x6 + x5 + x4 + x3 + x2 + x
and
x13 + x12 + x11 + x10 + x9 + x8 + x6 + x5 + x4 + x3 + x2 + x modulo x8 + x4 + x3 + x + 1 (= 11111101111110 mod 100011011) = 1, which can be demonstrated through long division (shown using binary notation, since it lends itself well to the task):
111101
100011011)11111101111110
100011011
1110000011110
100011011
110110101110
100011011
10101110110
100011011
0100011010
000000000
100011010
100011011
00000001
(The elements {53} and {CA} happen to be multiplicative inverses of one another since their product is 1.)
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details


