YES TRS: from(X) -> cons(X,n__from(s(X))) 2ndspos(0(),Z) -> rnil() 2ndspos(s(N),cons(X,n__cons(Y,Z))) -> rcons(posrecip(activate(Y)),2ndsneg(N,activate(Z))) 2ndsneg(0(),Z) -> rnil() 2ndsneg(s(N),cons(X,n__cons(Y,Z))) -> rcons(negrecip(activate(Y)),2ndspos(N,activate(Z))) pi(X) -> 2ndspos(X,from(0())) plus(0(),Y) -> Y plus(s(X),Y) -> s(plus(X,Y)) times(0(),Y) -> 0() times(s(X),Y) -> plus(Y,times(X,Y)) square(X) -> times(X,X) from(X) -> n__from(X) cons(X1,X2) -> n__cons(X1,X2) activate(n__from(X)) -> from(X) activate(n__cons(X1,X2)) -> cons(X1,X2) activate(X) -> X max/plus interpretations on N: from_A(x1) = max{0, x1} from#_A(x1) = max{0, x1} cons_A(x1,x2) = max{0, x1, x2} cons#_A(x1,x2) = max{0, x1, x2} n__from_A(x1) = max{0, x1} n__from#_A(x1) = max{0, x1} s_A(x1) = max{0, x1} s#_A(x1) = max{0, x1} 2ndspos_A(x1,x2) = max{0, x1, x2} 2ndspos#_A(x1,x2) = max{0, x1, x2} 0_A = 0 0#_A = 0 rnil_A = 0 rnil#_A = 0 n__cons_A(x1,x2) = max{0, x1, x2} n__cons#_A(x1,x2) = max{0, x1, x2} rcons_A(x1,x2) = max{0, x1, x2} rcons#_A(x1,x2) = max{0, x1, x2} posrecip_A(x1) = max{0, x1} posrecip#_A(x1) = max{0, x1} activate_A(x1) = max{0, x1} activate#_A(x1) = max{0, x1} 2ndsneg_A(x1,x2) = max{0, x1, x2} 2ndsneg#_A(x1,x2) = max{0, x1, x2} negrecip_A(x1) = max{0, x1} negrecip#_A(x1) = max{0, x1} pi_A(x1) = max{0, x1} pi#_A(x1) = max{0, x1} plus_A(x1,x2) = max{0, x1, x2} plus#_A(x1,x2) = max{0, x1, x2} times_A(x1,x2) = max{0, x1, x2} times#_A(x1,x2) = max{0, x1, x2} square_A(x1) = max{0, x1} square#_A(x1) = max{0, x1} precedence: 0 = pi = square > rnil = times > 2ndspos = 2ndsneg = plus > rcons = activate > from > cons = n__from = s > n__cons > posrecip = negrecip