YES TRS: +(x,0()) -> x +(0(),x) -> x +(s(x),s(y)) -> s(s(+(x,y))) +(+(x,y),z) -> +(x,+(y,z)) *(x,0()) -> 0() *(0(),x) -> 0() *(s(x),s(y)) -> s(+(*(x,y),+(x,y))) *(*(x,y),z) -> *(x,*(y,z)) sum(nil()) -> 0() sum(cons(x,l)) -> +(x,sum(l)) prod(nil()) -> s(0()) prod(cons(x,l)) -> *(x,prod(l)) linear polynomial interpretations on N: +_A(x1,x2) = x1 + x2 + 1 +#_A(x1,x2) = 1 0_A = 1 0#_A = 0 s_A(x1) = 1 s#_A(x1) = 0 *_A(x1,x2) = x1 + 1 *#_A(x1,x2) = 2 sum_A(x1) = x1 + 1 sum#_A(x1) = x1 + 5 nil_A = 1 nil#_A = 1 cons_A(x1,x2) = x1 + x2 + 1 cons#_A(x1,x2) = 4 prod_A(x1) = x1 + 1 prod#_A(x1) = 3 precedence: cons > sum > + = prod > * = nil > 0 = s