## Happenings Jun 6

I’m pretty much working on only two things: wavelets and finite fields. In fact, right now I’m looking at field extensions, things like $Q(\sqrt{2}) = \{a + b\ \sqrt{2} | \text{a,b rational}\}\$. (Just can’t seem to shake off those $\sqrt{2}\text{'s}\$).

I even asked a careless question last week out on sci.math. I won’t call it a stupid question — I insist that there are none — but I did forget one of the hypotheses. The topic was “Visualizing Finite Fields” in sci.math. My post was on May 29, and a reply pointing out my carelessness appeared several hours later, in the evening.

And what was it I had done wrong? The polynomial x^2 +1 is irreducible over the 3-element field GF(3) = {-1,0,1} (arithmetic mod 2), so adding its roots $\pm\ i = \pm\sqrt{-1}$ generates the field GF(9). (It’s a 2nd degree polynomial, so we get a field extension of degree 2, so the extension field is of order 2^2 3^2). And what could be easier than adding the imaginary unit?

So why not add $\sqrt{-1}$ to the 2-element field GF(2) = {0,1} to get the 4-element field GF(4)?

Because the polynomial x^2 + 1 is not irreducible over GF(2). In GF(2), 2 = 0, so our polynomial factors as (x+1)(x+1) = x^2 + 2x + 1 = x^2 + 1. (Alternatively, in GF(2), 1 and -1 are the same element: 1 = -1, so x^2 + 1 = x^2 -1 = (x+1)(x-1).

So, GF(4) requires that we find a different polynomial, one that is irreducible, to get the roots of.

(So there. I have now talked about a foolish post of mine to USENET, not just about the expert ones!)

For wavelets, I have begun writing code to compute wavelet coefficients. For the Haar system this is very easy: life gets very, very simple because there are only two filter coefficients h. In fact, finding code for the Haar system is also very easy; we don’t have to write anything.

Moving further, however, requires more work; and people seem unwilling to publish working code for anything beyond the Haar system.

That’s okay. I need to understand this, so I probably ought to be writing my own code.

Ugh! I don’t view coding as mathematics per se; it just lets me get answers. Maybe the way to phrase that is: writing accurate pseudo-code might be mathematics; getting code that will (compile and) run is an often unavoidable chore.