Factoring any single-variable polynomial in $\mathbb C$

189 Views Asked by At

The fundamental theorem of algebra says

$$ \forall p(x):\mathbb C \to \mathbb C,\ p(x) = a\prod_{n=0}^m\big(b_nx+c_n\big) $$

where $p(x)$ is a single-variable polynomial, and $\{a;m\}\cup\{\forall b_n\forall c_n:0\leq n\leq m\}$ is unique (I say that set is unique because the $b$s and $c$s can be exchanged as multiplication is commutative, the $a$ is outside the $\prod$ so the $b$s and $c$s are truly unique). This is, any single-variable polynomial has a unique complete (binomial) factorization in the complex number set.

My question is: how do I factor any polynomial in $\mathbb C$? Not a specific one, I'd like an algorithm, a theorem, that can factor any polynomial. I've seen some other posts related to this, but they're always specific to some polynomial and involve long division and some confusing formulas, lemmas and what-nots Wikipedia doesn't help me understand (I've googled around, but as I don't know precisely what method is it I'm looking for, I came up more confused). Anyway, what I mean is that would be helpful, however it is not what I am looking for.

If it is indeed possible to make such an algorithm, is there any site that explains this, any open-source program that is able to do this, do you have any ideas to generalize any method you've come up with? Thanks for reading this, I hope it helps you (especially the first part) help me.