Term Rewriting in Mathematica
stephendiehl.com