# How to find the derivative of a scalar function involving a Kronecker product with respect to a matrix

I need to find the derivatives $\frac{ \partial f(\mathbf{X}) }{\partial \mathbf{X}}$ and $\frac{ \partial f(\mathbf{X}) }{\partial \mathbf{X}^*}$ of the function $f: \mathbb{C}^{N \times M} \to \mathbb{C}$ defined as

$f(\mathbf{X}) = \left[ (\mathbf{A} \mathbf{X} \mathbf{b})^H \otimes \mathbf{c}^H \right] \mathbf{d}$,

where $\otimes$ denotes Kronecker product, $^H$ denotes Hermitian transpose, $\mathbf{A}\in \mathbb{C}^{L \times N}$, $\mathbf{X}\in \mathbb{C}^{N \times M}$, $\mathbf{b}\in \mathbb{C}^{M \times 1}$, $\mathbf{c}\in \mathbb{C}^{K \times 1}$, and $\mathbf{d}\in \mathbb{C}^{KL \times 1}$.

I have tried to used common identities relating Kronecker products and the $\text{vec}$ operator, but the dimensions of the vectors and matrices don't fit.

Any ideas?

Thanks...

Let $\,D\in{\mathbb C}^{K\times L}\,$ be the matrix such that $d\!=\!{\rm vec}(D)$.
Then use the Kronecker-vec relation $${\rm vec}(XYZ)=(Z^T\otimes X)\,{\rm vec}(Y)$$
to remove the Kronecker product and write the function as \eqalign{ f &= c^HDA^*X^*b^* \cr } then rewrite it again in terms of the inner/Frobenius product, which is a convenient product notation for the matrix trace, i.e. $$Y:Z={\rm tr}(Y^TZ)$$
This puts the function in a form that is easier to work with \eqalign{ f &= c^*:DA^*X^*b^* \cr &= A^HD^Tc^*b^H:X^* \cr } The final rearrangement follows from the cyclic property of the trace.
The differential and gradients are then \eqalign{ df &= (A^HD^Tc^*b^H):dX^* \cr\cr \frac{\partial f}{\partial X} &= 0,\,\,\,\,\,\,\frac{\partial f}{\partial X^*} =A^HD^Tc^*b^H \cr\cr }