# Structural Operations on Rational Expressions

For ordinary polynomials, Factor and Expand give the most important forms. For rational expressions, there are many different forms that can be useful.

 ExpandNumerator[expr] expand numerators only ExpandDenominator[expr] expand denominators only Expand[expr] expand numerators, dividing the denominator into each term ExpandAll[expr] expand numerators and denominators completely

Different kinds of expansion for rational expressions.

Here is a rational expression:
 In[1]:=
 Out[1]=
ExpandNumerator writes the numerator of each term in expanded form:
 In[2]:=
 Out[2]=
Expand expands the numerator of each term, and divides all the terms by the appropriate denominators:
 In[3]:=
 Out[3]=
ExpandDenominator expands out the denominator of each term:
 In[4]:=
 Out[4]=
ExpandAll does all possible expansions in the numerator and denominator of each term:
 In[5]:=
 Out[5]=
 ExpandAll[expr,patt], etc. avoid expanding parts which contain no terms matching patt

Controlling expansion.

This avoids expanding the term which does not contain z:
 In[6]:=
 Out[6]=
 Together[expr] combine all terms over a common denominator Apart[expr] write an expression as a sum of terms with simple denominators Cancel[expr] cancel common factors between numerators and denominators Factor[expr] perform a complete factoring

Structural operations on rational expressions.

Here is a rational expression:
 In[7]:=
 Out[7]=
Together puts all terms over a common denominator:
 In[8]:=
 Out[8]=
You can use Factor to factor the numerator and denominator of the resulting expression:
 In[9]:=
 Out[9]=
Apart writes the expression as a sum of terms, with each term having as simple a denominator as possible:
 In[10]:=
 Out[10]=
Cancel cancels any common factors between numerators and denominators:
 In[11]:=
 Out[11]=
Factor first puts all terms over a common denominator, then factors the result:
 In[12]:=
 Out[12]=

In mathematical terms, Apart decomposes a rational expression into "partial fractions".

In expressions with several variables, you can use Apart[expr,var] to do partial fraction decompositions with respect to different variables.

Here is a rational expression in two variables:
 In[13]:=
 Out[13]=
This gives the partial fraction decomposition with respect to x:
 In[14]:=
 Out[14]=
Here is the partial fraction decomposition with respect to y:
 In[15]:=
 Out[15]=