When spotting a cycle, need to check that the decreasing argument
is in the same position.
For the moment, this means we can't spot decreasing arguments which
change position across multiple calls - but soundness is more
important!
In particular, this means that type class instances and methods, and names
in where clauses, will have more readable names in error messages.
Needs make relib