I am trying to write a program to find the roots a given polynomial of degree N, with the form $$ A_{0}X^{N}+A_{1}X^{N-1}+A_{2}X^{N-2}+A_{3}X^{N-3}+...+A_{N} $$
I know that if there are rational roots at all, I can find an exhaustive list with the rational root theorem, and then factor them out using synthetic division to find any and all rational roots. I also know that I am fine if I can factor down to degree two, but I would like to know how to find the irrational roots of an nth degree polynomial without numeric ways like Newton's method, to be able to display the polynomial thusly.
$$ (x+2)(x-6)(x\pm\sqrt{8})... $$
Any help to be had would be appreciated.