Rozklad na parcialni zlomky
Parcialní zlomky jsou:

kde  je v  ireducibilní, tj. . Rozložit racionální lomenou funkci na parcilní zlomky znamená napsat ji jako součet polynomu a parciálních zlomků. Příklady:
> restart;
PF:=proc(f)
expand(numer(f))/expand(denom(f))=convert(f,parfrac,x);
end;

> PF(2/(x^2-1));
PF(2*x/(x^2-1));
PF(2*x^2/(x^2-1));
PF(2*x^3/(x^2-1));

Příklad výpočtu parciálních zlomků:
> f:=simplify(2*x^2+(x^5-x^3+x)/expand((x-1)^2*(x+1)*(x^2+1)));

krok 1.: nejprve  najdeme ryzi lomenou cast funkce deleni ciytatele jmenovatelem se zbytkem:
> F:=f=quo(numer(f),denom(f),x)+rem(numer(f),denom(f),x)/denom(f);
 `dale se zabyvame ryzi racionalni lomenou funkci:`;
g[1]:=op(nops(rhs(F)),rhs(F));

krok 2.: najdeme (ad hoc) koreny jmenovatele. Zkusime treba doszovat delitele absolutniho clene, tj 1 a -1 
> g[2]:=g[1]=numer(g[1])/factor(denom(g[1]));
Koreny:=solve(denom(rhs(g[2]))=0,x);

Máme  dvojnásobny a jednoduchy reálny kořeny kořeny a druhou mocninu ireducibilního kvadratického polynomu. Predpokládáme rozklad na parciální zlomky ve tvaru:
> g[3]:=rhs(g[2])=A[1]/(x-1)+A[2]/(x-1)^2+
A[3]/(x+1)#+A[4]/(x+1)^2
+(A[4]*x+A[5])/(x^2+1)#+(A[7]*x+A[8])/(x^2+1)^2
;

Vynasobime obe strany rovnice jmenovatelem leve:
> i:='i':
g[4]:=lhs(g[3]*denom(lhs(g[3])))=
> 
add(simplify(op(i,rhs(g[3]))*denom(lhs(g[3]))),
i=1..nops(rhs(g[3])))
;

krok 3.: hledame koeficienty  tak, aby se oba polynomy rovnaly. Nejprve porovname jejich hodnoty v bodech 1 a -1:
> r[1]:=subs(x=1,g[4]);
r[2]:=subs(x=-1,g[4]);

Potom porovnáme koeficienty u stejných mocnin:
> g[5]:=sort(collect(g[4],x));
r[3]:=subs(x=0,g[5]);
for i from 1 to degree (rhs(g[4]),x) do
r[i+3]:=coeff(lhs(g[5]),x^i)=coeff(rhs(g[5]),x^i);
od;
k:=i+2:

Vybereme si  ovsem pouze 4 rovnic, 7 je zbytecne mnoho. ty vyresime:
> i:='i':
koef:=op(solve({r[i] $i=1..k}));
> 

a mame:
> subs(koef,g[3]);

a tedy:
> 
> PF(f);

CVICENI:
> 

> 

> f:=x^12/expand((x^2-1)^1*(x^2+1)^1);

> ParcFrac(f);