NO Problem: a() -> c() b() -> d() f(a()) -> f(b()) f(b()) -> f(a()) Proof: Matrix Interpretation Processor: dimension: 3 interpretation: [1 0 0] [f](x0) = [0 0 0]x0 [0 0 0] , [0] [d] = [0] [0], [1] [b] = [0] [0], [0] [c] = [0] [0], [1] [a] = [0] [0] orientation: [1] [0] a() = [0] >= [0] = c() [0] [0] [1] [0] b() = [0] >= [0] = d() [0] [0] [1] [1] f(a()) = [0] >= [0] = f(b()) [0] [0] [1] [1] f(b()) = [0] >= [0] = f(a()) [0] [0] problem: f(a()) -> f(b()) f(b()) -> f(a()) Unfolding Processor: loop length: 2 terms: f(a()) f(b()) context: [] substitution: Qed