YES We show the termination of the TRS R: active(f(f(X))) -> mark(c(f(g(f(X))))) active(c(X)) -> mark(d(X)) active(h(X)) -> mark(c(d(X))) mark(f(X)) -> active(f(mark(X))) mark(c(X)) -> active(c(X)) mark(g(X)) -> active(g(X)) mark(d(X)) -> active(d(X)) mark(h(X)) -> active(h(mark(X))) f(mark(X)) -> f(X) f(active(X)) -> f(X) c(mark(X)) -> c(X) c(active(X)) -> c(X) g(mark(X)) -> g(X) g(active(X)) -> g(X) d(mark(X)) -> d(X) d(active(X)) -> d(X) h(mark(X)) -> h(X) h(active(X)) -> h(X) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(f(f(X))) -> mark#(c(f(g(f(X))))) p2: active#(f(f(X))) -> c#(f(g(f(X)))) p3: active#(f(f(X))) -> f#(g(f(X))) p4: active#(f(f(X))) -> g#(f(X)) p5: active#(c(X)) -> mark#(d(X)) p6: active#(c(X)) -> d#(X) p7: active#(h(X)) -> mark#(c(d(X))) p8: active#(h(X)) -> c#(d(X)) p9: active#(h(X)) -> d#(X) p10: mark#(f(X)) -> active#(f(mark(X))) p11: mark#(f(X)) -> f#(mark(X)) p12: mark#(f(X)) -> mark#(X) p13: mark#(c(X)) -> active#(c(X)) p14: mark#(g(X)) -> active#(g(X)) p15: mark#(d(X)) -> active#(d(X)) p16: mark#(h(X)) -> active#(h(mark(X))) p17: mark#(h(X)) -> h#(mark(X)) p18: mark#(h(X)) -> mark#(X) p19: f#(mark(X)) -> f#(X) p20: f#(active(X)) -> f#(X) p21: c#(mark(X)) -> c#(X) p22: c#(active(X)) -> c#(X) p23: g#(mark(X)) -> g#(X) p24: g#(active(X)) -> g#(X) p25: d#(mark(X)) -> d#(X) p26: d#(active(X)) -> d#(X) p27: h#(mark(X)) -> h#(X) p28: h#(active(X)) -> h#(X) and R consists of: r1: active(f(f(X))) -> mark(c(f(g(f(X))))) r2: active(c(X)) -> mark(d(X)) r3: active(h(X)) -> mark(c(d(X))) r4: mark(f(X)) -> active(f(mark(X))) r5: mark(c(X)) -> active(c(X)) r6: mark(g(X)) -> active(g(X)) r7: mark(d(X)) -> active(d(X)) r8: mark(h(X)) -> active(h(mark(X))) r9: f(mark(X)) -> f(X) r10: f(active(X)) -> f(X) r11: c(mark(X)) -> c(X) r12: c(active(X)) -> c(X) r13: g(mark(X)) -> g(X) r14: g(active(X)) -> g(X) r15: d(mark(X)) -> d(X) r16: d(active(X)) -> d(X) r17: h(mark(X)) -> h(X) r18: h(active(X)) -> h(X) The estimated dependency graph contains the following SCCs: {p1, p5, p7, p10, p12, p13, p14, p15, p16, p18} {p21, p22} {p19, p20} {p23, p24} {p25, p26} {p27, p28} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(f(f(X))) -> mark#(c(f(g(f(X))))) p2: mark#(h(X)) -> mark#(X) p3: mark#(h(X)) -> active#(h(mark(X))) p4: active#(h(X)) -> mark#(c(d(X))) p5: mark#(d(X)) -> active#(d(X)) p6: active#(c(X)) -> mark#(d(X)) p7: mark#(g(X)) -> active#(g(X)) p8: mark#(c(X)) -> active#(c(X)) p9: mark#(f(X)) -> mark#(X) p10: mark#(f(X)) -> active#(f(mark(X))) and R consists of: r1: active(f(f(X))) -> mark(c(f(g(f(X))))) r2: active(c(X)) -> mark(d(X)) r3: active(h(X)) -> mark(c(d(X))) r4: mark(f(X)) -> active(f(mark(X))) r5: mark(c(X)) -> active(c(X)) r6: mark(g(X)) -> active(g(X)) r7: mark(d(X)) -> active(d(X)) r8: mark(h(X)) -> active(h(mark(X))) r9: f(mark(X)) -> f(X) r10: f(active(X)) -> f(X) r11: c(mark(X)) -> c(X) r12: c(active(X)) -> c(X) r13: g(mark(X)) -> g(X) r14: g(active(X)) -> g(X) r15: d(mark(X)) -> d(X) r16: d(active(X)) -> d(X) r17: h(mark(X)) -> h(X) r18: h(active(X)) -> h(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^1 order: standard order interpretations: active#_A(x1) = x1 f_A(x1) = x1 + 4 mark#_A(x1) = x1 + 2 c_A(x1) = 4 g_A(x1) = 1 h_A(x1) = x1 + 7 mark_A(x1) = x1 + 1 d_A(x1) = 1 active_A(x1) = x1 2. lexicographic path order with precedence: precedence: mark > f > active# > mark# > c > d > active > g > h argument filter: pi(active#) = [1] pi(f) = [1] pi(mark#) = [] pi(c) = [] pi(g) = [] pi(h) = [] pi(mark) = 1 pi(d) = [] pi(active) = 1 The next rules are strictly ordered: p1, p2, p3, p4, p5, p6, p7, p8, p9, p10 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#(mark(X)) -> c#(X) p2: c#(active(X)) -> c#(X) and R consists of: r1: active(f(f(X))) -> mark(c(f(g(f(X))))) r2: active(c(X)) -> mark(d(X)) r3: active(h(X)) -> mark(c(d(X))) r4: mark(f(X)) -> active(f(mark(X))) r5: mark(c(X)) -> active(c(X)) r6: mark(g(X)) -> active(g(X)) r7: mark(d(X)) -> active(d(X)) r8: mark(h(X)) -> active(h(mark(X))) r9: f(mark(X)) -> f(X) r10: f(active(X)) -> f(X) r11: c(mark(X)) -> c(X) r12: c(active(X)) -> c(X) r13: g(mark(X)) -> g(X) r14: g(active(X)) -> g(X) r15: d(mark(X)) -> d(X) r16: d(active(X)) -> d(X) r17: h(mark(X)) -> h(X) r18: h(active(X)) -> h(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^1 order: standard order interpretations: c#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. lexicographic path order with precedence: precedence: c# > active > mark argument filter: pi(c#) = 1 pi(mark) = [1] pi(active) = [1] The next rules are strictly ordered: p1, p2 r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 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#(active(X)) -> f#(X) and R consists of: r1: active(f(f(X))) -> mark(c(f(g(f(X))))) r2: active(c(X)) -> mark(d(X)) r3: active(h(X)) -> mark(c(d(X))) r4: mark(f(X)) -> active(f(mark(X))) r5: mark(c(X)) -> active(c(X)) r6: mark(g(X)) -> active(g(X)) r7: mark(d(X)) -> active(d(X)) r8: mark(h(X)) -> active(h(mark(X))) r9: f(mark(X)) -> f(X) r10: f(active(X)) -> f(X) r11: c(mark(X)) -> c(X) r12: c(active(X)) -> c(X) r13: g(mark(X)) -> g(X) r14: g(active(X)) -> g(X) r15: d(mark(X)) -> d(X) r16: d(active(X)) -> d(X) r17: h(mark(X)) -> h(X) r18: h(active(X)) -> h(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^1 order: standard order interpretations: f#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. lexicographic path order with precedence: precedence: f# > active > mark argument filter: pi(f#) = 1 pi(mark) = [1] pi(active) = [1] The next rules are strictly ordered: p1, p2 r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 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#(active(X)) -> g#(X) and R consists of: r1: active(f(f(X))) -> mark(c(f(g(f(X))))) r2: active(c(X)) -> mark(d(X)) r3: active(h(X)) -> mark(c(d(X))) r4: mark(f(X)) -> active(f(mark(X))) r5: mark(c(X)) -> active(c(X)) r6: mark(g(X)) -> active(g(X)) r7: mark(d(X)) -> active(d(X)) r8: mark(h(X)) -> active(h(mark(X))) r9: f(mark(X)) -> f(X) r10: f(active(X)) -> f(X) r11: c(mark(X)) -> c(X) r12: c(active(X)) -> c(X) r13: g(mark(X)) -> g(X) r14: g(active(X)) -> g(X) r15: d(mark(X)) -> d(X) r16: d(active(X)) -> d(X) r17: h(mark(X)) -> h(X) r18: h(active(X)) -> h(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^1 order: standard order interpretations: g#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. lexicographic path order with precedence: precedence: g# > active > mark argument filter: pi(g#) = 1 pi(mark) = [1] pi(active) = [1] The next rules are strictly ordered: p1, p2 r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 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: d#(mark(X)) -> d#(X) p2: d#(active(X)) -> d#(X) and R consists of: r1: active(f(f(X))) -> mark(c(f(g(f(X))))) r2: active(c(X)) -> mark(d(X)) r3: active(h(X)) -> mark(c(d(X))) r4: mark(f(X)) -> active(f(mark(X))) r5: mark(c(X)) -> active(c(X)) r6: mark(g(X)) -> active(g(X)) r7: mark(d(X)) -> active(d(X)) r8: mark(h(X)) -> active(h(mark(X))) r9: f(mark(X)) -> f(X) r10: f(active(X)) -> f(X) r11: c(mark(X)) -> c(X) r12: c(active(X)) -> c(X) r13: g(mark(X)) -> g(X) r14: g(active(X)) -> g(X) r15: d(mark(X)) -> d(X) r16: d(active(X)) -> d(X) r17: h(mark(X)) -> h(X) r18: h(active(X)) -> h(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^1 order: standard order interpretations: d#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. lexicographic path order with precedence: precedence: d# > active > mark argument filter: pi(d#) = 1 pi(mark) = [1] pi(active) = [1] The next rules are strictly ordered: p1, p2 r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 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: h#(mark(X)) -> h#(X) p2: h#(active(X)) -> h#(X) and R consists of: r1: active(f(f(X))) -> mark(c(f(g(f(X))))) r2: active(c(X)) -> mark(d(X)) r3: active(h(X)) -> mark(c(d(X))) r4: mark(f(X)) -> active(f(mark(X))) r5: mark(c(X)) -> active(c(X)) r6: mark(g(X)) -> active(g(X)) r7: mark(d(X)) -> active(d(X)) r8: mark(h(X)) -> active(h(mark(X))) r9: f(mark(X)) -> f(X) r10: f(active(X)) -> f(X) r11: c(mark(X)) -> c(X) r12: c(active(X)) -> c(X) r13: g(mark(X)) -> g(X) r14: g(active(X)) -> g(X) r15: d(mark(X)) -> d(X) r16: d(active(X)) -> d(X) r17: h(mark(X)) -> h(X) r18: h(active(X)) -> h(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: lexicographic combination of reduction pairs: 1. matrix interpretations: carrier: N^1 order: standard order interpretations: h#_A(x1) = x1 mark_A(x1) = x1 + 1 active_A(x1) = x1 + 1 2. lexicographic path order with precedence: precedence: h# > active > mark argument filter: pi(h#) = 1 pi(mark) = [1] pi(active) = [1] The next rules are strictly ordered: p1, p2 r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 We remove them from the problem. Then no dependency pair remains.