Slide one signal across another, multiply where they overlap, add it up — that’s convolution, and it’s how every filter, echo, and blur works. The second signal (the ‘kernel’) stamps its shape onto the first at every position. Magically, convolution in time is just MULTIPLICATION in frequency — the reason the [[the-fast-fourier-transform|FFT]] makes filtering fast. Slide the kernel across and watch the output build.
Discrete convolution slides a kernel h across a signal x, forming (x∗h)[n]=Σₖ x[k]h[n−k] — at each shift, multiply the overlapping samples and sum. It is linear time-invariant FILTERING: the kernel is the system’s impulse response, and convolving with it produces echo, smoothing, edge-detection, or any LTI effect. The CONVOLUTION THEOREM makes it fast: convolution in time equals pointwise MULTIPLICATION in frequency, so an FFT—multiply—inverse-FFT filters a long signal in O(N log N). It also multiplies polynomials and drives CNNs. A fail-loud self-check throws unless a known conv product matches by hand. ◆ real signal math, node-verified.
The illustration convolves short sequences; real filtering handles boundaries (zero-pad / circular) explicitly. The sliding-sum definition and the time↔frequency theorem are exact.