The chain rule for functional differentiation is just the continuum generalisation of the usual chain rule for differentiation of a function of many variables $f(y_1,y_2,\ldots,y_N) = f(\mathbf{y})$, which reads
$$ \frac{\partial f(\mathbf{y})}{\partial x_i(\mathbf{y})} = \sum\limits_{j=1}^N\frac{\partial y_j}{\partial x_i}\frac{\partial f}{\partial y_j}. $$
The continuum limit amounts to sending the number of variables $N\to\infty$, and defining a new continuous index $r$ such that $j\to rN$. Then you just change your notation to agree with the continuous nature of the new index $r$, e.g. $x_j \to X(r)$, $f(\mathbf{x}) = f(\{x_j\}) \to F[X(r)]$ etc. In our example, this means substituting the above sum over the discrete index $j$ by an integral over a continuous index, finding the chain rule for functional differentiation:
$$\frac{\delta F[Y]}{\delta X(r)} = \int \mathrm{d}s\,\frac{\delta Y(s)}{\delta X(r)}\frac{\delta F[Y]}{\delta Y(s)}.$$
You can get any functional calculus identity you want along the same lines. Just think about what happens in ordinary multivariate calculus with a finite number of variables. Then take the number of variables to infinity.
This post imported from StackExchange Mathematics at 2014-06-16 11:21 (UCT), posted by SE-user Mark Mitchison