This Curious Engineering field note explores a small but surprisingly rich idea: a polynomial codeword can be viewed as a tiny finite-field image.
In algebraic coding theory, a polynomial evaluation code is usually introduced as a vector space over a finite field. Here we approach the same object visually. Choose a polynomial over Fq, evaluate it on every point of the grid Fq × Fq, and arrange the resulting values as a square grid. For q = 5, each codeword becomes a 5×5 image.
What this explorer is about
The interaction explorer focuses on two-dimensional polynomial/evaluation codes. The default example uses a small hyperbolic-style code over F5 with the monomial basis 1, x, y, x², xy, y², x²y, xy². Because there are eight selected monomials over F5, the code contains 58 = 390,625 codewords.
The point is not that this tiny example is already a practical code. The point is that it is small enough to exhaust and large enough to reveal structure: generator grids, repeated finite-field patterns, zero sets, Hamming weights, and the distribution of codeword weights.
Interaction explorer
Use the controls below to choose the field size, select a monomial rule, browse codewords, and compute small weight and brightness histograms.
How to use it
- Start with the F5 hyperbolic preset.
- Move the codeword slider and watch the exact grid and pixel image change.
- Open the generator grids to see how individual monomials contribute.
- Compute the Hamming-weight distribution for the default example.
- Switch between hyperbolic, total-degree, rectangle, and custom monomial rules.
- In custom mode, click exponent cells to design your own small polynomial code.
A useful thing to watch is the difference between the visual statistic and the coding-theory statistic. The pixel brightness helps the eye notice patterns, but the Hamming weight is the coding-theory object: it counts the number of nonzero grid cells.
Concept explorer
The concept explorer below walks through the main ideas behind the interaction: evaluation maps, finite-field grids, monomial selection, hyperbolic regions, generator grids, zero sets, and weight distributions.
Why this is interesting
A polynomial evaluation code sits at a beautiful intersection of algebra, geometry, and information. The algebra is the polynomial space. The geometry is the finite grid and the zero set of each polynomial. The coding theory appears when we ask how many positions can vanish, how many remain nonzero, and how far apart the resulting codewords are.
The hyperbolic preset gives one way to choose monomials. Total-degree selection gives a Reed–Muller-like comparison. Rectangle selection gives another design shape. The custom editor lets you treat the exponent grid as a small code-design playground.
Next experiments
- Add a zero-set mask so learners can directly see where
f(x,y)=0. - Compare two monomial regions side by side at the same dimension.
- Build a minimum-weight codeword gallery.
- Add a proof packet explaining the footprint/hyperbolic lower bound.
- Extend the explorer toward Reed–Muller, affine Cartesian, and affine variety codes.
This is the first publishable version of the explorer. The goal is to make the algebra visible, then use the visible patterns to ask better mathematical questions.
Leave a Reply