I'm trying to construct given an irreducible polynomial $f \in \mathbb{Q}[X]$ an extension field that adjoins two of its roots $\alpha_1,\alpha_2$. I'm trying to follow the approach suggested in this question . However, with the following code:
P.<x> = QQ[]
f = x^3+2*x+5 # f = P([5,2,0,1]) if you want
f_roots = f.roots(QQbar, multiplicities=False)
print f_roots
alpha = f_roots[0]
beta = f_roots[1]
K = QQ[alpha,beta]
K['x'](f).is_irreducible()
But this gives the error:
ValueError: defining polynomial (x^3 + 2*x + 5) must be irreducible
Although, the polynomial is clearly irreducible over $\mathbb{Q}$.
What is going wrong? Is this the right way to construct the extension field with two roots?