I am trying to prove that $$\nabla(\mathbf{A} \cdot \mathbf{B}) = (\mathbf{A} \cdot \nabla)\mathbf{B} + (\mathbf{B} \cdot \nabla)\mathbf{A} + \mathbf{A} \times (\nabla \times \mathbf{B}) + \mathbf{B} \times (\nabla \times \mathbf{A})$$
I've gotten as far as $\nabla(\mathbf{A} \cdot \mathbf{B}) = \nabla A\cdot B+\nabla B\cdot A$, using subscript summation. I don't know how to proceed.
This is part of proving that
$$\frac{Dv}{Dt}=\frac{\partial v}{\partial t}+\nabla(\frac{v^2}{2})-v\times(\nabla\times v)$$
Let's start with the right hand side, we have, considering the $i$th component \begin{align*} &\!\!\! [(A \cdot \nabla) B + (B \cdot \nabla)A + A \times (\nabla \times B) + B \times (\nabla \times A)]_i\\ &= \delta^{jk}A_j\partial_kB_i + \delta^{jk}B_j\partial_kA_i + \epsilon^{jk}_{\;\;i}A_j\epsilon^{\mu\nu}_{\;\;k}\partial_\mu B_\nu + \epsilon^{jk}_{\;\;i}B_j\epsilon^{\mu\nu}_{\;\;k}\partial_\mu A_\nu\\ &= \delta^{jk}A_j\partial_kB_i + \delta^{jk}B_j\partial_kA_i + (\delta^\mu_i\delta^{\nu j} - \delta^\nu_i \delta^{\mu j})(A_j\partial_\mu B_\nu + B_j\partial_\mu A_\nu)\\ &= \delta^{jk}A_j\partial_kB_i + \delta^{jk}B_j\partial_kA_i + \delta^{jk}(A_j\partial_i B_k + B_j\partial_i A_k) - \delta^{jk}(A_j\partial_k B_i + B_j\partial_k A_i)\\ &= \delta^{jk}(A_j\partial_i B_k + B_j\partial_i A_k)\\ &= \partial_i(\delta^{jk} A_j B_k)\\ &= [\nabla(A \cdot B)]_i \end{align*}