YES We show the termination of the TRS R: f(X) -> if(X,c(),n__f(n__true())) if(true(),X,Y) -> X if(false(),X,Y) -> activate(Y) f(X) -> n__f(X) true() -> n__true() activate(n__f(X)) -> f(activate(X)) activate(n__true()) -> true() activate(X) -> X -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: f#(X) -> if#(X,c(),n__f(n__true())) p2: if#(false(),X,Y) -> activate#(Y) p3: activate#(n__f(X)) -> f#(activate(X)) p4: activate#(n__f(X)) -> activate#(X) p5: activate#(n__true()) -> true#() and R consists of: r1: f(X) -> if(X,c(),n__f(n__true())) r2: if(true(),X,Y) -> X r3: if(false(),X,Y) -> activate(Y) r4: f(X) -> n__f(X) r5: true() -> n__true() r6: activate(n__f(X)) -> f(activate(X)) r7: activate(n__true()) -> true() r8: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: f#(X) -> if#(X,c(),n__f(n__true())) p2: if#(false(),X,Y) -> activate#(Y) p3: activate#(n__f(X)) -> activate#(X) p4: activate#(n__f(X)) -> f#(activate(X)) and R consists of: r1: f(X) -> if(X,c(),n__f(n__true())) r2: if(true(),X,Y) -> X r3: if(false(),X,Y) -> activate(Y) r4: f(X) -> n__f(X) r5: true() -> n__true() r6: activate(n__f(X)) -> f(activate(X)) r7: activate(n__true()) -> true() r8: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8 Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: f#_A(x1) = max{7, x1 + 1} if#_A(x1,x2,x3) = max{x1, x2, x3} c_A = 0 n__f_A(x1) = x1 + 6 n__true_A = 0 false_A = 9 activate#_A(x1) = max{8, x1 - 1} activate_A(x1) = x1 + 3 if_A(x1,x2,x3) = max{x1, x2 + 5, x3 + 3} true_A = 1 f_A(x1) = max{9, x1 + 6} 2. max/plus interpretations on natural numbers: f#_A(x1) = 1 if#_A(x1,x2,x3) = 2 c_A = 0 n__f_A(x1) = 2 n__true_A = 0 false_A = 0 activate#_A(x1) = 0 activate_A(x1) = 3 if_A(x1,x2,x3) = 3 true_A = 1 f_A(x1) = 3 The next rules are strictly ordered: p1, p2, p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: activate#(n__f(X)) -> activate#(X) and R consists of: r1: f(X) -> if(X,c(),n__f(n__true())) r2: if(true(),X,Y) -> X r3: if(false(),X,Y) -> activate(Y) r4: f(X) -> n__f(X) r5: true() -> n__true() r6: activate(n__f(X)) -> f(activate(X)) r7: activate(n__true()) -> true() r8: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: activate#(n__f(X)) -> activate#(X) and R consists of: r1: f(X) -> if(X,c(),n__f(n__true())) r2: if(true(),X,Y) -> X r3: if(false(),X,Y) -> activate(Y) r4: f(X) -> n__f(X) r5: true() -> n__true() r6: activate(n__f(X)) -> f(activate(X)) r7: activate(n__true()) -> true() r8: activate(X) -> X The set of usable rules consists of (no rules) Take the reduction pair: lexicographic combination of reduction pairs: 1. max/plus interpretations on natural numbers: activate#_A(x1) = x1 n__f_A(x1) = max{2, x1 + 1} 2. max/plus interpretations on natural numbers: activate#_A(x1) = x1 n__f_A(x1) = 0 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains.