To those curious: IIRC Extension fields can be described by polynomials.
Example: F_2 = { 0, 1 }.
f(x) = x^2 + x + 1. (This is "irreducible", which basically means it's "prime" in a polynomial world.)
Note that F_2[x] is the set of polynomials with variable x and scalars in F_2.
F_2[x]/f(x) = { 0, 1, x, x + 1 } (for each polynomial, take it modulo f(x)). This is because we know that x^2 + x + 1 = 0 => x^2 = x + 1
(please read = as "equivalent" - really, these relations should be modulo x^2 + x + 1).
|F_2[x]/f(x)| = 4. 2^2 = 4. This is not a coincidence. The degree of the polynomial
determines the size of the resultant field. For F_p[x]/h(x), where p is a prime and
h(x) is irreducible with degree d, |F_p[x]/h(x)| = p^d.
Another Example:
g(x) = x^3 + x + 1. (This polynomial is also irreducible.)
Edit: Also, I forgot to mention that the values in the
resultant fields F_2[x]/f(x) (and F_x/g(x) correspondingly) should really
have the form [v]_f(x), where v is in F_2[x].
That is, they are congruence classes modulo f(x)
of values in F_2[x].
That's a decent summary. But it helps if people knew about prime fields (and I expect most people don't know enough about prime fields to learn about extension fields).
Prime Field 2 (F_2) is too small and too easy to be a good example. I prefer teaching prime fields with Prime Field 5.
5 is a prime number, which means standard math modulo 5 results in a finite field.
There are three attributes of a field:
1. An "addition" operator exists.
2. Every value "v" in the field has a value -v, also known as the "additive inverse". v + (-v) == 0 by definition. The value "0" is defined to be the "additive identity"
3. A "multiplication" operator exists.
4. EVERY value except 0 in the field has a value 1/v (where v is that arbitrary value). v * (1/v) == 1. This value "1" is defined to be the multiplicative identity. 0 has no inverse.
---------
So, lets prove that the F_5 is a field, which instead of using fancy math, can be done by exhaustion (!!!). I just show every single number on a case-by-case basis has the properties we want and we're set.
F_5 is the numbers {0, 1, 2, 3, 4}. + is normal addition mod 5, * is normal multiplication mod5. By simply describing all inverses (both additive inverses and multiplicative inverses), and proving that they operate as expected, we prove F_5 is a field by exhaustion.
Note: a proper textbook would prove this in general over all prime numbers. This shortcut to just doing F_5 by exhaustion is just me taking a shortcut in explanations.
* 0 is its own additive inverse. 0 + (-0) == 0 mod 5.
* 1 is the inverse of 4. 1 + (-1) == 1 + 4 == 5 mod 5 == 0 mod 5.
* 2 is the inverse of 3. 2 + (-2) == 2 + 3 == 5 mod 5 == 0 mod 5.
* 3 and 4 play out identically. We've proven addition. Moving onto multiplication.
* 0 has no inverse (as per definition of fields).
* 1 is its own inverse. 1 * (1/1) == 1 * 1 == 1 mod 5. Not that numbers "outside" of the field, such as 6 still hold the property. 1 * 1 == 6 * 6 == 36 mod 5 == 1 mod 5
* 2 is the inverse of 3. 2 * (1/2) == 2 * 3 == 1 mod 5.
* 3 is the inverse of 2, and plays out similarly.
* 4 is its own inverse. 4 * (1/4) == 4 * 4 == 1 mod 5.
--------------
Note that the distributed property still works.
(2 + 4) * 3 == 18 mod 5 == 3
But we can also do it distributed, as well as shortcutting to use the new "multiplicative inverses" that exist in F_5...
As such, F_5 is a field. It is also finite in length (consisting only of the numbers {0, 1, 2, 3, 4}. Because all numbers have both additive and multiplicative inverses, we can have assurances on the inverse of matricies that use F_5 (as long as det(matrix) != 0, we can find an inverse, because division is always possible), we can always find the roots of polynomials, we can build elliptical curves, etc. etc. Lots of useful properties.
Example: F_2 = { 0, 1 }.
f(x) = x^2 + x + 1. (This is "irreducible", which basically means it's "prime" in a polynomial world.)
Note that F_2[x] is the set of polynomials with variable x and scalars in F_2.
F_2[x]/f(x) = { 0, 1, x, x + 1 } (for each polynomial, take it modulo f(x)). This is because we know that x^2 + x + 1 = 0 => x^2 = x + 1 (please read = as "equivalent" - really, these relations should be modulo x^2 + x + 1).
|F_2[x]/f(x)| = 4. 2^2 = 4. This is not a coincidence. The degree of the polynomial determines the size of the resultant field. For F_p[x]/h(x), where p is a prime and h(x) is irreducible with degree d, |F_p[x]/h(x)| = p^d.
Another Example:
g(x) = x^3 + x + 1. (This polynomial is also irreducible.)
F_2[x]/g(x) = { 0, 1, x, x + 1, x^2, x^2 + 1, x^2 + x, x^2 + x + 1 }
|F_2/g(x)| = 8 = 2^3.
Edit: Also, I forgot to mention that the values in the resultant fields F_2[x]/f(x) (and F_x/g(x) correspondingly) should really have the form [v]_f(x), where v is in F_2[x]. That is, they are congruence classes modulo f(x) of values in F_2[x].