1. A method comprising: identifying, by a computing device executing a computer algebra module for manipulating mathematical expressions in symbolic form, characteristics of first and second polynomials, wherein the characteristics include: coefficient characteristics; variable characteristics; and variable power characteristics; based on the characteristics that are identified, selecting, by the computing device, a particular greatest common divisor (GCD) algorithm from a plurality of GCD algorithms; applying, by the computing device, the particular GCD algorithm to the first and second polynomials; and returning, by the computing device, a GCD of the first and second polynomials.