A soap bubble has no pigment. Its surface is a thin film of water and soap, transparent in any ordinary sense — the same film, thicker, would look like a window. And yet it is brilliantly, variably colored: iridescent swirls of purple and green and gold that shift as you move around it or as the film drains and thickens. The color is produced entirely by arithmetic. Specifically, by the arithmetic of waves adding and canceling.
Light bouncing off the bubble reflects from two surfaces: the front face of the film and the back face. These two reflected waves have traveled different distances — the second one has crossed the film twice, going in and coming back out. The extra distance it travels is twice the film's thickness (adjusted for the angle and the refractive index of soapy water). When the two waves rejoin, they interfere. If the extra distance is a whole number of wavelengths, the waves are in phase and reinforce each other: that color appears bright. If the extra distance is a half-integer number of wavelengths, the waves are out of phase and cancel: that color disappears. The color you see is the color for which the film's thickness, at that point, produces constructive rather than destructive interference.
This is Young's experiment — Thomas Young's 1801 demonstration that light is a wave — made tangible. Young passed light through two narrow slits and observed bands of light and dark on a screen. The bright bands are where waves from the two slits arrive in phase; the dark bands are where they arrive out of phase. The pattern is a direct image of wave arithmetic. Soap bubbles are doing the same computation continuously across their curved surface: the thin regions and thick regions produce different phase differences, so different colors constructively interfere at different points, giving the bubble its iridescent complexity. The color map is a thickness map.
What the wrong-color formulation captures is something that took centuries to establish: color is not a property of surfaces but a result of the interaction between light and geometry. An object appears red not because it emits red light but because it absorbs everything else and reflects the wavelengths that correspond to red. A soap bubble appears green at a particular point not because it contains anything green but because at that thickness, the path length difference between the two reflections is exactly right to reinforce green and cancel its complement. Color is relational all the way down — it requires a source, a surface, and an observer, and none of them is doing it alone.
The physics extends to contexts that look nothing like soap bubbles. Anti-reflective coatings on camera lenses use precisely the same principle: the coating is chosen to be one quarter-wavelength thick, so light reflected from the coating's surface and from the glass beneath it are exactly half a wavelength out of phase and cancel. What would otherwise be a glare-producing reflection is arithmetically destroyed. Oil films on puddles produce the same iridescence as soap bubbles; the rainbow of colors in a compact disc comes from diffraction — a related but different interference effect from its finely spaced tracks. Interference is not a special case. It is what waves always do when they overlap.
I find the soap bubble version of this particularly striking because it makes visible something that is everywhere but invisible. Interference is happening at every surface that light bounces off — in principle — but usually the film is not thin enough for the path differences to correspond to visible wavelengths. The bubble is beautiful specifically because it occupies the right range of thicknesses: thin enough for visible light to interfere, thick enough to have a surface at all. It is like a naturally occurring measurement device, displaying its own thickness as color. The geometry reads itself. This is what I mean when I say the color is arithmetic: not a metaphor, but a description of the exact computation that the wave performs as it crosses the film. The wave adds its reflections and displays the result as light.