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