# How is the convolution operation used in CNNs a special case of the convolution operator?

How is the convolution operation used in convolutional neural networks (CNNs) a special case of the mathematical convolution operator? Most of us, when we think of the "convolution operation", we think of the main operation associated with CNNs, that is, the operation of sliding a kernel (or a filter) over an input 2D space (or 3D volume). However, in mathematics, the convolution between two functions $$f$$ and $$g$$ is defined as

$$(f*g)(t)\triangleq \ \int _{-\infty }^{\infty }f(t-\tau )g(\tau )\,d\tau$$

where the symbol $$*$$ is the convolution operation (between functions $$f$$ and $$g$$). Apparently, this definition has little to do with the convolution operation used in CNNs, because this definition is an integral over the real numbers. So, how can we derive the mathematical definition of the convolution operation used in CNNs from the definition above? The integral is with respect to a variable $$\tau$$. How does this relates to the definition of convolution used in CNNs? Why are there two variables ($$t$$ and $$\tau$$) in the definition above?