NO Problem: *(*(x,y),z) -> *(x,*(y,z)) *(+(x,y),z) -> +(*(x,z),*(y,z)) *(x,+(y,f(z))) -> *(g(x,z),+(y,y)) Proof: Unfolding Processor: loop length: 2 terms: *(x48,+(f(z),f(x49))) *(g(x48,x49),+(f(z),f(z))) context: [] substitution: z -> z x48 -> g(g(x48,x49),z) x49 -> z Qed