10.3 Simplification and GB’s revisited

Changing polynomials to rules

The following command converts a list of relations to a list of rules subordinate to the monomial order specified above.

In[9]:= PolyToRule[%]  
Out[9]= {y ** Inv[1 - y] -> -1 + Inv[1 - y], y ** Inv[y] -> 1,  
>    Inv[1 - y] ** y -> -1 + Inv[1 - y], Inv[y] ** y -> 1,  
>    Inv[y] ** Inv[1 - y] -> Inv[1 - y] + Inv[y],  
>    Inv[1 - y] ** Inv[y] -> Inv[1 - y] + Inv[y]}

Changing rules to polynomials

The following command converts a list of rules to a list of relations.

In[10]:= PolyToRule[%]  
Out[10]= {1 - Inv[1 - y] + y ** Inv[1 - y], -1 + y ** Inv[y],  
>    1 - Inv[1 - y] + Inv[1 - y] ** y, -1 + Inv[y] ** y,  
>    -Inv[1 - y] - Inv[y] + Inv[y] ** Inv[1 - y],  
>    -Inv[1 - y] - Inv[y] + Inv[1 - y] ** Inv[y]}

Simplifying using a GB revisited

We can apply the rules in §10.3 repeatedly to an expression to put it into “canonical form.” Often the canonical form is simpler than what we started with.

In[11]:= Reduction[{Inv[y]**Inv[1-y] - Inv[y]}, Out[9]]  
Out[11]= {Inv[1 - y]}