So let me use exercise c) to illustrate the idea.
In general, if $\alpha$ and $\beta$ are two algebraic numbers, then for all but finitely many rational numbers $x$, the element $\alpha + x\beta$ is a primitive element of $\Bbb Q(\alpha, \beta)$.
So let's simply look for such elements $\gamma$ of the form $\alpha + x\beta$ with $x\in\Bbb Q$.
In exercise c), we have:
- $\alpha ^ 3 -\alpha + 1 = 0$;
- $\beta^2 - \beta - 1 = 0$;
- $\{1, \alpha, \alpha^2\}$ is a basis of $\Bbb Q(\alpha)/\Bbb Q$;
- $\{1, \beta\}$ is a basis of $\Bbb Q(\beta)/\Bbb Q$.
Hence we get a basis of $\Bbb Q(\alpha, \beta)/\Bbb Q$, which is simply $\{1, \alpha, \alpha^2, \beta, \alpha\beta, \alpha^2\beta\}$.
By definition, an element $\gamma = \alpha + x\beta$ is a primitive element of $\Bbb Q(\alpha, \beta)/\Bbb Q$ if and only if $\{1, \gamma, \gamma^2, \gamma^3, \gamma^4, \gamma^5\}$ is a basis of $\Bbb Q(\alpha, \beta)/\Bbb Q$. Since we already have a basis, we may write every element as $\Bbb Q$-linear combination of this basis:
\begin{eqnarray*}
1 &=& 1\times 1 + 0 \times \alpha + 0 \times \alpha^2 + 0 \times \beta + 0 \times \alpha\beta + 0 \times \alpha^2\beta\\
\gamma &=& 0 \times 1 + 1 \times \alpha + 0 \times \alpha^2 + x \times \beta + 0 \times \alpha\beta + 0\times\alpha^2\beta\\
\gamma^2 &=& x^2 \times 1 + 0 \times \alpha + 1 \times \alpha^2 + x^2 \times \beta + 2x \times \alpha\beta + 0\times\alpha^2\beta\\
\gamma^3 &=& (x^3 - 1) \times 1 + (3x^2 + 1) \times \alpha + 0 \times \alpha^2 + 2x^3 \times \beta + 3x^2 \times \alpha\beta + 3x\times\alpha^2\beta\\
\gamma^4 &=& 2x^4 \times 1 + (4x^3 - 1) \times \alpha + (6x^2 + 1) \times \alpha^2 + (3x^4 - 4x) \times \beta + (8x^3 + 4x) \times \alpha\beta + 6x^2\times\alpha^2\beta\\
\gamma^5 &=& (3x^5 - 10x^2 - 1) \times 1 + (10x^4 + 10x^2 + 1) \times \alpha + (10x^3 - 1) \times \alpha^2 + (5x^5 - 10x^2) \times \beta + (15x^4 + 10x^2 - 5x) \times \alpha\beta + (20x^3 + 5x)\times\alpha^2\beta
\end{eqnarray*}
To get the above identities, we just keep multiplying the previous line by $\gamma$ and using the relations $\alpha^3 = \alpha - 1$ and $\beta^2 = \beta + 1$.
Written in matrix form, this becomes:
$$(1, \gamma, \gamma^2, \gamma^3, \gamma^4, \gamma^5) = (1, \alpha, \alpha^2, \beta, \alpha\beta, \alpha^2\beta)\cdot M, $$
where $M$ is the following matrix:
\begin{pmatrix}
1 & 0 & x^2 & x^3 - 1 & 2x^4 & 3x^5 - 10x^2 - 1\\
0 & 1 & 0 & 3x^2 + 1 & 4x^3 - 1 & 10x^4 + 10x^2 + 1\\
0 & 0 & 1 & 0 & 6x^2 + 1 & 10x^3 - 1\\
0 & x & x^2 & 2x^3 & 3x^4 - 4x & 5x^5 - 10x^2\\
0 & 0 & 2x & 3x^2 & 8x^3 + 4x & 15x^4 + 10x^2 - 5x\\
0 & 0 & 0 & 3x & 6x^2 & 20x^3 + 5x
\end{pmatrix}
Therefore, $\gamma$ is a primitive element if and only if the matrix $M$ is invertible, i.e. the determinant is non-zero.
Calculation shows that $\det(M) = 125x^9 - 150x^7 + 45x^5 + 23x^3$. Thus we may take e.g. $x = 1$ and get that $\alpha + \beta$ is a primitive element (in fact, the only rational root of this polynomial being $x = 0$, we see that $\alpha + x\beta$ is a primitive element for any $x \neq 0$).
Some clarifications:
Why did I bother keeping the $x$ as a variable during all the calculations? Wouldn't it be simpler to replace $x$ by $1$ everywhere?
Yes, it would be much simpler and the calculation would look less tedious. But what if $\alpha + \beta$ happens to be non-primitive? Since we don't know a priori which $x$ gives a primitive element, I tend to keep it as a variable so that we can easily choose it in the very last step.
How did I do such a complicated computation?
With a computer. This method, although complicated, is easily automated. It's quite simple to implement the algorithm with the help of some computer algebra system.
Are there simpler methods?
Sometimes yes. But most simpler methods are usually only applicable to certain cases, so they are less "universal". Also, you might need knowledge of deeper mathematics.
This method, however, is of algorithmic nature, applicable (at least) to all field extensions of characteristic $0$, and only requires basic linear algebra.