Given a path P we can manipulate it using the commutativity
relation. Any consecutive symbols a and b such that can
be swapped, to produce another path. The set of paths produced by all
such manipulations of P is the set of aliases for P . Using
the ordering on the paths in the alias set we can choose the unique
smallest member. This is the normalised path for P. The
remaining problem is then to find an efficient algorithm for finding
the normalised version of any path.