YES TRS: 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 max/plus interpretations on N: f_A(x1) = max{7, 5 + x1} f#_A(x1) = max{10, 3 + x1} if_A(x1,x2,x3) = max{6, 6, x2, 2 + x3} if#_A(x1,x2,x3) = max{0, 2 + x1, 9 + x2, 4 + x3} c_A = 1 c#_A = 9 n__f_A(x1) = max{0, 5 + x1} n__f#_A(x1) = max{6, 2 + x1} n__true_A = 0 n__true#_A = 0 true_A = 2 true#_A = 10 false_A = 10 false#_A = 0 activate_A(x1) = max{1, 2 + x1} activate#_A(x1) = max{11, 1 + x1} precedence: f = false > if = c = n__f = n__true > activate > true