# How to find ladder operators that diagonalize a Hamiltonian in QFT

I have some trouble understanding how one can, in the context of QFT, diagonalize a Hamiltonian $$H$$ by the introduction of ladder operators $$a$$ and $$a^\dagger$$ (I have trouble understanding how one is supposed to obtain these operators exactly).

As far as I understand, "diagonalizing" a Hamiltonian means finding ladder operators $$a_p$$ and $$a_p^\dagger$$ that obey the canonical commutation relation $$[a_p,a_k^\dagger]\propto \delta(k-p)\quad\text{and}\quad [a_k,a_p]=[a^\dagger_k, a^\dagger_p]=0$$ and rewrite $$H$$ in terms of these ladder operators such that $$H(a,a^\dagger)a^\dagger\vert0\rangle\propto a^\dagger\vert0\rangle\quad \text{and}\quad H(a,a^\dagger)a\vert n\rangle\propto a\vert n\rangle.$$

Lets assume that we want to diagonalize the Hamiltonian of the complex scalar field $$\phi$$ (which we obtained from the Lagragian $$\mathcal{L}$$), that is $$H=\int d^3x\left(\pi^\dagger \pi +\nabla\phi^\dagger\nabla\phi+m^2\phi^\dagger\phi\right).$$ This Hamiltonian is a function of $$\phi$$ and $$\phi^\dagger$$ (since one can express $$\pi^\dagger=\dot\phi^\dagger$$ and $$\pi=\dot\phi$$ in terms of those two). So what I'm now looking for are $$a(\phi,\pi^\dagger)$$, $$a^\dagger(\phi,\pi^\dagger)$$, $$b(\phi,\pi^\dagger)$$ and $$b^\dagger(\phi,\pi^\dagger)$$ (two sets of operators since $$\phi$$ and $$\phi^\dagger$$ are independent of each other).

Now most (all that I've seen so far) books/lecture notes just skip to assuming that we have \begin{align*} a_p&=\int d^3 x e^{ipx} (\omega_p \phi(x)+ i\pi^\dagger(x))\quad a_p^\dagger=\int d^3 x e^{ipx} (\omega_p \phi^\dagger(x)- i\pi(x))\\ b_p&=\int d^3 x e^{ipx} (\omega_p \phi^\dagger(x)+ i\pi(x))\quad b_p^\dagger=\int d^3 x e^{ipx} (\omega_p \phi(x)- i\pi^\dagger(x)) \end{align*} and then show that they satisfy what we want. But how do we get to these opperators? I've found this SE post, where a method is proposed, but kind of fail to apply it to this example. If I have understood it correctly I should just assume that we have

$$a = \alpha \phi + \beta \pi^\dagger,\quad a^\dagger = \alpha^* \phi^\dagger + \beta^*\pi,$$ but what about the second pair of ladder operators and how to distinguish them form the first one? I'm really not sure if this works here...

TL;DR: I'd like to know how one can find ladder operators that diagonalize a given Hamiltonian $$H(\phi,\pi)$$ concretely.