YES Problem: active(g(X)) -> mark(h(X)) active(c()) -> mark(d()) active(h(d())) -> mark(g(c())) mark(g(X)) -> active(g(X)) mark(h(X)) -> active(h(X)) mark(c()) -> active(c()) mark(d()) -> active(d()) g(mark(X)) -> g(X) g(active(X)) -> g(X) h(mark(X)) -> h(X) h(active(X)) -> h(X) Proof: Matrix Interpretation Processor: dim=3 interpretation: [0] [d] = [0] [1], [0] [c] = [1] [0], [1 1 0] [0] [mark](x0) = [0 0 0]x0 + [1] [0 1 1] [0], [1 0 0] [h](x0) = [0 0 1]x0 [0 0 0] , [1 1 0] [0] [active](x0) = [0 0 0]x0 + [1] [0 1 1] [0], [1 0 0] [1] [g](x0) = [0 0 1]x0 + [0] [0 0 0] [0] orientation: [1 0 1] [1] [1 0 1] [0] active(g(X)) = [0 0 0]X + [1] >= [0 0 0]X + [1] = mark(h(X)) [0 0 1] [0] [0 0 1] [0] [1] [0] active(c()) = [1] >= [1] = mark(d()) [1] [1] [1] [1] active(h(d())) = [1] >= [1] = mark(g(c())) [1] [0] [1 0 1] [1] [1 0 1] [1] mark(g(X)) = [0 0 0]X + [1] >= [0 0 0]X + [1] = active(g(X)) [0 0 1] [0] [0 0 1] [0] [1 0 1] [0] [1 0 1] [0] mark(h(X)) = [0 0 0]X + [1] >= [0 0 0]X + [1] = active(h(X)) [0 0 1] [0] [0 0 1] [0] [1] [1] mark(c()) = [1] >= [1] = active(c()) [1] [1] [0] [0] mark(d()) = [1] >= [1] = active(d()) [1] [1] [1 1 0] [1] [1 0 0] [1] g(mark(X)) = [0 1 1]X + [0] >= [0 0 1]X + [0] = g(X) [0 0 0] [0] [0 0 0] [0] [1 1 0] [1] [1 0 0] [1] g(active(X)) = [0 1 1]X + [0] >= [0 0 1]X + [0] = g(X) [0 0 0] [0] [0 0 0] [0] [1 1 0] [1 0 0] h(mark(X)) = [0 1 1]X >= [0 0 1]X = h(X) [0 0 0] [0 0 0] [1 1 0] [1 0 0] h(active(X)) = [0 1 1]X >= [0 0 1]X = h(X) [0 0 0] [0 0 0] problem: active(h(d())) -> mark(g(c())) mark(g(X)) -> active(g(X)) mark(h(X)) -> active(h(X)) mark(c()) -> active(c()) mark(d()) -> active(d()) g(mark(X)) -> g(X) g(active(X)) -> g(X) h(mark(X)) -> h(X) h(active(X)) -> h(X) Matrix Interpretation Processor: dim=1 interpretation: [d] = 3, [c] = 1, [mark](x0) = 4x0 + 4, [h](x0) = 2x0, [active](x0) = 4x0, [g](x0) = x0 orientation: active(h(d())) = 24 >= 8 = mark(g(c())) mark(g(X)) = 4X + 4 >= 4X = active(g(X)) mark(h(X)) = 8X + 4 >= 8X = active(h(X)) mark(c()) = 8 >= 4 = active(c()) mark(d()) = 16 >= 12 = active(d()) g(mark(X)) = 4X + 4 >= X = g(X) g(active(X)) = 4X >= X = g(X) h(mark(X)) = 8X + 8 >= 2X = h(X) h(active(X)) = 8X >= 2X = h(X) problem: g(active(X)) -> g(X) h(active(X)) -> h(X) Matrix Interpretation Processor: dim=3 interpretation: [1 0 1] [h](x0) = [0 0 0]x0 [0 0 0] , [0] [active](x0) = x0 + [1] [1], [1 1 0] [g](x0) = [0 0 0]x0 [0 0 0] orientation: [1 1 0] [1] [1 1 0] g(active(X)) = [0 0 0]X + [0] >= [0 0 0]X = g(X) [0 0 0] [0] [0 0 0] [1 0 1] [1] [1 0 1] h(active(X)) = [0 0 0]X + [0] >= [0 0 0]X = h(X) [0 0 0] [0] [0 0 0] problem: Qed