Proving termination higher-order rewrite sy door Jean Pol