1. A method comprising: on a computing device executing a computer algebra application, the computer algebra application performing operations including: identifying an original polynomial to be symbolically factored; pre-processing the original polynomial at a polynomial pre-processing module to identify one or more pre-processing factors and a remaining polynomial, the pre-processing including: factoring out a greatest common factor of coefficients of the original polynomial at a coefficient factorization module; and factoring out a variable having a lowest power found in each term of the original polynomial at a lowest power variable factorization module; factoring the remaining polynomial to identify factors of the remaining polynomial; and returning the pre-processing factors and the factors of the remaining polynomial as factors of the original polynomial.