Convolution is the fundamental mathematical operation that describes how the shape of one function is modified by another. It represents the process of 'sliding' one function over another, calculating the integral of their product at each position. In signal processing and systems analysis, convolution describes how the present output of a system depends on the entire history of its inputs, weighted by the system's own characteristic 'impulse response'.
| Symbol | Description |
|---|---|
| `f(t), g(t)` | The two input functions being convolved. |
| `(f * g)(t)` | The convolution result, which is a new function of `t`. |
| `τ` | The dummy variable of integration, representing the 'slide'. |
| `h(t)` | The Impulse Response of a system, defining its characteristic behavior. |
| `x(t)` | The input signal to a system. |
| `y(t)` | The output signal from a system, given by `x(t) * h(t)`. |
Convolution is best understood visually as a 'flip, slide, multiply, and integrate' process. To compute `(f * g)(t)`:
| Property | Description | Formula |
|---|---|---|
| Commutative | The order of the functions does not matter. | `f * g = g * f` |
| Associative | The grouping of functions in a series of convolutions does not matter. | `(f * g) * h = f * (g * h)` |
| Distributive | Convolution distributes over addition. | `f * (g + h) = (f * g) + (f * h)` |
| Linearity | Convolution is a linear operator. | `(a f + b g) * h = a(f * h) + b(g * h)` |
| Shift Invariance | Shifting one of the functions shifts the output by the same amount. | If `y(t) = f(t) * g(t)`, then `f(t-T) * g(t) = y(t-T)` |
We can prove that convolution is commutative, meaning `(f * g)(t) = (g * f)(t)`. We start with the definition of convolution.
We perform a change of variables. Let `u = t - \tau`. This implies that `\tau = t - u`, and the differential `d\tau = -du`. As `\tau \to \infty`, `u \to -\infty`, and as `\tau \to -\infty`, `u \to \infty`.
Using the property of definite integrals that `\int_{b}^{a} f(x) dx = -\int_{a}^{b} f(x) dx`, we can flip the limits of integration and remove the negative sign.
This final expression is, by definition, the convolution `(g * f)(t)`, with `u` being a dummy integration variable. Thus, `(f * g)(t) = (g * f)(t)`.
In image processing, convolving an image with a small matrix called a kernel can achieve effects like blurring, sharpening, and edge detection. This is the core operation in Convolutional Neural Networks (CNNs) for feature extraction.
Convolution is used to create reverb effects by convolving a dry audio signal with the impulse response of a room. It's also fundamental in designing audio filters (equalizers) to shape the frequency content of sound.
For any Linear Time-Invariant (LTI) system, the output signal is the convolution of the input signal with the system's impulse response. This allows engineers to predict a circuit's behavior for any given input.
The probability distribution of the sum of two independent random variables is the convolution of their individual distributions. This is crucial for modeling cumulative effects.
| Type | Description | Typical Application |
|---|---|---|
| Continuous Convolution | Defined for functions of a continuous variable (e.g., time). Uses an integral. | Analog signal processing, physics, probability theory |
| Discrete Convolution | Defined for sequences of numbers (e.g., digital samples). Uses a summation. | Digital signal processing, image filters, finance |
| 1D Convolution | One-dimensional convolution, typically over time or a single spatial dimension. | Audio processing, time-series analysis |
| 2D Convolution | Two-dimensional convolution, used for functions of two variables (e.g., images). | Image processing, computer vision (CNNs) |
| Circular Convolution | A form of discrete convolution where the function is treated as periodic. Related to the Discrete Fourier Transform (DFT). | Fast convolution algorithms using FFT |
Forgetting to Flip: A common error is performing `∫ f(τ)g(t+τ)dτ` instead of `∫ f(τ)g(t-τ)dτ`. The `g(t-τ)` term represents a flip (`g(-τ)`) followed by a shift (`g(t-τ)`). Always remember the 'flip and slide' mnemonic.
Incorrect Integration Limits: When convolving functions with finite support (like rectangular pulses), the limits of integration change with `t`. It's crucial to correctly identify the regions of overlap and set the integral bounds accordingly for each case. Drawing the functions helps avoid this mistake.
Confusing `t` and `τ`: The integration is performed with respect to `τ`, treating `t` as a constant parameter. The final result must be a function of `t` only, with `τ` integrated out.