The Wolfram Language includes functions for performing a variety of specific algebraic transformations. Some are algorithmically straightforward; others include highly sophisticated algorithms, many developed and refined at Wolfram Research.
Simplify — apply transformations to try to simplify an expression
FullSimplify — apply a full set of simplification transformations
FunctionExpand — attempt to expand in terms of more elementary functions
PowerExpand — expand powers, assuming positive real variables, etc.
ComplexExpand — expand complex functions into real and imaginary parts, etc.
Polynomial Functions »
Expand — expand out products and powers
Factor — factor sums into products and powers
Collect — collect similar terms together
Rational Functions »
Together — put over a common denominator
Apart — break apart into partial fractions
ExpandNumerator ▪ ExpandAll ▪ Cancel ▪ ...
PiecewiseExpand — expand out piecewise functions into explicit components
Trigonometric Functions »
TrigToExp, ExpToTrig — convert between exponentials and trigonometric functions
TrigExpand ▪ TrigFactor ▪ TrigReduce
Algebraic Numbers & Functions »
RootReduce — try to merge all roots to a single root
ToRadicals — try to convert roots to explicit radicals
MeijerGReduce — try to reduce special functions to MeijerG functions
FoxHReduce — try to reduce special functions to FoxH functions
Holonomic Functions and Sequences
DifferentialRootReduce — reduce function combinations to a holonomic function
DifferenceRootReduce — reduce sequence combinations to a holonomic sequence
Logical & Boolean Operations »
LogicalExpand — expand out Boolean expressions
BooleanConvert — convert a Boolean expression into canonical forms (DNF, CNF, etc.)
BooleanMinimize — find a minimal two-level Boolean form
FindEquationalProof — generate proofs based on arbitrary equational axiom systems
Assumptions — assumptions to make
ComplexityFunction — how to rank the complexity of expressions