YES We show the termination of the TRS R: active(f(f(a()))) -> mark(c(f(g(f(a()))))) active(f(X)) -> f(active(X)) active(g(X)) -> g(active(X)) f(mark(X)) -> mark(f(X)) g(mark(X)) -> mark(g(X)) proper(f(X)) -> f(proper(X)) proper(a()) -> ok(a()) proper(c(X)) -> c(proper(X)) proper(g(X)) -> g(proper(X)) f(ok(X)) -> ok(f(X)) c(ok(X)) -> ok(c(X)) g(ok(X)) -> ok(g(X)) top(mark(X)) -> top(proper(X)) top(ok(X)) -> top(active(X)) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(f(f(a()))) -> c#(f(g(f(a())))) p2: active#(f(f(a()))) -> f#(g(f(a()))) p3: active#(f(f(a()))) -> g#(f(a())) p4: active#(f(X)) -> f#(active(X)) p5: active#(f(X)) -> active#(X) p6: active#(g(X)) -> g#(active(X)) p7: active#(g(X)) -> active#(X) p8: f#(mark(X)) -> f#(X) p9: g#(mark(X)) -> g#(X) p10: proper#(f(X)) -> f#(proper(X)) p11: proper#(f(X)) -> proper#(X) p12: proper#(c(X)) -> c#(proper(X)) p13: proper#(c(X)) -> proper#(X) p14: proper#(g(X)) -> g#(proper(X)) p15: proper#(g(X)) -> proper#(X) p16: f#(ok(X)) -> f#(X) p17: c#(ok(X)) -> c#(X) p18: g#(ok(X)) -> g#(X) p19: top#(mark(X)) -> top#(proper(X)) p20: top#(mark(X)) -> proper#(X) p21: top#(ok(X)) -> top#(active(X)) p22: top#(ok(X)) -> active#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The estimated dependency graph contains the following SCCs: {p19, p21} {p5, p7} {p11, p13, p15} {p8, p16} {p9, p18} {p17} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: top#(ok(X)) -> top#(active(X)) p2: top#(mark(X)) -> top#(proper(X)) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: top#_A(x1) = ((1,1),(0,1)) x1 + (1,9) ok_A(x1) = x1 + (10,10) active_A(x1) = x1 + (18,1) mark_A(x1) = x1 + (4,19) proper_A(x1) = x1 + (11,11) f_A(x1) = x1 + (19,35) g_A(x1) = x1 + (12,10) c_A(x1) = ((1,0),(1,0)) x1 + (1,1) a_A() = (1,0) precedence: top# > ok = active = mark = proper = f = g = c > a partial status: pi(top#) = [] pi(ok) = [] pi(active) = [1] pi(mark) = [] pi(proper) = [1] pi(f) = [1] pi(g) = [] pi(c) = [] pi(a) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: top#(mark(X)) -> top#(proper(X)) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: top#(mark(X)) -> top#(proper(X)) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of r4, r5, r6, r7, r8, r9, r10, r11, r12 Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: top#_A(x1) = x1 + (1,0) mark_A(x1) = ((1,1),(0,1)) x1 + (4,3) proper_A(x1) = ((1,1),(0,1)) x1 + (2,1) f_A(x1) = ((1,1),(0,1)) x1 + (0,2) g_A(x1) = x1 ok_A(x1) = (0,2) c_A(x1) = ((0,0),(0,1)) x1 + (1,3) a_A() = (1,1) precedence: mark > top# = proper = f = ok = c > g = a partial status: pi(top#) = [1] pi(mark) = [] pi(proper) = [1] pi(f) = [] pi(g) = [1] pi(ok) = [] pi(c) = [] pi(a) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(g(X)) -> active#(X) p2: active#(f(X)) -> active#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: active#_A(x1) = ((0,1),(0,0)) x1 + (2,2) g_A(x1) = ((0,0),(0,1)) x1 + (1,1) f_A(x1) = ((0,1),(0,1)) x1 + (1,1) precedence: active# = g = f partial status: pi(active#) = [] pi(g) = [] pi(f) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(f(X)) -> active#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(f(X)) -> active#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: active#_A(x1) = ((1,0),(1,0)) x1 + (2,2) f_A(x1) = ((1,0),(0,0)) x1 + (1,1) precedence: active# = f partial status: pi(active#) = [] pi(f) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: proper#(g(X)) -> proper#(X) p2: proper#(c(X)) -> proper#(X) p3: proper#(f(X)) -> proper#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: proper#_A(x1) = ((1,0),(0,0)) x1 + (2,2) g_A(x1) = ((1,0),(0,0)) x1 + (3,2) c_A(x1) = ((1,1),(1,0)) x1 + (1,1) f_A(x1) = ((1,0),(1,0)) x1 + (3,1) precedence: g > proper# = c = f partial status: pi(proper#) = [] pi(g) = [] pi(c) = [] pi(f) = [] The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: proper#(g(X)) -> proper#(X) p2: proper#(c(X)) -> proper#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: proper#(g(X)) -> proper#(X) p2: proper#(c(X)) -> proper#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: proper#_A(x1) = ((0,1),(0,0)) x1 + (2,2) g_A(x1) = ((0,0),(0,1)) x1 + (1,1) c_A(x1) = ((0,1),(0,1)) x1 + (1,1) precedence: proper# = g = c partial status: pi(proper#) = [] pi(g) = [] pi(c) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: proper#(c(X)) -> proper#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: proper#(c(X)) -> proper#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: proper#_A(x1) = ((1,0),(1,0)) x1 + (2,2) c_A(x1) = ((1,0),(0,0)) x1 + (1,1) precedence: proper# = c partial status: pi(proper#) = [] pi(c) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: f#(mark(X)) -> f#(X) p2: f#(ok(X)) -> f#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: f#_A(x1) = ((0,1),(0,0)) x1 + (2,2) mark_A(x1) = ((0,0),(0,1)) x1 + (1,1) ok_A(x1) = ((0,1),(0,1)) x1 + (1,1) precedence: f# = mark = ok partial status: pi(f#) = [] pi(mark) = [] pi(ok) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: f#(ok(X)) -> f#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: f#(ok(X)) -> f#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: f#_A(x1) = ((1,0),(1,0)) x1 + (2,2) ok_A(x1) = ((1,0),(0,0)) x1 + (1,1) precedence: f# = ok partial status: pi(f#) = [] pi(ok) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: g#(mark(X)) -> g#(X) p2: g#(ok(X)) -> g#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: g#_A(x1) = ((0,1),(0,0)) x1 + (2,2) mark_A(x1) = ((0,0),(0,1)) x1 + (1,1) ok_A(x1) = ((0,1),(0,1)) x1 + (1,1) precedence: g# = mark = ok partial status: pi(g#) = [] pi(mark) = [] pi(ok) = [] The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: g#(ok(X)) -> g#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: g#(ok(X)) -> g#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: g#_A(x1) = ((1,0),(1,0)) x1 + (2,2) ok_A(x1) = ((1,0),(0,0)) x1 + (1,1) precedence: g# = ok partial status: pi(g#) = [] pi(ok) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: c#(ok(X)) -> c#(X) and R consists of: r1: active(f(f(a()))) -> mark(c(f(g(f(a()))))) r2: active(f(X)) -> f(active(X)) r3: active(g(X)) -> g(active(X)) r4: f(mark(X)) -> mark(f(X)) r5: g(mark(X)) -> mark(g(X)) r6: proper(f(X)) -> f(proper(X)) r7: proper(a()) -> ok(a()) r8: proper(c(X)) -> c(proper(X)) r9: proper(g(X)) -> g(proper(X)) r10: f(ok(X)) -> ok(f(X)) r11: c(ok(X)) -> ok(c(X)) r12: g(ok(X)) -> ok(g(X)) r13: top(mark(X)) -> top(proper(X)) r14: top(ok(X)) -> top(active(X)) The set of usable rules consists of (no rules) Take the reduction pair: weighted path order base order: matrix interpretations: carrier: N^2 order: standard order interpretations: c#_A(x1) = ((1,0),(1,0)) x1 + (2,2) ok_A(x1) = ((1,0),(0,0)) x1 + (1,1) precedence: c# = ok partial status: pi(c#) = [] pi(ok) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains.