Black and white
Monochrome
Every picture here is the same verified reaction–diffusion wave the catalogue’s family pages show in ember, drawn by one rule: white where the wave exceeds its own image under a single operation s, black where it falls short. That rule turns a one-colour animation into a proper two-colour spacetime group — and the group is measured on the saved bytes, not asserted.
If some spatial operation s carries the wave onto its own image half a period later, then U(x,t) − U(s x,t) and U(x,t) − U(x, t+T/2) are the same function. So s alone exchanges black and white — by algebra, for any reconstruction filter — half a period alone exchanges them too, and doing both leaves them where they were. Black and white are then congruent by force: their areas are exactly equal.
The 17 wallpaper groups
397 saved fields · 2061 readings (326 where s is a symmetry of the field) · 10 equations
Every two-colour law here was re-derived from the saved float32 bytes at every node-frame, in integer index arithmetic. The swap law w(s x, t) = −w(x, t) is exact by algebra and holds to the last bit; the claims that rest on a measured symmetry of the wave hold to the search’s own residual instead, so on 18 of the 2061 readings the drawn inks disagree at up to 0.62% of node-frames, where |w| is at the float32 noise floor. A picture is filed under every wallpaper group that hosts its field, so the counts above add up to more than 397. Of the 2061 readings, 326 are ones where the operation s is itself a spacetime symmetry of the wave — s and the half-period wait are then two names for one antisymmetry, and a field has at most one such picture — 1504 are ones where s is free, and 231 are plain thresholds kept for comparison. Whether the picture is antisymmetric in time is a separate measurement and a commoner one: 1158 of the 2061 readings exchange the two inks after half a period exactly.