YES TRS: a__zeros() -> cons(0(),zeros()) a__U11(tt(),L) -> s(a__length(mark(L))) a__and(tt(),X) -> mark(X) a__isNat(0()) -> tt() a__isNat(length(V1)) -> a__isNatList(V1) a__isNat(s(V1)) -> a__isNat(V1) a__isNatIList(V) -> a__isNatList(V) a__isNatIList(zeros()) -> tt() a__isNatIList(cons(V1,V2)) -> a__and(a__isNat(V1),isNatIList(V2)) a__isNatList(nil()) -> tt() a__isNatList(cons(V1,V2)) -> a__and(a__isNat(V1),isNatList(V2)) a__length(nil()) -> 0() a__length(cons(N,L)) -> a__U11(a__and(a__isNatList(L),isNat(N)),L) mark(zeros()) -> a__zeros() mark(U11(X1,X2)) -> a__U11(mark(X1),X2) mark(length(X)) -> a__length(mark(X)) mark(and(X1,X2)) -> a__and(mark(X1),X2) mark(isNat(X)) -> a__isNat(X) mark(isNatList(X)) -> a__isNatList(X) mark(isNatIList(X)) -> a__isNatIList(X) mark(cons(X1,X2)) -> cons(mark(X1),X2) mark(0()) -> 0() mark(tt()) -> tt() mark(s(X)) -> s(mark(X)) mark(nil()) -> nil() a__zeros() -> zeros() a__U11(X1,X2) -> U11(X1,X2) a__length(X) -> length(X) a__and(X1,X2) -> and(X1,X2) a__isNat(X) -> isNat(X) a__isNatList(X) -> isNatList(X) a__isNatIList(X) -> isNatIList(X) max/plus interpretations on N: a__zeros_A = 203 a__zeros#_A = 182 cons_A(x1,x2) = max{9, 36 + x1, 187 + x2} cons#_A(x1,x2) = max{174, 177, 180} 0_A = 167 0#_A = 181 zeros_A = 16 zeros#_A = 181 a__U11_A(x1,x2) = max{326, 141 + x1, 293 + x2} a__U11#_A(x1,x2) = max{239, 56 + x1, 241 + x2} tt_A = 203 tt#_A = 180 s_A(x1) = max{326, 17 + x1} s#_A(x1) = max{174, 174} a__length_A(x1) = max{326, 106 + x1} a__length#_A(x1) = max{238, 55 + x1} mark_A(x1) = max{203, 109 + x1} mark#_A(x1) = max{183, 167 + x1} a__and_A(x1,x2) = max{108, 51 + x1, 145 + x2} a__and#_A(x1,x2) = max{170, 184, 168 + x2} a__isNat_A(x1) = max{203, -35 + x1} a__isNat#_A(x1) = max{179, 174} length_A(x1) = max{217, 106 + x1} length#_A(x1) = max{183, 54 + x1} a__isNatList_A(x1) = max{130, 71 + x1} a__isNatList#_A(x1) = max{171, 1 + x1} a__isNatIList_A(x1) = max{203, 71 + x1} a__isNatIList#_A(x1) = max{185, 1 + x1} isNatIList_A(x1) = max{19, -38 + x1} isNatIList#_A(x1) = max{181, 38} nil_A = 204 nil#_A = 184 isNatList_A(x1) = max{5, 20 + x1} isNatList#_A(x1) = max{0, 0} isNat_A(x1) = max{8, -144 + x1} isNat#_A(x1) = max{178, 63} U11_A(x1,x2) = max{73, 141 + x1, 235 + x2} U11#_A(x1,x2) = max{241, 166, 241 + x2} and_A(x1,x2) = max{145, 51 + x1, 50 + x2} and#_A(x1,x2) = max{184, 168, 169} precedence: a__zeros > cons = zeros > a__isNat > a__isNatIList > a__isNatList = isNatIList > a__U11 = length = isNatList > a__length = U11 > a__and = isNat > mark > s = nil = and > 0 > tt